8. November 2011
Aufgaben
1. Lasst eine LED im Sekundentakt blinken Material: LED 2. Über einen Taster wird eine LED geschaltet Material: LED, Vorwiderstand, 1 Taster 3. Ein Druck auf einen Taster schaltet eine LED ein, bei erneutem Druck wird sie wieder ausgeschaltet. Material: LED, Vorwiderstand, 1 Taster 4. Mit drei Tastern wird eine ‘Ampelschaltung’ realisiert. Jeder der Taster schaltet eine LED ein und beim Druck auf einen anderen Taster erlischt die vorige und eine neue LED leuchtet. Material: 3 LED’s, Vorwiderstände, 3 Taster -------- Heute haben wir zum ersten Mal das Arduino Board gebraucht. Obenstehende Aufgaben waren zu lösen. Die Aufgabe der Ampelschaltung war zu anfang recht tricky, jedoch nach einer kurzen Eingewöhnungszeit mit Arduino machbar.#define LED_PIN_rot 13 #define LED_PIN_gelb 11 #define LED_PIN_gruen 8 #define BUTTON_PIN_1 7 #define BUTTON_PIN_2 5 #define BUTTON_PIN_3 2 boolean Lampegruen = false; boolean Lampegelb = false; boolean Lamperot = false; void setup() { pinMode(LED_PIN_rot, OUTPUT); pinMode(LED_PIN_gelb, OUTPUT); pinMode(LED_PIN_gruen, OUTPUT); pinMode(BUTTON_PIN_1, INPUT); pinMode(BUTTON_PIN_2, INPUT); pinMode(BUTTON_PIN_3, INPUT); digitalWrite(BUTTON_PIN_1, HIGH); digitalWrite(BUTTON_PIN_2, HIGH); digitalWrite(BUTTON_PIN_3, HIGH); } void loop() { if(digitalRead(BUTTON_PIN_1) == LOW) { Lampegruen = true; Lampegelb = false; Lamperot = false; if (Lampegruen == true) { digitalWrite(LED_PIN_gruen, HIGH); digitalWrite(LED_PIN_gelb, LOW); digitalWrite(LED_PIN_rot, LOW); delay(200); } } if(digitalRead(BUTTON_PIN_2) == LOW) { Lampegruen = false; Lampegelb = true; Lamperot = false; if (Lampegelb == true) { digitalWrite(LED_PIN_gruen, LOW); digitalWrite(LED_PIN_gelb, HIGH); digitalWrite(LED_PIN_rot, LOW); delay(200); } } if(digitalRead(BUTTON_PIN_3) == LOW) { Lampegruen = false; Lampegelb = false; Lamperot = true; if (Lamperot == true) { digitalWrite(LED_PIN_gruen, LOW); digitalWrite(LED_PIN_gelb, LOW); digitalWrite(LED_PIN_rot, HIGH); delay(200); } } }