Ihre Browserversion ist veraltet. Wir empfehlen, Ihren Browser auf die neueste Version zu aktualisieren.

Ereignisse wiederholen

Aufgabe

Wenn ein Taster gedrückt wird, soll eine LED fünfmal hintereinander blinken.

Aufbau der Schaltung

Material

  • Arduino
  • 1 LED
  • 1 Widerstand 150Ω oder 220Ω
  • 1 Taster
  • 1 Widerstand 1kΩ
  • Breadboard
  • Leitungen

 

Beschreibung

Die schwarze Leitung zu GND wird auf die waagrechte Leiste am Breadboard gelegt, von dort können Abzweigungen gelegt werden.

Die LED wird mit der Anode zusammen mit einem Vorwiderstand an einen der digitalen Ausgänge an den Arduino (hier Pin 7) angeschlossen.

Die Kathode der LED wird an GND verbunden.

Ein Anschluss des Tasters wird an 5Volt angeschlossen, der andere an einen digitalen Pin (hier Pin 8).

 

Wird der Taster gedrückt, dann liegt an Pin 8 eine Spannung von 5 Volt an (HIGH), die vom Mikrokontroller registriert wird.

Wenn man den Taster los lässt, dann befinden sich ja immer noch Elektronen auf den Leitungen. Über den 1kΩ Widerstand sollen diese Elektronen, die sich nach dem Schließen des Tasters, also wenn er nicht gedrückt wird (LOW), abfließen können (Pulldown-Widerstand).

Der Aufbau der entspricht der Schaltung „Einen Taster einlesen“.

 

Das ArduBlock-Programm

Bedeutung der einzelnen Blöcke

(Steht unter dem Block keine Erklärung, dann wurde er bereits in einem Tutorial erklärt)

 

 

 

Hier wird geprüft, ob die Anfrage in der Zeile „teste“ stimmt oder nicht.

Es wird abgefragt, ob am digitalen Pin 8 eine Spannung von 5V (HIGH) anliegt. Ist das wahr, dann werden die Befehle bearbeitet, die im „dann-Block“ folgen.

Ist die Anfrage nicht wahr, dann werden die Blöcke unterhalb der Schleife abgearbeitet, bzw. wird hier einfach nochmal abgefragt.

Alle Blöcke innerhalb werden fünfmal wiederholt.

Zuerst wird am digitalen Pin 7 eine Spannung von 5V angelegt, die LED wird eingeschaltet. Dann passiert eine halbe Sekunde nichts.

Danach wird an Pin 7 keine Spannung mehr angelegt, die LED erlischt, bevor nochmal eine Pause von 0,5 Sekunden eingelegt wird.

 

Der Arduino-Sketch

(Steht keine Erklärung, dann wurde der Befehl bereits in einem Tutorial erklärt)

1  int _ABVAR_1_;

 // Eine Variable mit dem Namen _ABVAR_1_ wird erstellt.

2  void setup()                                             
3  {  
4       pinMode( 7 , OUTPUT);  // Pin 7 ist ein Ausgang.
5       pinMode( 8 , INPUT);  // Pin 8 ist ein Eingang
6  }  
7  void loop()  
8  {  
9      if (digitalRead( 8))  // Wenn am digitalen Eingang eine Spannung von 5V (HIGH) anliegt, dann..
 10      {  
 11      for (_ABVAR_1_=0; _ABVAR_1_< ( 5 ); ++_ABVAR_1_ )  // _ABVAR_1_ wird auf 0 gesetzt. Solange _ABVAR_1_ > 5 ist werden die folgenden Befehle ausgeführt. Sind sie ausgeführt, wird _ABVAR_1_ um 1 erhöht (++).
12            {  
13                     digitalWrite( 7 , HIGH );  // Pin 7 wird HIGH gesetzt
14                     delay( 500 );  // Verzögerung von einer halben Sekunde
15                     digitalWrite( 7 , LOW );  // Pin 7 wird LOW gesetzt
16                     delay( 500 );  // Verzögerung von einer halben Sekunde
17             }  
18       }  
19 }  

Cookie-Regelung

Diese Website verwendet Cookies, zum Speichern von Informationen auf Ihrem Computer.

Stimmen Sie dem zu?