X-Git-Url: http://git.rohieb.name/hackover2013-badge-firmware.git/blobdiff_plain/c104c5fa180ae64a097335f5b7124dca244a13e3..a8d5ea1a6a2883620b52f5f1f6089c3eafdeccc6:/main.c?ds=sidebyside diff --git a/main.c b/main.c index 8b75435..8cff6f6 100644 --- a/main.c +++ b/main.c @@ -47,28 +47,6 @@ #include "core/cmd/cmd.h" #endif -/**************************************************************************/ -/*! - Approximates a 1 millisecond delay using "nop". This is less - accurate than a dedicated timer, but is useful in certain situations. - - The number of ticks to delay depends on the optimisation level set - when compiling (-O). Depending on the compiler settings, one of the - two defined values for 'delay' should be used. -*/ -/**************************************************************************/ -void delayms(uint32_t ms) -{ - uint32_t delay = ms * ((CFG_CPU_CCLK / 100) / 45); // Release Mode (-Os) - // uint32_t delay = ms * ((CFG_CPU_CCLK / 100) / 120); // Debug Mode (No optimisations) - - while (delay > 0) - { - __asm volatile ("nop"); - delay--; - } -} - /**************************************************************************/ /*! Main program entry point. After reset, normal code execution will @@ -85,19 +63,12 @@ int main(void) while (1) { - // Toggle LED once per second ... rollover = 136 years :) + // Toggle LED once per second currentSecond = systickGetSecondsActive(); if (currentSecond != lastSecond) { lastSecond = currentSecond; - if (gpioGetValue(CFG_LED_PORT, CFG_LED_PIN) == CFG_LED_OFF) - { - gpioSetValue (CFG_LED_PORT, CFG_LED_PIN, CFG_LED_ON); - } - else - { - gpioSetValue (CFG_LED_PORT, CFG_LED_PIN, CFG_LED_OFF); - } + gpioSetValue(CFG_LED_PORT, CFG_LED_PIN, !(gpioGetValue(CFG_LED_PORT, CFG_LED_PIN))); } // Poll for CLI input if CFG_INTERFACE is enabled in projectconfig.h