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:arduino:lauflicht_ueber_taster [2020/02/07 15:26]
m.lange
faecher:informatik:arduino:lauflicht_ueber_taster [2020/02/07 15:50] (aktuell)
m.lange
Zeile 1: Zeile 1:
 ====== Lauflicht über Taster ====== ====== Lauflicht über Taster ======
-Das folgende Programm soll die einzelnen LEDs nach und nach einschalten.+{{:​faecher:​informatik:​arduino:​lauflicht-mit-taster2.png?​600|}} 
 + 
 +Das folgende Programm soll die einzelnen LEDs nach und nach auf Tastendruck ​einschalten.
 <code c> <code c>
 int aktuell; // hier drin wird der Pin der LED gespeichert,​ die gerade an sein soll int aktuell; // hier drin wird der Pin der LED gespeichert,​ die gerade an sein soll
Zeile 30: Zeile 32:
  
 </​code>​ </​code>​
-Das Programm funktiniert noch nicht wie gewollt, die LEDs leuchten alle (wie genau?) und wenn man den Taster los lässt, leuchtet eine zufällig ​LED.+Das Programm funktiniert noch nicht wie gewollt, die LEDs leuchten alle (wie genau?) und wenn man den Taster los lässt, leuchtet eine zufällige ​LED.
  
-Um den Fehler ​aufc_mazuspüren ​baut man nach der "Marke 1" ein "delay(100);" ein.+Um den Fehler ​aufzuspüren ​baut man nach der "**Marke 1**" ein
 + 
 +<code c> 
 +delay(100); 
 +</​code>​
  
 Man sieht nun, was passiert, in schneller Folge werden die LEDs geschaltet. Was ist der Fehler? Man sieht nun, was passiert, in schneller Folge werden die LEDs geschaltet. Was ist der Fehler?
  
-Die Zeile "if (!digitalRead(2)) {" fragt nur ab, ob ein Taster gedrückt ist, nicht ob er wieder losgelassen wurde.+Die Zeile "**if (!digitalRead(2)) {**" fragt nur ab, ob ein Taster gedrückt ist, nicht ob er wieder losgelassen wurde.
  
-Also bauen wir ein warten bis der Taster wieder losgelassen wurde ein. Nach "Marke 2":+Also bauen wir ein warten bis der Taster wieder losgelassen wurde ein. Nach "**Marke 2**":
 <code c> <code c>
 while( !digitalRead(2) ){delay(10);​} while( !digitalRead(2) ){delay(10);​}