X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=firmware%2Ftmr.c;h=d53981a6b8d1dccfcc1655993d2568988559ee87;hb=3f38edc49796a8dd1d03c2dc302be42db2d97d50;hp=5a94f9a40789c6fb0ddce0dd41b6ea6030135080;hpb=d4506bca9ee4231571d99a4291f8295e9245ad7a;p=bike-lights.git diff --git a/firmware/tmr.c b/firmware/tmr.c index 5a94f9a..d53981a 100644 --- a/firmware/tmr.c +++ b/firmware/tmr.c @@ -4,14 +4,14 @@ #include "lights.h" volatile uint16_t jiffies; -#define PATTERN_DIV 5 // clk/10 +#define PATTERN_DIV 10 // clk/10 static unsigned char pattern_div; void init_tmr() { TCCR0A = _BV(WGM00); TCCR0B = _BV(CS02) | _BV(CS00); // CLK/1024 = 1 kHz - OCR0A = 10; // 100 Hz + OCR0A = 5; // 200 Hz TIMSK |= _BV(OCIE0A); jiffies = 0; @@ -29,12 +29,16 @@ ISR(TIMER0_COMPA_vect) { ++jiffies; + pwm_timer(); + if (--pattern_div == 0) { timer_check_buttons(); patterns_next_tick(); + timer_start_slow_adcs(); pattern_div = PATTERN_DIV; } - timer_start_adcs(); + if ((jiffies & 0x7FFF) == 0) + ambient_log_min_max(); }