Inhaltsverzeichnis
Ampelaufbau - Breadboard
Serieller Monitor: https://www.arduino.cc/reference/de/language/functions/communication/serial/print/
In der Arduino-IDE im Menü unter Werkzeuge → Serieller Monitor wird der serielle Monitor geöffnet. Das funktioniert aber nur, wenn ein Arduino angeschlossen ist.
Material
- Breadboard
- ARDUINO - UNO
- 6 Widerstände 220 Ω 5 Ringe:rot-rot-schwarz-schwarz bzw. 4 Ringe: rot-rot-braun)
- 5 LEDs (2 x rot, 2 x grün, 1 x gelb)
- 1 Taster
- 7 Kabel
- USB-Anschlusskabel (ARDUINO - Netbook)
Schaltplan
Steckplan
LEDs
Test
Masse - Minus - GND
5V - Testkabel
LED - Einzeltest
Fehlerquellen
- LED verdreht
- Kabel defekt
- falscher Widerstand
- Masse vergessen (blaues Kabel - blaue Leiste - GND)
Anschlusskabel
LEDs
Taster
Testsketch
// TEST fuer die Ampelschaltung - Blitz-Lauflicht int pause=200; int kurzePause = 50; void setup() { pinMode(11, OUTPUT); // Pin 11 ist verbunden mit der roten LED der Hauptampel (Hauptampel_rot) pinMode(10, OUTPUT); // Pin 10 ist verbunden mit der gelben LED der Hauptampel (Hauptampel_gelb) pinMode(9, OUTPUT); // Hauptampel_grün pinMode(13, OUTPUT); // Fussgänger_rot pinMode(12, OUTPUT); // Fussgänger_grün pinMode(2, INPUT); // Der Druckschalter (Taster) ist mit Pin 2 verbunden digitalWrite(2, HIGH); // Pin 2 wird auf HIGH gesetzt, das heisst, dort liegen nun 5V an } void loop() { if (digitalRead(2) == LOW){ digitalWrite ( 9, HIGH); // GRÜN Autoampel an delay(pause); digitalWrite (10, HIGH); // gelb an delay(pause); digitalWrite (11, HIGH); // rot an delay(pause); digitalWrite (12, HIGH); // GRÜN Fussgaengerampel an delay(pause); digitalWrite (13, HIGH); // rot an delay(pause); digitalWrite ( 9, LOW); // ausschalten delay(pause); digitalWrite (10, LOW); delay(pause); digitalWrite (11, LOW); delay(pause); digitalWrite (12, LOW); delay(pause); digitalWrite (13, LOW); delay(pause); } else { digitalWrite ( 9, HIGH); // GRÜN Autoampel an digitalWrite (10, HIGH); // gelb an digitalWrite (11, HIGH); // rot an digitalWrite (12, HIGH); // GRÜN Fussgaengerampel an digitalWrite (13, HIGH); // rot an delay(kurzePause); digitalWrite ( 9, LOW); // ausschalten digitalWrite (10, LOW); digitalWrite (11, LOW); digitalWrite (12, LOW); digitalWrite (13, LOW); delay(kurzePause); } }
Fehlerquellen
- falschen Port gesteckt
- Kabel defekt