From b55240eb43a92c552003b8b324a385e041f84f12 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 1 Dec 2015 02:10:53 +0000 Subject: fish --- app/led.c | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) (limited to 'app/led.c') diff --git a/app/led.c b/app/led.c index ddbbc34..dfa343e 100644 --- a/app/led.c +++ b/app/led.c @@ -1,7 +1,10 @@ #include "project.h" +#define LED_PERIOD 1000 + +static int led_on = 0; +static int led_cycle = 0; -static int led = 0; void led_init (void) @@ -17,34 +20,37 @@ void led_blink (void) { gpio_set (GPIOA, GPIO9); - led = 50; + led_on = 50; } void led_tick (void) { -#if 0 - if (led) + if (led_on) { - led--; - if (!led) + led_on--; + if (!led_on) gpio_clear (GPIOA, GPIO9); } -#else - static int c; - c++; - if (c > 1000) + led_cycle++; + + if (led_cycle == LED_PERIOD) { - led ^= 1; - if (led) - gpio_set (GPIOA, GPIO9); - else - gpio_clear (GPIOA, GPIO9); + led_cycle = 0; + - c = 0; + if (have_key && locked) + led_on = 50; + if (have_key && !locked) + led_on = 500; + if (!have_key) + led_on = 1000; + + gpio_set (GPIOA, GPIO9); + } -#endif + } -- cgit v1.2.3