Um mit dem Programmieren zu beginnen, starten wir ganz einfach mit drei LEDs in unterschiedlichen Farben. Die LEDs sollen nacheinander leuchten, und zwar in einer Schleife, die sich immer wiederholt.
Schaltplan
- Pins: 12, 8 und 7
- Widerstände: 220 Ohm, ¼ Watt
- Jede LED bekommt einen eigenen Vorwiderstand

int rot = 12;
int gruen = 8;
int blau = 7;
int wartezeit = 1500;
void roteLed() {
for (int zaehlerRot = 0; zaehlerRot < 5; zaehlerRot++) {
digitalWrite(rot, HIGH);
delay(wartezeit);
digitalWrite(rot, LOW);
delay(wartezeit);
}
}
void grueneLed() {
digitalWrite(gruen, HIGH);
delay(wartezeit);
digitalWrite(gruen, LOW);
delay(wartezeit);
}
void blaueLed() {
digitalWrite(blau, HIGH);
delay(wartezeit);
digitalWrite(blau, LOW);
delay(wartezeit);
}
void setup() {
pinMode(rot, OUTPUT);
pinMode(gruen, OUTPUT);
pinMode(blau, OUTPUT);
}
void loop() {
roteLed();
delay(wartezeit);
grueneLed();
delay(wartezeit);
blaueLed();
delay(wartezeit);
}
Erklärung Schritt für Schritt
Variablen
Mit int erstellen wir Variablen vom Typ Ganzzahl. Andere Datentypen (z. B. für Fließkommazahlen oder Buchstaben) haben jeweils eigene Kürzel.
Eine Variable bekommt von uns einen Namen.
Dafür gibt es ein paar einfache Regeln:
- Mit Kleinbuchstaben beginnen
- Keine Umlaute verwenden
- Bei zusammengesetzten Wörtern den zweiten Teil mit einem Großbuchstaben beginnen
Beispiele:
lampeGruen
motorRechts
Mit dem Zeichen = weisen wir einer Variablen einen Wert zu.
Jeder Befehl endet mit einem Semikolon ;
Funktionen
Eine Funktion beginnt in unserem Beispiel mit void und einem selbst gewählten Namen. Innerhalb der geschweiften Klammern { } stehen die Befehle, die zur Funktion gehören.
Der Vorteil: Statt die Befehle jedes Mal neu zu schreiben, können wir die Funktion später einfach über ihren Namen aufrufen. Das macht den Code übersichtlicher und spart Arbeit.
Schleifen
Die for- Schleife ist ein praktisches Mittel, um Wiederholungen zu programmieren.
Sie besteht aus drei Teilen:
- Variable (Startwert)
- Bedingung (wann die Schleife endet)
- Veränderung (wie sich die Variable bei jedem Durchlauf verändert)
Beispiel:
for (int zaehlerRot = 0; zaehlerRot < 5; zaehlerRot++)
In diesem Fall wird die Variable zaehlerRot in der Klammer erzeugt und von 0 bis 4 hochgezählt. Insgesamt läuft die Schleife also fünfmal.
Alternativ könnte man die Variable auch außerhalb der Schleife anlegen:
int zaehlerRot = 0;
for (zaehlerRot; zaehlerRot < 5; zaehlerRot++)
Das funktioniert ebenfalls, führt aber zu einem etwas anderen Verhalten.
Ablauf unseres Programms
- Die rote LED blinkt fünfmal – jeweils 1,5 Sekunden an, 1,5 Sekunden aus
- Danach leuchtet die grüne LED einmal für 1,5 Sekunden
- Anschließend die blaue LED ebenfalls für 1,5 Sekunden
- Danach beginnt der Ablauf wieder von vorne
Das Ganze läuft endlos im loop()