diff options
| -rw-r--r-- | main.c | 24 |
1 files changed, 15 insertions, 9 deletions
@@ -17,9 +17,9 @@ #define PWM_MAX 2550 #define PWM_TOP 19999 -#define LED_PIN PB5 -#define LED_DDR DDRB -#define LED_PORT PORTB +#define LED_PIN PD6 +#define LED_DDR DDRD +#define LED_PORT PORTD #define PWR_BAT PB2 #define PWR_SRVO PB3 @@ -105,12 +105,16 @@ static inline void unlock(void) static inline void flash_led(void) { - for (int i = 0; i < 4; i++) { - LED_PORT |= (1 << LED_PIN); - _delay_ms(70); - LED_PORT &= ~(1 << LED_PIN); - _delay_ms(70); - } + TCCR0A = (1 << COM0A0) | (1 << WGM01); + OCR0A = 255; + TCCR0B = (1 << CS02) | (1 << CS00); +} + +static inline void stop_led(void) +{ + TCCR0B = 0; + TCCR0A = 0; + LED_PORT &= ~(1 << LED_PIN); } static void check_bat(void) @@ -230,6 +234,8 @@ int main(void) _delay_ms(500); pwroff_fpm(); + stop_led(); + set_sleep_mode(SLEEP_MODE_PWR_DOWN); sleep_enable(); sleep_bod_disable(); |
