Arduino UNO R4 - Taster - LED

Dieses Tutorial zeigt dir, wie man den Arduino UNO R4 und einen Knopf verwendet, um eine LED zu steuern. Wir werden zwei verschiedene Möglichkeiten lernen, dies zu tun:

Anwendung 1 - Die LED folgt dem Zustand des Knopfes:

Anwendung 2 - Die LED ändert ihren Zustand jedes Mal, wenn der Knopf gedrückt wird:

Für Anwendung 2 müssen wir den Taster entprellen, um sicherzustellen, dass er korrekt funktioniert. Wir werden sehen, warum das wichtig ist, indem wir vergleichen, wie die LED sich im Arduino-Code mit und ohne Entprellung verhält.

Arduino UNO R4 Steuer-LED

Erforderliche Hardware

1×Arduino UNO R4 WiFi or Arduino UNO R4 Minima
1×Alternativ: DIYables STEM V4 IoT, Compatible with Arduino Uno R4 WiFi
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×Breadboard-Taster mit Kappe
1×Breadboard-Taster-Kit
1×Panel-Drucktaster
1×Taster-Modul
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Breadboard
1×Verbindungskabel
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno R4
1×(Empfohlen) Breadboard-Shield für Arduino Uno R4
1×(Empfohlen) Gehäuse für Arduino Uno R4
1×(Empfohlen) Stromverteiler für Arduino Uno R4
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V4 IoT Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

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 mit LED und Knopf (einschließlich Pinbelegung, Betrieb und Programmierung) nicht vertraut sind, können Ihnen die folgenden Tutorials helfen:

Verdrahtungsdiagramm

Arduino UNO R4 Button-LED-Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Siehe Der beste Weg, den Arduino Uno R4 und andere Komponenten mit Strom zu versorgen.

Anwendung 1 - Die LED folgt dem Zustand des Knopfes

Arduino UNO R4-Code

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-button-led */ #define BUTTON_PIN 7 // The Arduino UNO R4 pin connected to the button #define LED_PIN 3 // The Arduino UNO R4 pin connected to the LED void setup() { Serial.begin(9600); // initialize serial pinMode(BUTTON_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode } void loop() { int buttonState = digitalRead(BUTTON_PIN); // read new state if (buttonState == LOW) { Serial.println("The button is being pressed"); digitalWrite(LED_PIN, HIGH); // turn on } else if (buttonState == HIGH) { Serial.println("The button is unpressed"); digitalWrite(LED_PIN, LOW); // turn off } }

Schnelle Schritte

Folgen Sie diesen Anweisungen Schritt für Schritt:

  • Wenn dies das erste Mal ist, dass Sie den Arduino Uno R4 WiFi/Minima verwenden, lesen Sie das Tutorial zur Einrichtung der Umgebung für Arduino Uno R4 WiFi/Minima in der Arduino IDE.
  • Verbinden Sie die Komponenten gemäß dem bereitgestellten Diagramm.
  • Schließen Sie das Arduino Uno R4-Board mit einem USB-Kabel an Ihren Computer an.
  • Starten Sie die Arduino IDE auf Ihrem Computer.
  • Wählen Sie das passende Arduino Uno R4-Board (z. B. Arduino Uno R4 WiFi) und den COM-Port aus.
  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE.
  • Klicken Sie auf die Hochladen-Schaltfläche in der Arduino IDE, um den Code zu kompilieren und auf das Arduino UNO R4 hochzuladen.
Code in der Arduino IDE hochladen
  • Drücken Sie den Knopf und halten Sie ihn einige Sekunden lang gedrückt.
  • Überprüfen Sie die Veränderung des LED-Zustands.

Sie werden sehen, dass der LED-Status mit dem Tastenzustand synchronisiert ist.

Code-Erklärung

Schau dir die zeilenweise Erklärung an, die in den Kommentaren des Quellcodes enthalten ist!

Anwendung 2 - Die LED ändert ihren Zustand jedes Mal, wenn der Knopf gedrückt wird

Arduino UNO R4 Code - Knopf schaltet LED ohne Entprellung

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-button-led */ #define BUTTON_PIN 7 // The Arduino UNO R4 pin connected to the button #define LED_PIN 3 // The Arduino UNO R4 pin connected to the LED int led_state = LOW; // the current state of LED int button_state; // the current state of button int prev_button_state; // the previous state of button void setup() { Serial.begin(9600); // initialize serial pinMode(BUTTON_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode button_state = digitalRead(BUTTON_PIN); } void loop() { prev_button_state = button_state; // save the last state button_state = digitalRead(BUTTON_PIN); // read new state if(prev_button_state == HIGH && button_state == LOW) { Serial.println("The button is pressed"); // toggle state of LED led_state = !led_state; // control LED arccoding to the toggled state digitalWrite(LED_PIN, led_state); } }

Code-Erklärung

Sie können die Erklärung in den Kommentarzeilen des oben gezeigten Arduino UNO R4-Codes finden.

Im Code entspricht der Ausdruck led_state = !led_state dem folgenden Code:

if(led_state == LOW) led_state = HIGH; else led_state = LOW;

Schnelle Schritte

  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE.
  • Laden Sie den Code auf das Arduino UNO R4 hoch.
  • Drücken Sie Reset und den Knopf mehrmals.
  • Überprüfen Sie die Änderung des LED-Zustands.

Sie werden möglicherweise feststellen, dass sich die LED jedes Mal ändert, wenn Sie den Knopf drücken. Allerdings funktioniert dies nicht immer einwandfrei. Manchmal ändert sich die LED zu oft in kurzer Zeit, wenn Sie den Knopf einmal drücken, oder sie ändert sich überhaupt nicht (sie ändert sich zweimal sehr schnell, was schwer zu erkennen ist).

⇒ Um dieses Problem zu beheben, müssen wir den Taster entprellen.

Arduino UNO R4-Code - Taster schaltet LED mit Entprellung

Das Entprellen eines Tasters kann für Anfänger eine Herausforderung sein. Glücklicherweise macht die ezButton-Bibliothek das Entprellen einfach.

Warum ist Entprellen notwendig? Weitere Informationen finden Sie im Arduino UNO R4 - Button Debounce tutorial.

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-button-led */ #include <ezButton.h> #define BUTTON_PIN 7 // The Arduino UNO R4 pin connected to the button #define LED_PIN 3 // The Arduino UNO R4 pin connected to the LED ezButton button(BUTTON_PIN); // create ezButton object that attach to pin 7; int led_state = LOW; // the current state of LED void setup() { Serial.begin(9600); // initialize serial pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode button.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { button.loop(); // MUST call the loop() function first if(button.isPressed()) { Serial.println("The button is pressed"); // toggle state of LED led_state = !led_state; // control LED arccoding to the toggleed sate digitalWrite(LED_PIN, led_state); } }

Schnelle Schritte

  • Installieren Sie die ezButton-Bibliothek. Siehe ezButton library für Anweisungen.
  • Kopieren Sie den Code und öffnen Sie ihn mit der Arduino IDE.
  • Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino UNO R4 hochzuladen.
  • Drücken und loslassen Sie den Knopf mehrmals.
  • Beobachten Sie die Veränderung des LED-Zustands.

Sie werden feststellen, dass der Zustand der LED bei jedem Druck auf den Knopf genau einmal umgeschaltet wird.

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.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!