[[uc-welt:gscheiduino:10-batterie|← Zurück zum Kapitel]] ====== Musterlösung Batterietester ====== ===== Berechnung der Schwellwerte ===== Der erste Schritt bei der Übungsaufgabe ist die Berechnung der Schwellwerte. Nur so können wir danach entscheiden, welche Werte in den if-Bedingungen abgefragt werden. Der erste Wert ist 1,3V: $ Wandlerwert = \dfrac{1,3V}{0,00488V}-1 = 265 $ Der zweite Wert ist 1,4V: $ Wandlerwert = \dfrac{1,4V}{0,00488V}-1 = 285 $ Nun können wir unseren Code schreiben: ===== Code zur Musterlösung ===== #define LED_ROT 13 #define LED_GELB 12 #define LED_GRUEN 11 #define ANALOGPIN A0 int analogwert = 0; void setup() { pinMode(LED_ROT, OUTPUT); // Pin auf Ausgang pinMode(LED_GELB, OUTPUT); // Pin auf Ausgang pinMode(LED_GRUEN, OUTPUT); // Pin auf Ausgang pinMode(ANALOGPIN, INPUT); // Pin auf Eingang } void loop() { analogwert = analogRead(ANALOGPIN); if(analogwert<265) { digitalWrite(LED_ROT, HIGH); digitalWrite(LED_GELB, LOW); digitalWrite(LED_GRUEN, LOW); } else if(analogwert<285) { digitalWrite(LED_ROT, LOW); digitalWrite(LED_GELB, HIGH); digitalWrite(LED_GRUEN, LOW); } else { digitalWrite(LED_ROT, LOW); digitalWrite(LED_GELB, LOW); digitalWrite(LED_GRUEN, HIGH); } }