Metainformationen zur Seite
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
faecher:informatik:schrecksekunde:led2 [2018/02/26 10:34]
m.lange
faecher:informatik:schrecksekunde:led2 [2018/03/16 21:11] (aktuell)
Zeile 1: Zeile 1:
 ====== Wie man eine Leuchtdiode zum Blinken bringt ====== ====== Wie man eine Leuchtdiode zum Blinken bringt ======
 +===== Was du schon weißt =====
 Was du schon weißt: Was du schon weißt:
   * Wie der //Arduino// als Batterie funktioniert   * Wie der //Arduino// als Batterie funktioniert
   * Wie man eine Leuchtdiode mit einem Widerstand in den Stromkreis einbaut   * Wie man eine Leuchtdiode mit einem Widerstand in den Stromkreis einbaut
   * Wie das Steckbrett funktioniert.   * Wie das Steckbrett funktioniert.
 +===== eine neue Schaltung =====
 Wir haben den //Arduino// als Batterie verwendet, um eine Leuchtdiode zm Leuchten zu bringen. Aber der //Arduino// ist ein keiner Computer, der seine Kontakte je nach Bedarf ein- und ausschalten kann. Das wollen wir nutzen, um eine Leuchtdiode blinken zu lassen.\\ Wir haben den //Arduino// als Batterie verwendet, um eine Leuchtdiode zm Leuchten zu bringen. Aber der //Arduino// ist ein keiner Computer, der seine Kontakte je nach Bedarf ein- und ausschalten kann. Das wollen wir nutzen, um eine Leuchtdiode blinken zu lassen.\\
 Im Prinzip bauen wir wieder einen Stromkreis mit dem //​Arduino//,​ einer Leuchtdiode,​ einem Widerstand, dem Steckbrett und Kabel.\\ Im Prinzip bauen wir wieder einen Stromkreis mit dem //​Arduino//,​ einer Leuchtdiode,​ einem Widerstand, dem Steckbrett und Kabel.\\
Zeile 19: Zeile 19:
 Die Schaltung sollte nun etwa so aussehen: Die Schaltung sollte nun etwa so aussehen:
  
-{{ :​faecher:​informatik:​schrecksekunde:​led-schalt.png}}+{{ :​faecher:​informatik:​schrecksekunde:​led-schalt.png }}
 <note tip>​Statt des rechten unteren Kabels kannst du auch den Widerstand verwenden, um den Stromkreis von der Leuchtdiode auf zur waagerechten Leitung zu schließen.</​note>​ <note tip>​Statt des rechten unteren Kabels kannst du auch den Widerstand verwenden, um den Stromkreis von der Leuchtdiode auf zur waagerechten Leitung zu schließen.</​note>​
  
Zeile 28: Zeile 28:
 Das Programm, in dem wir die Programme für den //Arduino// schreiben, die so genannte //​Arduino-IDE//,​ sieht wie folgt aus: Das Programm, in dem wir die Programme für den //Arduino// schreiben, die so genannte //​Arduino-IDE//,​ sieht wie folgt aus:
  
-{{ :​faecher:​informatik:​arduino:​arduino-ide.png}}+{{ :​faecher:​informatik:​arduino:​arduino-ide.png?300 }}
  
 Dort schreiben wir folgenden Quelltext hinein: Dort schreiben wir folgenden Quelltext hinein:
