diff --git a/adc.c b/adc.c index afd3824..3a9ce72 100644 --- a/adc.c +++ b/adc.c @@ -47,7 +47,24 @@ ISR(ADC_vect) for(uint8_t i = 0; i < buffer_pos; i++){ sum += read_buffer[i]; } - temp_values[current_channel] = sum/buffer_pos; + + //convert to temperature + sum /= 3; + + switch(current_channel){ + case 0: + temp_values[3] = sum/buffer_pos; + break; + case 1: + temp_values[0] = sum/buffer_pos; + break; + case 2: + temp_values[1] = sum/buffer_pos; + break; + case 3: + temp_values[2] = sum/buffer_pos; + break; + } buffer_pos = 0; diff --git a/main.c b/main.c index ce0cef5..a8900ec 100644 --- a/main.c +++ b/main.c @@ -49,8 +49,6 @@ void do_buttons(){ else if(buttons & (1 << 1)) set_item(2); else if(buttons & (1 << 2)) - set_item(2); - else if(buttons & (1 << 2)) set_item(3); else if(buttons & (1 << 3)) set_item(4); @@ -99,15 +97,14 @@ ISR(TIMER0_OVF_vect) { //this ISR is called 9765.625 times per second } ISR(PCINT2_vect){ + //TODO good quadrature reading code if((PIND & (1<<7)) && (menu_state >= 1) && (menu_state <= 3)){ if(PIND & (1<<6)) - temp_setpoints[menu_state-1]++; - else temp_setpoints[menu_state-1]--; + else + temp_setpoints[menu_state-1]++; } - - //if(PIND & (1<<7)) // if(PIND & (1<<6)){ // if(temp_setpoints[menu_state] > 0)