Arduino Tutorial: Erste Versuche mit der LED

In diesen Kapitel wirst du deine erste Schaltung aufbauen. Du wirst eine LED für eine Sekunde aufleuchten lassen und dann wieder für eine Sekunde ausschalten. Dieser Vorgang wird ständig wiederholt.

 

 

Was benötigst du?

  • 1 x Arduiono Uno

 

  • 1 x USB Kabel

 

  • 1 x Steckbrett

 

  • 1 x LED

 

  • 1 x Ohmscher Widerstand (220 Ohm)

 

  •  Jump Wire (Männlich)

 

Wie sieht die Schaltung aus?

Die LED wird an Pin 13 angeschlossen. Um sicherzugehen, dass du deine LED nicht zerstörst, weil zu viel Strom fließen könnte, schaltest du einen Widerstand dazu.

 

 

 

 

Achte darauf, dass du Pin 13 mit dem "langen Bein" der LED verbindest. Das andere Bein wird mit dem GND Pin geschaltet. Dazwischen kannst du den Widerstand zuschalten.

 

Wenn du auch vorher neue Schaltungen an deinem Computer ausprobieren möchtest, kannst du die Software fritzing herunterladen. Mit diesem Programm wurde auch die Schaltung auf dem Screenshot hier oben erstellt. Die Software findest du hier.

 

 

Der Sketch

Nun bereiten wir deinen Quellcode vor. Im Quellcode stehen die Befehle, die unser Mikrocontroller ausführen muss. Dieser Quellcode wird auch Sketch genannt.

 

Starte nun die Arduino IDE.

 

Du kannst nun die Befehle unten in deinen Sketch kopieren oder abschreiben.

 

 

 

int led = 13;                          // Variable für Pin 13

 

void setup () {                        // die void- Methode wird einmal ausgeführt

 

  pinMode(led, OUTPUT);                // definiere Pin 13 als Ausgang

 

}

 

 

void loop () {                         // die loop- Methode wird immer wieder

                                       // ausgeführt

 

  digitalWrite(led, HIGH);             // definiere Pin 13 als HIGH = 5 Volt, also

                                       // mach LED an

  delay(1000);                         // mach 1000 Millisekunden,

                                       // also 1 Sekunde, nichts

  digitalWrite(led, LOW);              // definiere Pin 13 als LOW = 0 Volt, also

                                       // mach LED aus

  delay(1000);                         // mach 1000 Millisekunden,

                                       // also 1 Sekunde, nichts

} 

 

 

Du kannst auch den Sketch hier herunterladen.

 

Wenn alles richtig kopiert wurde sieht es ungefähr so aus:

 

 

 

 

Nachdem dein Sketch fertig ist, musst du es noch kompilieren. Bei diesen Vorgang wird dein Code vom Compiler auf Fehler geprüft. Du kannst  dir den Compiler als deinen "strengen" Lehrer vorstellen, der darauf achtet, dass alles in der richtigen Form aufgeschrieben wurde. Um deinen Code zu kompilieren, klickst du auf den Kompilieren- Button (Haken). Wenn es keinen Fehler gibt, wird dir angezeigt wie viel Speicher dein Sketch auf deinen Arduino verbraucht.(rot eingerahmter Kasten)

 

 

 

 

Anschließend kannst du den Sketch auf deinen Mikrocontroller hochladen. Klicke dazu auf den Hochladen- Button. Der Button ist direkt neben den Kompilieren- Button.

 

 

 

 

 

Code- Review

Lass uns mal ansehen was wir hier gemacht haben.

 

int led = 13;                          // Variable für Pin 13

 

Der doppelte Slash "//" führt einen Kommentar ein. Ein Kommentar wird von dem Mikrocontroller ignoriert. Er ist trotzdem wichtig. Er ist eine Hilfe um deinen Sketch besser verstehen zu können 

 

// Hier steht ein Kommentar

 

Der Kommentar steht nach dem doppelten Slash und gilt nur in der selben Zeile

 

Das ist kein Kommentar //Hier steht ein Kommentar

Hier steht kein Kommentar mehr

 

int led = 13;

 

Hier haben wir eine Variable initialisiert. Auf Deutsch gesagt: "Wir haben die Zahl 13 in einer Variable abgespeichert. Damit wir unsere Variable wiederfinden haben wir ihr den Namen 'led' gegeben."

Man kann nicht nur Zahlen in eine Variable speichern. Man kann auch die Aussage  "true" ("wahr") oder  "false" ("falsch") abspeichern. Man kann auch einzelne Buchstaben z.B "a" oder "q" aber auch ganze Wörter abspeichern. Je nachdem, was du abspeichern möchtest, musst du der Variable einen Typ zuweisen. Hier möchten wir der Variable mit dem Namen "led" eine Zahl zuweisen. Deshalb ist die Variable von Typ "int". In eine Variable von Typ int können Zahlen zwischen ca. -60000 bis ca. +60000 abgespeichert werden. Die Zahl 70000 passt also in unsere int- Variable nicht mehr rein. Buchstaben werden mit dem Typ "char", Wörter mit dem Typ "String" und Aussagen mit dem Typ "boolean" abgespeichert. Wichtig: Am Ende muss immer ein Semikolon " ; " gesetzt werden.

 

