ESP32 - Taster
Dieses Tutorial zeigt Ihnen, wie Sie einen Taster mit dem ESP32 unter Verwendung von MicroPython nutzen.
Taster können mit dem ESP32 etwas knifflig sein, besonders für Elektronik-Einsteiger. Schauen wir uns die Grundlagen an und vermeiden wir einige häufige Fehler.
Zwei wichtige Probleme, die gelöst werden müssen:
- Schwebende Eingänge (Floating Inputs): Wenn Sie einen Taster ohne Widerstand an einen ESP32 anschließen, kann der ESP32 nicht sicher erkennen, ob der Taster gedrückt ist oder nicht. Das liegt daran, dass sich der Eingangspin in einem undefinierten Zustand befinden kann. Um dies zu verhindern, müssen Sie einen Pull-Down- oder Pull-Up-Widerstand anschließen. Wie das geht, erklären wir später ausführlicher.
- Prellen (Chattering): Taster können manchmal „prellen“, d. h. sie wechseln schnell zwischen gedrücktem und nicht gedrücktem Zustand, obwohl sie nur einmal gedrückt wurden. Dadurch kann der ESP32 mehrere Tastendrücke erkennen. Das ist nicht in allen Fällen ein großes Problem, kann aber in Anwendungen, bei denen ein genaues Zählen der Tastendrücke wichtig ist, problematisch sein. Wir behandeln Entprelltechniken, um dies zu lösen.
Wenn Sie diese beiden Probleme verstehen und die passenden Lösungen umsetzen, sind Sie gut gerüstet, um Taster in Ihren ESP32-Projekten effektiv einzusetzen.

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Verdrahtungsdiagramm
- So verbinden Sie ESP32 und Taster mit einem Steckbrett

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
- So verbinden Sie den ESP32 mit einem Einbau-Taster über ein Schraubklemmen-Breakout-Board

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
So programmieren Sie einen Taster
- Richtet einen ESP32-Pin mit der Funktion Pin(BUTTON_PIN, Pin.IN, Pin.PULL_UP) als Eingang mit eingebautem Pull-Up-Widerstand ein.
- Den Zustand des ESP32-Pins auslesen.
※ Notiz:
Es gibt zwei übliche Fälle:
- Erstens: Ist der Eingang HIGH, führe eine Aktion aus. Ist der Eingang LOW, tue das Gegenteil.
- Zweitens: Wechselt der Eingang von LOW auf HIGH (oder von HIGH auf LOW), führe eine Aktion aus.
Je nach Ziel wählen wir eine dieser Methoden. Zum Beispiel beim Steuern einer LED mit einem Taster:
- Wenn die LED beim Drücken des Tasters EIN und beim Loslassen AUS gehen soll, wählen wir den ersten Fall.
- Wenn die LED bei jedem Antippen des Tasters zwischen EIN und AUS wechseln soll, wählen wir den zweiten Fall.
ESP32 MicroPython-Code - Den Zustand des Tasters auslesen
Schnelle Schritte
So richten Sie Ihren MicroPython-Code auf dem ESP32 mit der Thonny IDE ein und führen ihn aus:
- Stellen Sie sicher, dass die Thonny IDE auf Ihrem Computer installiert ist.
- Vergewissern Sie sich, dass die MicroPython-Firmware auf Ihrem ESP32-Board installiert ist.
- Wenn Sie zum ersten Mal einen ESP32 mit MicroPython verwenden, lesen Sie die Anleitung ESP32 MicroPython Erste Schritte für eine Schritt-für-Schritt-Anleitung.
- Schließen Sie den Taster gemäß dem bereitgestellten Schaltplan an den ESP32 an.
- Verbinden Sie das ESP32-Board über ein USB-Kabel mit Ihrem Computer.
- Öffnen Sie die Thonny IDE auf Ihrem Computer.
- Gehen Sie in der Thonny IDE zu Tools Options.
- Wählen Sie im Reiter Interpreter die Option MicroPython (ESP32) aus dem Dropdown-Menü.
- Stellen Sie sicher, dass der richtige Port ausgewählt ist. Die Thonny IDE erkennt ihn normalerweise automatisch, aber eventuell müssen Sie ihn manuell auswählen (z. B. COM12 unter Windows oder /dev/ttyACM0 unter Linux).
- Kopieren Sie den bereitgestellten MicroPython-Code und fügen Sie ihn in den Editor von Thonny ein.
- Speichern Sie den Code auf Ihrem ESP32:
- Klicken Sie auf die Schaltfläche Save oder drücken Sie Ctrl+S.
- Wählen Sie im Speicherdialog MicroPython device.
- Benennen Sie die Datei main.py.
- Klicken Sie auf die grüne Schaltfläche Run (oder drücken Sie F5), um das Skript auszuführen.
- Drücken Sie die grüne Run-Schaltfläche oder F5, um Ihr Skript auszuführen.
- Sehen Sie sich die Meldung in der Shell unten in der Thonny IDE an.
1 bedeutet nicht gedrückt, 0 bedeutet gedrückt.
Code-Erklärung
Die Erklärung finden Sie in den Kommentaren des oben angegebenen ESP32 MicroPython-Codes.
ESP32 MicroPython-Code - Drück- und Loslass-Ereignis des Tasters erkennen
Ändern wir den Code so, dass er erkennt, wann Taster gedrückt und losgelassen werden
Schnelle Schritte
- Kopieren Sie den obigen Code und fügen Sie ihn in die Thonny IDE ein.
- Klicken Sie auf die grüne Run-Schaltfläche oder drücken Sie F5, um das Skript zu starten.
- Drücken Sie den Taster und lassen Sie ihn dann los.
- Sehen Sie sich die Meldung in der Shell unten in Thonny an.
※ Notiz:
- Gelegentlich kann es vorkommen, dass ein einmaliges Drücken des Tasters mehrere Tastendrücke in der Shell von Thonny anzeigt. Dieses häufige Problem ist als Prellphänomen oder Prellen bekannt. Mehr dazu und eine Lösung finden Sie im ESP32 MicroPython Taster-Entprellung Tutorial.
- Wenn Sie das Taster-Modul verwenden, setzen Sie den Pin mit button = Pin(BUTTON_PIN, Pin.IN) in den Eingangsmodus. In dieser Konfiguration gibt das Modul LOW aus, wenn der Taster nicht gedrückt ist, und HIGH, wenn er gedrückt ist.
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.




