X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?p=tinyboard.git;a=blobdiff_plain;f=projects%2Fstep-up%2Fadc.c;h=cff4527037c0bfe052a6304caeb9a422da9fd1c3;hp=fc4c7caac3a201b3526c2f5a4908aabc24c5f67b;hb=655d773afa02e2589680fa9cefd4302efa2fd2b3;hpb=37d45fd92b03b610195d7d6227140672ccc17b2b diff --git a/projects/step-up/adc.c b/projects/step-up/adc.c index fc4c7ca..cff4527 100644 --- a/projects/step-up/adc.c +++ b/projects/step-up/adc.c @@ -12,6 +12,7 @@ volatile static unsigned char current_adc, current_slow_adc; static uint16_t adc_sum, read_zero, drop_count, read_count, n_reads_log; +volatile uint16_t jiffies; static void setup_mux(unsigned char n) { @@ -146,10 +147,15 @@ static void adc1_gain20_adc(uint16_t adcsum) static void inline adc_based_timer() { - static uint16_t pattern_counter; + static unsigned char count; - if (++pattern_counter > 250) { - pattern_counter = 0; + if (++count < 40) // about 100 Hz jiffies + return; + + count = 0; + ++jiffies; + + if ((jiffies & 0x0007) == 0) { patterns_next_tick(); } }