void setup () {                        // die void- Methode wird einmal ausgeführt

 

  ........

 

}

 

Das ist die setup()- Methode. Diese Methode muss, so wie hier oben, in jedem Sketch drin stehen. In den geschweiften Klammern { ... }, kommt der Code rein, der bei der Benutzung der Methode ausgeführt werden soll. In der setup()- Methode werden üblicherweise nur die Pins als Eingang oder Ausgang definiert. In unserem Beispiel ist das:

 

pinMode(led, OUTPUT);                // definiere Pin 13 als Ausgang

 

Wir benutzen die pinMode()- Methode. Die Methode wurde schon in einer Bibliothek erstellt, deshalb können wir uns die geschweiften Klammern hier sparen. Was macht jetzt die pinMode()- Methode? Die Methode definiert den Pin, der wir der Methode übergeben, als Ausgang oder Eingang. Also "pinMode(Pin, Ausgang/Eingang)".

Als Ausgänge werden die Pins definiert, die wir mit dem Mikrocontroller steuern wollen. An diesen Pins soll etwas passieren oder wir senden Informationen über Ausgänge. Die Komponenten, die an Ausgänge geschaltet werden, werden auch als Akteure bezeichnet. Die LED ist ein Akteur, also muss der Pin als Ausgang definiert werden. Für Pin setzen wir den Namen unserer Variable ein, also "led". Am Ende der Methode wieder ein Semikolon " ; " setzen.

 

void loop () {                         // die loop- Methode wird immer wieder

                                       // ausgeführt

  ........

 

 

}

 

Danach kommt die loop()- Methode. Hier kommt der eigentliche Code rein. Hier sagst du deinem Arduino was er zu tun hat. Diese Methode muss auch in jedem Sketch stehen.

 

digitalWrite(led, HIGH);             // definiere Pin 13 als HIGH = 5 Volt, also

 

 

Mit dieser Methode verändern wir das Potenzial eines Pins (Hier Pin "led", also Pin 13). Die LED ist mit dem kurzen Bein an Pin GND angeschlossen. Dort haben wir immer ein Potenzial von 0 Volt. Das lange Beinchen der LED wurde mit Pin 13 verbunden. Sobald wir mit der digitalWrite()- Methode den Pin 13 auf HIGH setzen herrscht hier ein Potenzial von +5 Volt. Zwischen Pin 13 und Pin GND haben wir damit ein Potenzialunterschied von 5 Volt - 0 Volt = 5 Volt. Dieser Potenzialunterschied nennt man elektrische Spannung. Wenn es eine Spannung gibt, dann gibt es auch einen elektrischen Strom, der fließen kann. Dadurch kann die LED leuchten.

 

 

 

 

 

delay(1000);                           // mach 1000 Millisekunden,

                                       // also 1 Sekunde, nichts

 

Hier macht der Mikrocontroller 1000 Millisekunden lang nichts. 1000 Millisekunden entsprechen einer Sekunde.

 

digitalWrite(led, LOW);                // definiere Pin 13 als LOW = 0 Volt, also

                                       // mach LED aus

 

Hier verändern wir das Potenzial an Pin 13 auf 0 Volt. Wir haben jetzt kein Potenzialunterschied mehr zwischen Pin GND und Pin 13. Also haben wir auch keine Spannung. Die LED leuchtet nicht mehr.

 

delay(1000);                           // mach 1000 Millisekunden,

                                       // also 1 Sekunde, nichts

 

Wir warten wieder eine Sekunde.

 

Nun sind wir am Ende der loop- Methode. Das besondere an der loop()- Methode ist, dass sie sich in einer Endlosschleife wiederholt. Also fangen wir wieder ganz oben in der loop()- Methode an und arbeiten alles nochmal ab. Das geht immer so weiter.

 

 

Jetzt bist du dran

 

Nachdem du deinen ersten Sketch hoffentlich erfolgreich ausprobiert hast, bist nun du gefragt! Ich stelle dir nun ein paar Aufgaben zur Verfügung um dein erlerntes besser zu festigen.

(Die Aufgaben sollen dich nur ein wenig zum herum experimentieren bewegen. Du musst die Aufgaben nicht machen um das nächste Kapitel zu verstehen.)

 

Aufgabe 1

Speichere die Delay- Zeiten in Variablen ab und mach die LED

a) ... 2 Sekunden lang an und für 0,5 Sekunden aus

b) ... 1,5 Sekunden lang an und für 1,89 Sekunden aus

 

Die Lösung findest du hier.

 

 

 

 

Wenn du hier irgendetwas vermisst, bessere Ansätze hast oder dir etwas nicht klar ist, zögere nicht einen Kommentar zu hinterlassen.

Kommentar schreiben

Kommentare: 0