From 2c73b88494168567b1817181fbfed430f90680bf Mon Sep 17 00:00:00 2001 From: Nidan Date: Sun, 24 Feb 2013 17:49:38 +0100 Subject: [PATCH] bughunting --- firmware/cup.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/firmware/cup.c b/firmware/cup.c index c3f3165..0fd0e5c 100644 --- a/firmware/cup.c +++ b/firmware/cup.c @@ -131,11 +131,11 @@ inline uint16_t linearize_temp(uint16_t temp_in) 65535, 1520, // made-up, not from datasheet }; uint8_t i=2; - for (; i < (sizeof(coeffs)>>1)-2; i+=2) + for(; i < sizeof(coeffs) / sizeof(coeffs[0]); i += 2) { - if ( temp_in < pgm_read_word(&coeffs[i]) ) + if(temp_in < pgm_read_word(&coeffs[i])) { - temp_out = (uint16_t) ( pgm_read_word(&coeffs[i-1]) + (uint32_t) ( (uint32_t) (temp_in - pgm_read_word(&coeffs[i-2])) * (pgm_read_word(&coeffs[i+1])-pgm_read_word(&coeffs[i-1])) ) / (pgm_read_word(&coeffs[i])-pgm_read_word(&coeffs[i-2]))); + temp_out = (uint16_t) (pgm_read_word(&coeffs[i-1]) + (uint32_t) ( (uint32_t) (temp_in - pgm_read_word(&coeffs[i-2])) * (pgm_read_word(&coeffs[i+1]) - pgm_read_word(&coeffs[i-1])) ) / (pgm_read_word(&coeffs[i]) - pgm_read_word(&coeffs[i-2]))); break; } } @@ -226,7 +226,9 @@ int main(void) adc_sum += ADC; if(++adc_pos == 64) { + adc_sum = 47000; temperature = linearize_temp(adc_sum); + temperature = 1100; adc_sum = 0; adc_pos = 0; if(1)//dev_state)