Arduino Nano - Knopf - Entprellung
Wenn ein Knopf gedrückt oder losgelassen wird oder ein Schalter betätigt wird, gehen Neulinge oft davon aus, dass sich sein Zustand von LOW auf HIGH oder HIGH auf LOW ändert. In Wirklichkeit ist das nicht immer der Fall. Aufgrund mechanischer und physikalischer Eigenschaften kann der Zustand des Knopfes (oder Schalters) als Reaktion auf ein einziges Ereignis schnell zwischen LOW und HIGH mehrfach umgeschaltet werden. Dieses Phänomen wird als Prellen bezeichnet. Prellen kann dazu führen, dass ein einzelner Tastendruck als mehrere Tastendrücke erkannt werden, was in bestimmten Anwendungen zu Fehlfunktionen führt.

Die Methode zur Beseitigung dieses Problems wird als Debouncing oder Debounce bezeichnet. Diese Anleitung erklärt dir, wie du es beim Einsatz des Tasters mit dem Arduino Nano machst. Wir lernen anhand der folgenden Schritte:
- Arduino Nano-Code ohne Entprellung eines Tasters.
- Arduino Nano-Code mit Entprellung eines Tasters.
- Arduino Nano-Code mit Entprellung eines Tasters unter Verwendung der ezButton-Bibliothek.
- Arduino Nano-Code mit Entprellung für mehrere Taster.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Lassen Sie uns den Arduino Nano-Code sowohl mit als auch ohne Entprellung betrachten und vergleichen sowie die jeweiligen Verhaltensweisen.
Tasterauslesen mit Entprellung
Der folgende Code wendet die Debounce-Methode an, um das Prellen zu verhindern.
Schnelle Schritte
- Kopiere den Code oben und öffne ihn mit der Arduino IDE.
- Klicke auf den Hochladen-Knopf in der Arduino IDE, um den Code zu kompilieren und auf den Arduino Nano hochzuladen.
- Öffne den seriellen Monitor.
- Drücke den Knopf weiter einige Sekunden lang, und lasse ihn dann los.
- Sieh dir das Ergebnis im seriellen Monitor an.
Wie Sie beobachten können, haben Sie den Knopf nur einmal gedrückt und losgelassen. Der Arduino Nano erkennt es als einen einzigen Drück- und Loslassvorgang. Das Rauschen wird beseitigt.
Wir haben es einfach gemacht - Arduino Nano Entprellcode für Taster mit Bibliothek
Wir haben eine Bibliothek namens ezButton entwickelt, um es Anfängern, insbesondere beim Umgang mit mehreren Tastern, einfacher zu machen. Weitere Informationen zur ezButton-Bibliothek finden Sie hier.
Arduino Nano Entprellungscode für eine einzige Taste
Arduino Nano Tastenentprell-Code für mehrere Tasten
Die schematische Darstellung des obigen Codes: Die Abbildung der Verdrahtung des Codes: Die visuelle Darstellung der Verdrahtung des Codes:

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Siehe Der beste Weg, den Arduino Nano und andere Komponenten mit Strom zu versorgen.
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.
Zusätzliches Wissen
- Der Wert von DEBOUNCE_DELAY variiert je nach den physikalischen Eigenschaften jeder Taste. Es ist möglich, dass verschiedene Tasten unterschiedliche Werte verwenden.
Erweiterbarkeit
Die Entprelltechnik kann mit einem Schalter, einem Berührungssensor und mehr verwendet werden.