// Tastenprellen Lösung mit millis
// delay --> einfach aber haltet Prozess auf
// millis() ist ein ständig laufender Hintergrundzähler
//Pins für die Schaltung definieren
const int buttonPin = 2;
const int ledPin = LED_BUILTIN;
int counter = 0;
//Alles für millis definieren
bool lastReading = HIGH;
bool stableState = HIGH;
unsigned long lastDebounceTime = 0;
const unsigned long debounceDelay = 30;
void setup() {
pinMode(buttonPin, INPUT_PULLUP);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
bool reading = digitalRead(buttonPin);
if (reading != lastReading) {
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay) {
if (reading != stableState) {
stableState = reading;
if (stableState == LOW) {
counter++;
Serial.println(counter);
/*
Code hier einfügen
Code hier einfügen
Code hier einfügen
*/
}
}
}
lastReading = reading;
}