Blinky for MAX32630FTHR

Dependencies:   max32630fthr mbed

Revision:
1:b8fe3f7c11e4
Parent:
0:06c0d19792d3
--- a/main.cpp	Sat Feb 04 00:43:34 2017 +0000
+++ b/main.cpp	Sat Aug 19 13:47:00 2017 +0000
@@ -1,53 +1,34 @@
-/**********************************************************************
-* Copyright (C) 2017 Maxim Integrated Products, Inc., All Rights Reserved.
-*
-* Permission is hereby granted, free of charge, to any person obtaining a
-* copy of this software and associated documentation files (the "Software"),
-* to deal in the Software without restriction, including without limitation
-* the rights to use, copy, modify, merge, publish, distribute, sublicense,
-* and/or sell copies of the Software, and to permit persons to whom the
-* Software is furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included
-* in all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-* IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
-* OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-* OTHER DEALINGS IN THE SOFTWARE.
-*
-* Except as contained in this notice, the name of Maxim Integrated
-* Products, Inc. shall not be used except as stated in the Maxim Integrated
-* Products, Inc. Branding Policy.
-*
-* The mere transfer of this software does not imply any licenses
-* of trade secrets, proprietary technology, copyrights, patents,
-* trademarks, maskwork rights, or any other form of intellectual
-* property whatsoever. Maxim Integrated Products, Inc. retains all
-* ownership rights.
-**********************************************************************/
 
 
 #include "mbed.h"
 #include "max32630fthr.h"
 
+const uint32_t BLINK_DELAY = 250;
+
+void blink_led(DigitalOut &led, const uint32_t delay);
 
 int main()
 {
-    MAX32630FTHR pegasus;
-    pegasus.init(MAX32630FTHR::VIO_3V3);
+    MAX32630FTHR pegasus(MAX32630FTHR::VIO_3V3);
     
-    //Turn off RGB LEDs
-    DigitalOut rLED(LED1, LED_OFF);
-    DigitalOut gLED(LED2, LED_OFF);
-    DigitalOut bLED(LED3, LED_OFF);
+    DigitalOut rLed(LED_RED, 1);
+    DigitalOut gLed(LED_GREEN, 1);
+    DigitalOut bLed(LED_BLUE, 1);
+    
+    DigitalOut led_array[] = {rLed, gLed, bLed};
     
     while(1)
     {
-        gLED = !gLED;
-        wait(0.25);
+        for(int8_t idx = 2; idx >= 0; idx--)
+        {
+            blink_led(led_array[idx], BLINK_DELAY);
+        }
     }
 }
+
+void blink_led(DigitalOut &led, const uint32_t delay)
+{
+    led = !led;
+    wait_ms(delay);
+    led = !led;
+}