Arduino - LED - Blinken ohne Verzögerung
Stellen wir uns vor, Arduino müsste zwei Aufgaben erledigen: das Blinken der LED und das Prüfen des Zustands der Taste, die jederzeit gedrückt werden kann. Wenn wir die delay() Funktion verwenden (wie in einem vorherigen Tutorial beschrieben), könnte Arduino einige der Tastendrücke verpassen. Mit anderen Worten kann Arduino die zweite Aufgabe nicht vollständig erfüllen.
In diesem Tutorial lernen wir, wie Arduino eine LED blinkt und den Zustand des Knopfs überprüft, ohne einen Tastendruck zu verpassen.
Wir werden drei untenstehende Beispiele durchgehen und den Unterschied zwischen ihnen vergleichen.
- Arduino blinkt LED mithilfe der delay()-Funktion
- Arduino blinkt LED mithilfe der millis()-Funktion
- Arduino blinkt LED mithilfe der ezLED-Bibliothek
※ Notiz:
- Diese Methode dient nicht nur dem Blinken der LED und der Überprüfung des Zustands des Tasters. Im Allgemeinen ermöglicht diese Methode dem Arduino, mehrere Aufgaben gleichzeitig auszuführen, ohne sich gegenseitig zu blockieren.
- Dieses Tutorial bietet vertiefte Kenntnisse, die Ihnen helfen, das Funktionsprinzip zu verstehen. Um es einfacher zu machen, können Sie Arduino - LED-Bibliothek verwenden.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables STEM V3 Starter-Kit (Arduino 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
Wenn Sie nichts über LED und Taster wissen (Pinbelegung, wie sie funktionieren, wie man programmiert ...), informieren Sie sich in den folgenden Tutorials darüber:
Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Arduino-Code - Mit Verzögerung
Schnelle Schritte
- Verbinde Arduino über ein USB-Kabel mit dem PC.
- Öffne die Arduino IDE, wähle das richtige Board und den richtigen Port aus.
- Kopiere den obigen Code und öffne ihn in der Arduino IDE.
- Klicke auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf Arduino hochzuladen.

- Seriellen Monitor öffnen
- Drücke den Knopf viermal
- Sieh die LED: Die LED wechselt jede Sekunde zwischen EIN und AUS
- Sieh die Ausgabe im seriellen Monitor
- Im Serial Monitor wurden einige Drückvorgänge verpasst. Das liegt daran, dass während der Verzögerungszeit der Arduino nichts tun kann. Daher kann es das Drücken eines Knopfes nicht erkennen.
Arduino-Code - Ohne Verzögerung
Schnelle Schritte
- Führe den obigen Code aus und drücke den Knopf viermal
- Sieh dir die LED an: Die LED wechselt periodisch jede Sekunde zwischen EIN und AUS
- Sieh dir die Ausgabe im seriellen Monitor an
- Alle dringenden Ereignisse wurden erkannt.
Code-Erklärung
Sie finden die Erklärung in den Kommentaren des oben gezeigten Arduino-Codes.
Weitere Aufgaben hinzufügen
Der untenstehende Code blinkt zwei LEDs mit unterschiedlichen Intervallen und überprüft den Zustand des Tasters.
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.
Erweiterbarkeit
Diese Methode ermöglicht es dem Arduino, mehrere Aufgaben gleichzeitig auszuführen, ohne dass sie sich gegenseitig blockieren. Zum Beispiel das Senden einer Anfrage an das Internet und das Warten auf die Antwort; während des Wartens auf die Antwort blinken einige LED-Indikatoren und der Abbruchknopf wird überwacht.