]> www.fi.muni.cz Git - bike-lights.git/commitdiff
adc: fix the button adc number
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 14 Mar 2013 19:20:48 +0000 (20:20 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 14 Mar 2013 19:20:48 +0000 (20:20 +0100)
... and use symbolic constants in the switch statement to avoid
this kind of bugs in the future.

firmware/adc.c

index 6db036af530b124e8aec9db50e668b6802d669a9..9cc1374452eed00f11c75b0ee384d811485b7eca 100644 (file)
@@ -6,7 +6,7 @@
 #define AMBIENT_ADC N_PWMLEDS
 #define BATTERY_ADC (N_PWMLEDS + 1)
 #define ADC1_GAIN20 (N_PWMLEDS + 2)
-#define BUTTON_ADC  (N_PWMLEDS + 2)
+#define BUTTON_ADC  (N_PWMLEDS + 3)
 
 #define NUM_ADCS 7
 volatile static unsigned char current_adc;
@@ -32,19 +32,19 @@ static void inline setup_mux(unsigned char n)
                ADMUX = _BV(REFS1) | _BV(MUX2);
                sum_shift = PWMLED_ADC_SHIFT;
                break;
-       case 3: // ambient light: 1.1V, ADC5 (PA6), single-ended
+       case AMBIENT_ADC: // ambient light: 1.1V, ADC5 (PA6), single-ended
                ADMUX = _BV(REFS1) | _BV(MUX2) | _BV(MUX0);
                sum_shift = 3; // 3 measurements
                break;
-       case 4: // batt voltage: 1.1V, ADC6 (PA7), single-ended
+       case BATTERY_ADC: // batt voltage: 1.1V, ADC6 (PA7), single-ended
                ADMUX = _BV(REFS1) | _BV(MUX2) | _BV(MUX1);
                sum_shift = 0; // 1 measurement
                break;
-       case 5: // gain stage offset: 1.1V, ADC1,1, gain 20
+       case ADC1_GAIN20: // gain stage offset: 1.1V, ADC1,1, gain 20
                ADMUX = _BV(REFS1) | _BV(MUX3) | _BV(MUX2) | _BV(MUX0);
                sum_shift = 0; // 1 measurement
                break;
-       case 6: // buttons: 1.1V, ADC3, single-ended
+       case BUTTON_ADC: // buttons: 1.1V, ADC3, single-ended
                PORTA |= _BV(PA3); // +5V to the voltage splitter
                ADMUX = _BV(REFS1) | _BV(MUX1) | _BV(MUX0);
                sum_shift = 0;