ESP32 C3 Super Mini - Taster - Langer Druck, kurzer Druck
Lernen Sie, wie Sie Ihren ESP32 C3 Super Mini so programmieren, dass er sowohl lange als auch kurze Tastendrücke erkennt. Dieses Tutorial behandelt alles von der grundlegenden Verdrahtung bis zu fortgeschrittenen Entprelltechniken für eine zuverlässige Erkennung von Tastereingaben.
In diesem Tutorial lernen Sie:
- Wie Sie kurze Tastendrücke am ESP32 C3 Super Mini erkennen
- Wie Sie lange Tastendrücke erkennen (zwei verschiedene Methoden)
- Wie Sie lange und kurze Drücke an einem einzigen Taster erkennen
- Wie Sie das Prellen von Tastern durch Entprellung beseitigen
- Wann Sie in Arduino-Projekten langes bzw. kurzes Drücken verwenden sollten

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Verdrahtungsdiagramm
Schließen Sie Ihren Taster gemäß dem folgenden Schaltplan an den ESP32 C3 Super Mini an.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wichtige Hinweise:
- Dieses Tutorial verwendet den internen Pull-up-Widerstand
- Der Tasterzustand ist HIGH, wenn er nicht gedrückt ist, und LOW, wenn er gedrückt ist
- Kein externer Widerstand erforderlich
So erkennen Sie einen kurzen Druck
Um einen kurzen Druck am ESP32 C3 Super Mini zu erkennen, wird die Dauer zwischen dem Drücken und dem Loslassen des Tasters gemessen.
Methode zur Erkennung eines kurzen Drucks:
- Messen Sie die Zeit zwischen dem Drück- und dem Loslass-Ereignis
- Ist die Dauer kürzer als eine vordefinierte Zeit, wird ein kurzer Druck erkannt
- Vergleichen Sie die Druckdauer mit Ihrem Schwellenwert SHORT_PRESS_TIME
Schritt-für-Schritt-Umsetzung:
- Legen Sie fest, wie lange ein kurzer Druck maximal dauert
- Erkennen Sie, dass der Taster gedrückt wird, und speichern Sie den Zeitpunkt des Drückens
- Erkennen Sie, dass der Taster losgelassen wird, und speichern Sie den Zeitpunkt des Loslassens
- Berechnen Sie die Druckdauer und
- Bestimmen Sie den kurzen Druck, indem Sie die Druckdauer mit der festgelegten Zeit für einen kurzen Druck vergleichen
ESP32 C3 Super Mini Code zur Erkennung eines kurzen Drucks
Dieser Code zeigt, wie Sie einen kurzen Tastendruck am ESP32 C3 Super Mini erkennen.
Was der Code macht:
- Liest den Tasterzustand mit dem internen Pull-up-Widerstand aus
- Berechnet die Zeitdauer zwischen Drücken und Loslassen
- Erkennt einen kurzen Druck, wenn die Dauer unter 500ms liegt
- Gibt das Erkennungsergebnis im Serial Monitor aus
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Code hochladen: Kopieren Sie den obigen Code und laden Sie ihn über die Arduino IDE auf Ihren ESP32 C3 Super Mini hoch
- Hardware verdrahten: Schließen Sie den Taster gemäß dem Schaltplan an Ihren ESP32 C3 Super Mini an
- Taster testen: Drücken Sie den Taster mehrmals kurz
- Ergebnisse prüfen: Öffnen Sie den Serial Monitor (115200 Baud), um die Erkennungsergebnisse zu sehen
- Profi-Tipp: Sie können den Wert SHORT_PRESS_TIME anpassen, um die Erkennung eines kurzen Drucks schneller oder langsamer zu machen
※ Notiz:
Der Serial Monitor kann bei einem einzigen Druck mehrere kurze Drücke ausgeben. Dies ist ein normales Verhalten des Tasters. Dieses Verhalten wird "Prellphänomen" genannt. Wie Sie dieses Problem beseitigen, lernen Sie später in diesem Tutorial.
So erkennen Sie einen langen Druck
Es gibt zwei Methoden, um lange Tastendrücke am ESP32 C3 Super Mini zu erkennen.
Zwei Anwendungsfälle für die Erkennung eines langen Drucks:
- Der lange Druck wird direkt nach dem Loslassen des Tasters erkannt
- Der lange Druck wird erkannt, während der Taster noch gedrückt wird
Erste Methode (Erkennung beim Loslassen):
- Messen Sie die Zeitdauer zwischen dem Drück- und dem Loslass-Ereignis
- Ist die Dauer länger als eine vordefinierte Zeit, wird ein langer Druck erkannt
Zweite Methode (Erkennung während des Drückens):
- Messen Sie die Druckzeit fortlaufend, während der Taster gehalten wird
- Überschreitet die Dauer die vordefinierte Zeit, wird sofort ein langer Druck erkannt
- Prüfen Sie weiter, bis der Taster losgelassen wird
ESP32 C3 Super Mini Code zur Erkennung eines langen Drucks beim Loslassen
Dieser ESP32 C3 Super Mini Code erkennt einen langen Druck, nachdem der Taster losgelassen wurde.
Was dieser Code macht:
- Misst die gesamte Druckdauer vom Drücken bis zum Loslassen
- Vergleicht die Dauer mit LONG_PRESS_TIME (1000ms)
- Erkennt einen langen Druck erst nach dem Loslassen des Tasters
- Nützlich, wenn Sie die volle Druckdauer bestätigen müssen
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Code hochladen: Kopieren Sie den obigen Code und laden Sie ihn über die Arduino IDE auf den ESP32 C3 Super Mini hoch
- Langen Druck testen: Drücken und halten Sie den Taster länger als eine Sekunde und lassen Sie ihn dann los
- Serial Monitor prüfen: Öffnen Sie den Serial Monitor mit 115200 Baud, um die Ergebnisse zu sehen
- Profi-Tipp: Diese Methode eignet sich am besten, wenn die Aktion nach dem Loslassen des Tasters erfolgen soll und nicht während des Drückens
ESP32 C3 Super Mini Code zur Erkennung eines langen Drucks während des Drückens
Dieser Code erkennt einen langen Druck sofort, während der Taster noch gedrückt gehalten wird.
Was dieser Code macht:
- Prüft die Druckdauer fortlaufend, während der Taster gehalten wird
- Erkennt einen langen Druck sofort, wenn die Dauer den Schwellenwert überschreitet
- Löst die Aktion sofort aus, ohne auf das Loslassen zu warten
- Ideal für Anwendungen, die eine Reaktion in Echtzeit erfordern
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Code hochladen: Laden Sie den obigen Code über die Arduino IDE auf Ihren ESP32 C3 Super Mini hoch
- Während des Drückens testen: Drücken und halten Sie den Taster mehrere Sekunden lang (nicht sofort loslassen)
- Zeitverhalten beobachten: Die Erkennung erfolgt, während Sie noch drücken
- Profi-Tipp: Diese Methode liefert sofortige Rückmeldung und eignet sich besser für zeitkritische Anwendungen wie das Zurücksetzen auf Werkseinstellungen
So erkennen Sie sowohl einen langen als auch einen kurzen Druck
Kombinieren Sie beide Druckarten, um einem einzigen Taster an Ihrem ESP32 C3 Super Mini mehrere Funktionen zuzuweisen.
Kurzer und langer Druck nach dem Loslassen
Dieser ESP32 C3 Super Mini Code erkennt beide Druckarten nach dem Loslassen des Tasters.
Was dieser Code macht:
- Unterscheidet anhand der Dauer zwischen kurzem und langem Druck
- Trifft die Entscheidung nach dem Loslassen des Tasters
- Verwendet einen einzigen Schwellenwert (LONG_PRESS_TIME) zur Unterscheidung
- Ermöglicht zwei verschiedene Aktionen mit einem Taster
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Code hochladen: Laden Sie den obigen Code über die Arduino IDE auf den ESP32 C3 Super Mini hoch
- Beide Arten testen: Probieren Sie sowohl einen langen Druck (>1 Sekunde halten) als auch einen kurzen Druck (kurzes Antippen) aus
- Serial Monitor prüfen: Öffnen Sie den Serial Monitor, um zu sehen, welche Druckart erkannt wird
- Profi-Tipp: Stellen Sie LONG_PRESS_TIME so ein, dass es dem erwarteten Verhalten Ihrer Benutzer entspricht (typischerweise funktionieren 500-1500ms gut)
※ Notiz:
Der Serial Monitor kann bei einem langen Druck mehrere erkannte kurze Drücke anzeigen. Dies ist das normale Verhalten des Tasters. Dieses Verhalten wird "Prellphänomen" genannt. Das Problem wird im letzten Teil dieses Tutorials gelöst.
Kurzer und langer Druck während des Drückens
Dieser Code erkennt einen langen Druck sofort und ermöglicht dennoch die Erkennung eines kurzen Drucks.
Was dieser Code macht:
- Erkennt einen langen Druck sofort, wenn der Schwellenwert erreicht ist
- Erkennt nach dem Loslassen weiterhin einen kurzen Druck, wenn kein langer Druck ausgelöst wurde
- Liefert sofortige Rückmeldung für Aktionen bei langem Druck
- Am besten für Anwendungen, die eine sofortige Reaktion benötigen
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Code hochladen: Laden Sie den Code über die Arduino IDE auf Ihren ESP32 C3 Super Mini hoch
- Zeitverhalten testen: Probieren Sie kurzes Antippen und langes Halten aus, um die unterschiedlichen Verhaltensweisen zu sehen
- Reaktion beobachten: Der lange Druck wird sofort ausgelöst, nicht erst beim Loslassen
- Profi-Tipp: Diese Methode verhindert versehentliches Auslösen eines langen Drucks, da Benutzer sofort eine Rückmeldung erhalten
Langer und kurzer Druck mit Entprellung
Die Entprellung beseitigt falsche Tasterablesungen, die durch mechanische Schwingungen in Drucktastern entstehen.
Warum Entprellung wichtig ist:
- Physische Taster erzeugen beim Drücken elektrisches Rauschen (Prellen)
- Ohne Entprellung kann ein Druck als mehrere Drücke registriert werden
- Entscheidend für eine zuverlässige Tastererkennung in ESP32 C3 Super Mini Projekten
- Unverzichtbar für Anwendungen, die präzise Eingaben erfordern
Verwendung der ezButton-Bibliothek:
- Vereinfacht die Umsetzung der Entprellung für Einsteiger
- Übernimmt komplexe Timing-Logik automatisch
- Funktioniert zuverlässig mit mehreren Tastern
- Kostenlos und einfach in der Arduino IDE zu installieren
Kurzer und langer Druck mit Entprellung nach dem Loslassen
Dieser ESP32 C3 Super Mini Code verwendet die ezButton-Bibliothek für eine saubere, zuverlässige Tastererkennung.
Was dieser Code macht:
- Implementiert die Entprellung mit der ezButton-Bibliothek
- Beseitigt Fehlerkennungen durch Tasterprellen
- Erkennt beide Druckarten nach dem Loslassen zuverlässig
- Bietet eine praxistaugliche Tasterverarbeitung
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Bibliothek installieren: Installieren Sie die ezButton-Bibliothek - siehe How To
- Code hochladen: Laden Sie den obigen Code über die Arduino IDE auf den ESP32 C3 Super Mini hoch
- Saubere Erkennung testen: Probieren Sie lange und kurze Drücke aus - keine doppelten Erkennungen mehr
- Ergebnisse prüfen: Öffnen Sie den Serial Monitor, um eine saubere, genaue Erkennung der Tastendrücke zu sehen
- Profi-Tipp: Die ezButton-Bibliothek beseitigt alle Prellprobleme automatisch - verwenden Sie sie für alle produktiven Projekte
Kurzer und langer Druck mit Entprellung während des Drückens
Dieser Code kombiniert die sofortige Erkennung eines langen Drucks mit Entprellung für die beste Benutzererfahrung.
Was dieser Code macht:
- Erkennt einen langen Druck sofort mit Entprellung
- Verhindert Fehlauslösungen durch Tasterprellen
- Liefert sofortige Rückmeldung bei langem Druck
- Verarbeitet einen kurzen Druck sauber nach dem Loslassen
Schnelle Schritte
- Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
- IDE einrichten: Wenn Sie den ESP32 C3 Super Mini zum ersten Mal verwenden, lesen Sie wie Sie die Umgebung für den ESP32 C3 Super Mini in der Arduino IDE einrichten
- Bibliothek installieren: Installieren Sie die ezButton-Bibliothek - siehe How To
- Code hochladen: Laden Sie den Code über die Arduino IDE auf Ihren ESP32 C3 Super Mini hoch
- Zuverlässigkeit testen: Drücken Sie den Taster mehrmals - es gibt keine doppelten Ablesungen
- Methoden vergleichen: Dies ist die zuverlässigste Methode für produktive ESP32 C3 Super Mini Projekte
- Profi-Tipp: Verwenden Sie diese Methode für kritische Anwendungen wie Geräte-Resets oder wichtige Steuerungen, bei denen Genauigkeit unerlässlich ist
Warum langer und kurzer Druck benötigt werden
Wenn Sie verstehen, wann Sie die Erkennung eines langen bzw. kurzen Drucks einsetzen, verbessern Sie Ihre ESP32 C3 Super Mini Projekte.
Praktische Vorteile:
- Pins sparen: Ein einziger Taster kann zwei oder mehr Funktionen steuern (kurzer Druck für Licht, langer Druck für Lüfter)
- Unfälle vermeiden: Verwenden Sie einen langen Druck für kritische Funktionen wie das Zurücksetzen auf Werkseinstellungen, um versehentliches Auslösen zu vermeiden
- Bessere Bedienung: Benutzer können mehrere Aktionen ohne zusätzliche Hardware ausführen
- Kosteneinsparungen: Weniger Taster bedeuten einfachere Schaltungen und geringere Bauteilkosten
- Platzsparend: Ideal für kompakte ESP32 C3 Super Mini Projekte mit begrenztem Platz
- Professionelles Design: Multifunktionstaster sind in der Unterhaltungselektronik Standard
Häufige Anwendungen:
- Kurzer Druck: LED umschalten, Zähler erhöhen, Menüpunkt auswählen
- Langer Druck: Werkseinstellungen wiederherstellen, ausschalten, Einrichtungsmodus aufrufen, Speicher löschen
Fordern Sie sich heraus
Bringen Sie Ihre ESP32 C3 Super Mini Taster-Kenntnisse mit diesen praktischen Herausforderungen auf die nächste Stufe.
- Einfach: Ändern Sie den Code so, dass andere Zeitschwellen verwendet werden (z. B. 300ms für kurz, 2000ms für lang)
- Einfach: Fügen Sie eine dritte Druckart hinzu - einen sehr kurzen Druck (unter 200ms) für schnelle Aktionen
- Mittel: Steuern Sie zwei LEDs mit einem Taster - ein kurzer Druck schaltet die rote LED um, ein langer Druck die grüne LED
- Mittel: Implementieren Sie zusätzlich zum kurzen und langen Druck eine Doppelklick-Erkennung
- Fortgeschritten: Erstellen Sie einen Erkenner für Tastersequenzen, der Muster (kurz-lang-kurz) erkennt
- Fortgeschritten: Bauen Sie ein ESP32 C3 Super Mini Gerät mit mehreren Modi, bei dem ein langer Druck durch die Modi schaltet und ein kurzer Druck den aktuellen Modus aktiviert
Anwendungsideen
Hier sind praktische Projektideen, die die Erkennung von langen und kurzen Tastendrücken mit dem ESP32 C3 Super Mini nutzen.
- Intelligente Lichtsteuerung für das Zuhause - kurzer Druck für Ein/Aus, langer Druck für den Dimmmodus
- ESP32 C3 Super Mini Alarmanlage - kurzer Druck zum Scharf-/Unscharfschalten, langer Druck für den Panikmodus
- Timer-Gerät - kurzer Druck zum Starten/Stoppen, langer Druck zum Zurücksetzen
- Multifunktions-Thermostat - kurzer Druck stellt die Temperatur ein, langer Druck wechselt zwischen Heiz- und Kühlmodus
- IoT-Türschloss - kurzer Druck zum vorübergehenden Entriegeln, langer Druck zum dauerhaften Entriegeln
- Batteriebetriebener Sensor - kurzer Druck zur Statusprüfung, langer Druck zum Wechsel in den Tiefschlafmodus
Video-Bereich
Sehen Sie sich das folgende Video an, um eine visuelle Anleitung zu diesem ESP32 C3 Super Mini Projekt mit langem und kurzem Tastendruck zu erhalten.