#105Anfänger
ESP32 LED Steuerung mit Taster (Toggle)
Jedes Mal, wenn die Taste gedrückt wird, ändert sich der Zustand der LED: ist sie an, schaltet sie aus, ist sie aus, schaltet sie ein. Klassisches Toggle-Muster. Mit der Entprellung wird das mechanische Geräusch des Tasters beseitigt, um ein einmaliges Umschalten mit einem einzigen Druck zu gewährleisten.
4.6(39)
56 abgeschlossen

Jedes Mal, wenn die Taste gedrückt wird, ändert sich der Zustand der LED: ist sie an, schaltet sie aus, ist sie aus, schaltet sie ein. Klassisches Toggle-Muster. Mit der Entprellung wird das mechanische Geräusch des Tasters beseitigt, um ein einmaliges Umschalten mit einem einzigen Druck zu gewährleisten.
Video
Schaltplan

Quellcode
1const int LED_PIN = 5;
2const int BUTTON_PIN = 4;
3
4bool ledState = false;
5bool lastButton = HIGH;
6unsigned long lastPress = 0;
7const unsigned long DEBOUNCE = 50;
8
9void setup() {
10 pinMode(LED_PIN, OUTPUT);
11 pinMode(BUTTON_PIN, INPUT_PULLUP);
12}
13
14void loop() {
15 bool buttonState = digitalRead(BUTTON_PIN);
16
17 if (buttonState == LOW && lastButton == HIGH && (millis() - lastPress > DEBOUNCE)) {
18 ledState = !ledState;
19 digitalWrite(LED_PIN, ledState);
20 lastPress = millis();
21 }
22 lastButton = buttonState;
23}