Zeile 40: Zeile 40:
 } }
 </​code>​ </​code>​
 +
 +<note tip>​Statt zu tippen, kannst du den Quelltext mit der Maus markieren, kopieren und einfügen. Lass' dir dabei helfen, wenn du nicht weißt, wie das geht.</​note>​
 +
 +Ist der Quelltext eingefügt, so muss man nur auf mit der Maus auf den wie ein Pfeil aussehenden Knopf klicken, dann wird das Programm auf den //Arduino// gespielt und ausgeführt. **Dazu muss der //Arduino// natürlich mit dem USB-Kabel angeschlossen sein.**
 +<note important>​In einigen Fällen kann es dabei zu Fehlern kommen, die sich dadurch bemerkbar machen, dass der untere Teil der //​Arduino-IDE//​ orangefarben wird. Melde dich in dem Fall!</​note>​
 +
 +Wir wollen kurz den Quellcode erklären:​\\
 +Ein Programm für den //Arduino// muss immer die zwei Teile haben, die mit **setup** bzw. **loop** gekennzeichnet sind.\\
 +Der **setup**-Teil,​ wird nur einmal zu Beginn des Progammes aufgerufen und die dort stehenden Befehle der Reihe nach aufgerufen.\\
 +In diesem Fall wird dem //Arduino// mitgeteilt, dass er den Kontakt D2 als Stromausgang vewenden soll/darf. Dabei wird aber das "​D"​ weggelassen. Das macht der Befehl:
 +<code cpp>
 +  pinMode(2, OUTPUT);
 +</​code>​
 +Danach wird der Kontakt D2 eingeschaltet,​ was der Befehl
 +<code cpp>
 +  digitalWrite(2,​ HIGH);
 +</​code>​
 +erledigt.
 +
 +Nachdem alle Befehle des **setup**-Teils ausgeführt wurden, wird mit dem **loop**-Teil fortgefahren. In unserem Falle steht dort nichts drin!\\
 +Sind die Befehle des **loop**-Teils ausgeführt worden, beginnt der //Arduino// noch einmal damit, die Befehle des **loop**-Teils der Reihe nach auszuführen.\\
 +Daher stammt auch der Name: loop bedeutet so viel wie Kreis.
 +
 +Wenn alles richtig gemacht wurde, dann leuchtet die Leuchtdiode nun wieder die ganze Zeit.
 +
 +===== Und jetzt das Blinken... =====
 +Nun verändern wir das Programm, sodass die Leuchtdiode blinkt.
 +
 +Der **setup**-Teil muss dafür nur noch einen Befehl enthalten:
 +<code cpp>
 +void setup() {
 +  pinMode(2, OUTPUT);  ​
 +}
 +</​code>​
 +
 +Der **loop**-Teil schaltet jetzt die Leuchtdiode im Wechsel ein und aus. Dafür könnte er so aussehen:
 +<code cpp>
 +void loop() {
 +  digitalWrite(2,​ HIGH);
 +  delay(1000);​
 +  digitalWrite(2,​ LOW);
 +  delay(1000);​
 +}
 +</​code>​
 +
 +Insgesamt sieht der Quelltext also wie folgt aus:
 +<code cpp>
 +void setup() {
 +  pinMode(2, OUTPUT);  ​
 +}
 +
 +
 +void loop() {
 +  digitalWrite(2,​ HIGH);
 +  delay(1000);​
 +  digitalWrite(2,​ LOW);
 +  delay(1000);​
 +}
 +</​code>​
 +
 +Wenn du den Quelltext in die //​Arduino-IDE//​ eingegeben und per Knopfdruck hochgelade hast (//​Arduino//​ per USB-Kabel anschließen nicht vergessen!),​ dann sollte die Leuchtdiode im Wechsel eine Sekunde lang leuchten und eine Sekunde lang aus sein.
 +
 +Der Befehl
 +<code cpp>
 +  delay(1000);​
 +</​code>​
 +sorgt dafür, dass der //Arduino// 1000 Millisekunden,​ also eine Sekunde lang wartet, bevor er mit dem nächsten Befehl fortfährt.
 +===== Ziel erreicht =====
 +**Herzlichen Glückwunsch! Du weißt nun, wie man mit dem //Arduino// eine Leuchtdiode ansteuert.**
 +===== Weitere Ideen =====
 +Wenn du noch Zeit hast, kannst du folgendes ausprobieren:​
 +  * Verändere die Zeit, die die Leuchtdiode leuchtet oder dunkel ist.
 +  * Lasse die Leuchtdiode in einem anderen Rhythmus blinken.
 +  * Baue eine zweite Leuchtdiode (bitte mit **eigenem** Widerstand) ein. Du kannst beide gleichzeitig leuchten lassen oder genau im Wechsel.
 +===== Wie geht's weiter? =====
 +Der nächste Teil des Workshops findet sich auf der Seite [[faecher:​informatik:​schrecksekunde:​taster|Wie man auf einen Tastendruck reagiert]].