Nr.01 Blinkende LED

Inhaltsverzeichnis

Eine blinkende LED am Arduino Mikrocontroller

Aufgabe: Eine Leuchtdiode soll blinken.

Auf dem Arduino ist an Pin 13 bereits eine LED eingebaut (für Testzwecke). Häufig blinkt diese Lampe schon, wenn man ein neues Arduino-Board anschließt, da das Blink-Programm zum Testen des Boards je nach Hersteller bereits vorab installiert ist. Wir werden dieses Blinken jetzt selbst programmieren.

Schaltung:

Die auf dem Board vorhandene LED ist auf dem Bild rot eingekreist.

Man muss nur das Board per USB-Kabel mit dem Computer verbinden.

Blinkende Onboard LED eines UNO Mikrocontrollers
Blinkende Onboard-LED eines UNO Mikrocontrollers

1.1 Programmabschnitt 1: Loop (Variablen benennen)

Wir haben nur einen Ausgang – An Pin13 soll eine Spannung ausgegeben werden (Die LED soll schließlich leuchten.).

Wir schreiben mitten in das weiße Eingabefeld der Arduino-Software:

void setup() // Hier beginnt das Setup

{ // geschweifte Klammer auf: hier beginnt ein Programmabschnitt

} // geschweifte Klammer zu: hier endet ein Programmabschnitt

In dem Teil zwischen den geschweiften Klammern werden nun die Setupinformationen eingebracht. In diesem Fall: „Pin13 soll ein Ausgang sein“.

void setup() // Hier beginnt das Setup

{ // geschweifte Klammer auf: hier beginnt ein Programmabschnitt

pinMode(13, OUTPUT); // Pin 13 wird als Ausgang definiert

} // geschweifte Klammer zu: hier endet ein Programmabschnitt

1.2 Programmabschnitt 2: Loop (Hauptteil)

void setup() // Hier beginnt das Setup

{ // Hier beginnt ein Programmabschnitt

pinMode(13, OUTPUT); // Pin 13 wird als Ausgang definiert

} // Hier endet ein Programmabschnitt

void loop() // Hier beginnt das Hauptprogramm

{ // Hier beginnt ein Programmabschnitt

} // Hier endet ein Programmabschnitt

1.3 Der komplette Sketch

Nun wird auch der Inhalt des Loop-Teils, also das Hauptprogramm, eingebracht:

void setup() // Hier beginnt das Setup

{ // Hier beginnt ein Programmabschnitt

pinMode(13, OUTPUT); // Pin 13 wird als Ausgang definiert

} // Hier endet ein Programmabschnitt

void loop() // Hier beginnt das Hauptprogramm

{ // Hier beginnt ein Programmabschnitt

digitalWrite(13, HIGH); // Schalte die Spannung an Pin 13 ein (LED AN)

delay(1000); // Warte 1000 Millisekunden (1 Sekunde)

digitalWrite(13, LOW); // Schalte die Spannung an Pin 13 aus (LED AUS)

delay(1000); // Warte 1000 Millisekunden (1 Sekunde)

} // Hier endet ein Programmabschnitt

Fertig. Der Sketch sollte nun exakt so aussehen, wie er auf dem Bild rechts dargestellt ist. Er muss jetzt nur noch auf das Board hochgeladen werden. Das funktioniert mit der rot umkreisten Schaltfläche (oben links in der Software).

Hochladen eines Sketches auf den Mikrocontroller

1.4 Variation des Sketches

Das Programm kann jetzt noch variiert werden. Beispiel: Die LED soll sehr schnell blinken. Dazu verkürzen wir die Wartezeiten (von 1000ms auf 200ms)

void setup() // Hier beginnt das Setup

{ // Hier beginnt ein Programmabschnitt

pinMode(13, OUTPUT); // Pin 13 wird als Ausgang definiert

} // Hier endet ein Programmabschnitt

void loop() // Hier beginnt das Hauptprogramm

{ // Hier beginnt ein Programmabschnitt

digitalWrite(13, HIGH); // Schalte die Spannung an Pin 13 ein (LED AN)

delay(200); // Warte 200 Millisekunden

digitalWrite(13, LOW); // Schalte die Spannung an Pin 13 aus (LED AUS)

delay(200); // Warte 200 Millisekunden

} // Hier endet ein Programmabschnitt

Der neue Sketch muss nun wieder auf das Board hochgeladen werden. Wenn alles geklappt hat, sollte die LED nun schneller blinken.