X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?p=bike-lights.git;a=blobdiff_plain;f=firmware%2Fmain.c;h=a83884b86f9408101f9bbf3a2bc91fa010b7b1be;hp=0e3395779e9c7a2c84afd71d912ef4b64868bb9f;hb=64f1e5840b7b8839885a76812e6be97cdd39c6cd;hpb=918f7a82545a1fb7c5a505abe797d7849e3f3d71 diff --git a/firmware/main.c b/firmware/main.c index 0e33957..a83884b 100644 --- a/firmware/main.c +++ b/firmware/main.c @@ -71,7 +71,20 @@ int main(void) sei(); #if 1 while (1) { - sleep_mode(); + cli(); + if (TIMER1_IS_ON()) { + set_sleep_mode(SLEEP_MODE_IDLE); + } else if (adc_is_on) { + set_sleep_mode(SLEEP_MODE_ADC); + } else { + set_sleep_mode(SLEEP_MODE_PWR_DOWN); + } + + sleep_enable(); + // keep BOD active, no sleep_bod_disable(); + sei(); + sleep_cpu(); + sleep_disable(); } #endif