Wichtig:
Von D2 nach GND muss noch ein 10k Widerstand gesetzt werden.
(als Pulldown, sonst fängt sich der Eingang aus der Luft nicht vorhandenen Tastendrucke).
Hier jetzt noch der Arduino code.
Erneuter Tastendruck während die Sequenz abläuft wird ignoriert.
Nach ca. 3 Sekunden kann man wieder frisch drücken.
Wenn man auf dem Taster drauf bleibt, wird ca. alle 3 Sekunden eine Münze aufgezählt.
const int Taster = 2; // Pin 2 heißt jetzt Taster
const int LiM = 3; // Pin 3 heißt jetzt LiM
const int LiG = 4; // Pin 4 heißt jetzt LiG
int TZ = 0; // Variable “TZ” (Tasterzustand)
void setup() {
pinMode(LiM, OUTPUT); // Pins als Ausgänge definieren
pinMode(LiG, OUTPUT);
pinMode(Taster, INPUT); // Pin als Eingang definieren
}
void loop() {
TZ = digitalRead(Taster); // Tasterzustand lesen
if (TZ == HIGH) {
digitalWrite(LiM, HIGH); //LiM einschalten
delay(100); //100ms warten
digitalWrite(LiM, LOW); //LiM ausschalten
delay(250); //250ms warten usw.
digitalWrite(LiG, HIGH);
delay(150);
digitalWrite(LiG, LOW);
delay(2500); //warte 2,5s bis neuer Tastendruck angenommen wird
}
}