ESP32 - LED - Blinken ohne Verzögerung
Eines der ersten Programme, das Anfänger ausführen, ist das Blinken einer LED. Der einfachste Weg, eine LED blinken zu lassen, besteht darin, die delay()-Funktion zu verwenden. Diese Funktion blockiert den ESP32 daran, andere Dinge zu tun. Es ist in Ordnung, wenn du nur eine einzige LED blinken lassen möchtest. Wenn du jedoch mehrere LEDs blinken lassen möchtest oder parallel andere Aufgaben erledigen willst, kannst du die delay()-Funktion nicht verwenden. Wir brauchen eine andere Lösung. Dieses Tutorial zeigt dir, wie man mehrere Aufgaben ohne die Delay-Funktion ausführt. Genauer gesagt lernen wir, wie man eine LED blinken lässt und wie der Zustand des Buttons geprüft wird.
Wir werden drei unten aufgeführten Beispiele durchgehen und die Unterschiede zwischen ihnen vergleichen.
- ESP32 blinkt LED mithilfe der Funktion delay()
- ESP32 blinkt LED mithilfe der Funktion millis()
- ESP32 blinkt LED mithilfe der Bibliothek ezLED
Diese Methode kann angewendet werden, damit der ESP32 mehrere Aufgaben gleichzeitig ausführen kann. Das Blinken einer LED ist nur ein Beispiel.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Kaufhinweis: Um den Verdrahtungsprozess zu vereinfachen, empfehlen wir die Verwendung des LED Module, das mit einem eingebauten Widerstand geliefert wird.
Über LED und Taster
Wir haben spezifische Tutorials zu LED und Taster. Jedes Tutorial enthält detaillierte Informationen und Schritt-für-Schritt-Anleitungen zur Hardware-Pinbelegung, Funktionsweise, Verkabelung mit dem ESP32, ESP32-Code... Erfahren Sie mehr darüber unter den folgenden Links:
Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.
Lass uns den ESP32-Code vergleichen, der die LED blinken lässt, mit und ohne Verwendung der delay()-Funktion.
ESP32-Code - Mit Verzögerung
Schnelle Schritte
- Wenn Sie ESP32 zum ersten Mal verwenden, lesen Sie wie man die Umgebung für ESP32 in der Arduino IDE einrichtet.
- Verkabeln Sie die Anschlüsse gemäß dem obigen Bild.
- Verbinden Sie das ESP32-Board mit Ihrem PC über ein Micro-USB-Kabel.
- Öffnen Sie die Arduino IDE auf Ihrem PC.
- Wählen Sie das richtige ESP32-Board (z. B. ESP32 Dev Module) und den COM-Port aus.
- Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
- Kompilieren und laden Sie den Code auf das ESP32-Board hoch, indem Sie in der Arduino IDE auf die Schaltfläche Upload klicken.

- Öffnen Sie den seriellen Monitor in der Arduino-IDE.

- Drücke den Knopf viermal
- Sieh die LED: Die LED wechselt regelmäßig jede Sekunde zwischen EIN und AUS
- Sieh die Ausgabe im seriellen Monitor
- Im Serial Monitor werden Sie nicht viermal beobachten, dass der Zustand auf 0 wechselt (4 Tastendrücke). Das liegt daran, dass der ESP32 während der Verzögerungszeit die Veränderung nicht erkennen kann.
ESP32 Code - Ohne Verzögerung
Schnelle Schritte
- Wenn Sie ESP32 zum ersten Mal verwenden, sehen Sie wie man die Umgebung für ESP32 in der Arduino IDE einrichtet.
- Führen Sie den obigen Code aus und drücken Sie den Knopf viermal
- Sehen Sie die LED: Die LED wechselt jede Sekunde zwischen AN und AUS
- Sehen Sie die Ausgabe im seriellen Monitor
- Alle dringenden Ereignisse wurden erkannt.
Zeilenweise Code-Erklärung
Der obige ESP32-Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!
Weitere Aufgaben hinzufügen
Der unten stehende Code blinkt zwei LEDs mit unterschiedlichen Intervallen und überprüft den Zustand des Tasters.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
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.