#include "project.h" #define LED_PERIOD 1000 static int led_on = 0; static int led_cycle = 0; void led_init (void) { gpio_set_mode (GPIOA, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO9); gpio_set (GPIOA, GPIO9); } void led_blink (void) { gpio_set (GPIOA, GPIO9); led_on = 50; } void led_tick (void) { if (led_on) { led_on--; if (!led_on) gpio_clear (GPIOA, GPIO9); } led_cycle++; if (led_cycle == LED_PERIOD) { led_cycle = 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); } }