|
Eine Taste anschließen
Mit einer Taste können wir digitale Signale in den Arduino geben.


Verbinden wir Pin2 über eine Taste gegen GND, lautet der Code
dafür:
pinMode(2, INPUT); // Pin 2 ist jetzt ein Eingang
Wenn Du Dir die Schaltung ansiehst, bemerkst Du vielleicht, dass
bei geöffneter Taste der Pin 2 mit nichts verbunden ist.
Dies ist keine gute Idee!
Damit bei geöffneter Taste an Pin 2 ein High-Signal anliegt,
benutzen wir den Befehl:
digitalWrite(2, HIGH); (... was einen internen Widerstand namens "Pull Up" gegen 5V aktiviert)
Die Tastenabfrage erledigen wir mit folgender Anweisung:
if (
digitalRead(2) == LOW ) {machirgendwas}
oder:
if (
digitalRead(2) == HIGH ) {machirgendwasanderes}
wobei ein LOW eine geschlossene Taste repräsentiert.
Übungen zu Tasten:
1. Eine LED soll leuchten, solange eine Taste gedrückt wird.
2. UND-Verknüpfung: eine LED soll leuchten, wenn zwei Tasten
gedrückt werden.
3. Oder-Verknüpfung: LEDan = Taste 1 ODER Taste 2
4. Zwei Tasten und eine LED: Taste 1 ein lässt die LED leuchten und
Taste 2 lässt sie verlöschen
5. Gegenseitige Auslösung mit 3 LEDs (entspricht "Radiobutton" bei
z. B. C#)
6. Gegenseitige Auslösung mit 3 LEDs (Quiz-Schaltung)
Seit einiger Zeit kann man die beiden Anweisungen:
pinMode(2, INPUT); //Pin 2 ist jetzt ein Eingang
digitalWrite(2, HIGH); //internen Pull Up Widerstand an Pin2 einschalten
Zu einer Anweisung zusammenfassen:
pinMode(2, INPUT_PULLUP); //Pin 2 ist jetzt ein Eingang mit Pull Up
|