Das Tastenpad wird mit einem analogen Anschluss, 5V und GND verbunden.

Die gedrückte Taste wird durch die Messung des analogen Wertes ermittelt. Leider kann dieser Wert nur ungefähr angegeben werden, daher wird ein Wertebereich definiert. Innerhalb dieses Bereich darf der Wert liegen, damit eine Reaktion ausgelöst wird.
Info
| Taster | Ungefährer analoger Wert |
|---|---|
| links (1) | 0 - 5 |
| oben (2) | 30 - 40 |
| unten (3) | 85 - 95 |
| rechts (4) | 160 - 170 |
| außen (5) | 330 - 380 |
| nicht gedrückt | 1023 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
void setup() { Serial.begin(9600); // auf serielle Verbindung warten while (!Serial) {;} delay(1000); } void loop() { int Analogwert = analogRead(A0); // kurzes delay() -> doppelten Tastendruck so weit wie möglich verhindern delay(200); switch (Analogwert) { case 0 ... 20: Serial.print(Analogwert); Serial.println(" Taste 1 gedrückt"); break; case 30 ... 60: Serial.print(Analogwert); Serial.println(" Taste 2 gedrückt"); break; case 70 ... 120: Serial.print(Analogwert); Serial.println(" Taste 3 gedrückt"); break; case 150 ... 200: Serial.print(Analogwert); Serial.println(" Taste 4 gedrückt"); break; case 300 ... 400: Serial.print(Analogwert); Serial.println(" Taste 5 gedrückt"); break; } } |

Letzte Aktualisierung: