Arduino UNO R4 - LED dimmen

Dieses Tutorial zeigt dir, wie man den Arduino UNO R4 programmiert, um eine LED zu dimmen. Im Detail werden wir Folgendes lernen:

Arduino UNO R4 LED mit Fade-Effekt

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×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 LEDs

Pinbelegung

Die LED hat zwei Pins:

  • Kathoden(-) Pin: sollte mit GND (0 V) verbunden werden
  • Anode(+) Pin: wird verwendet, um den Zustand der LED zu steuern
LED-Pinbelegung

Wie es funktioniert

Nachdem die negative Seite (Kathode) mit dem Erdungspunkt (GND) verbunden wurde:

  • Wenn du die Masse (GND) mit der positiven Seite (Anode) der LED verbindest, geht sie aus.
  • Wenn du die Versorgungsspannung (VCC) an die positive Seite (Anode) der LED anschließt, geht sie an.
  • Wenn du ein Pulsweitenmodulationssignal (PWM) an die positive Seite (Anode) der LED sendest, kannst du die Helligkeit ändern. Der PWM-Wert kann zwischen 0 und 255 liegen. Ein höherer PWM-Wert macht die LED heller, und ein niedriger PWM-Wert macht sie dunkler.
    • Wenn der PWM-Wert 0 ist, verhält er sich wie eine Verbindung zu GND; die LED geht aus.
    • Wenn der PWM-Wert 255 ist, verhält er sich wie eine Verbindung zu VCC, sodass die LED vollständig eingeschaltet ist.
    Wie LEDs funktionieren

    ※ Notiz:

    Bei den meisten LEDs muss zwischen dem positiven Anschluss (Anode) und der Stromversorgung (VCC) ein Widerstand geschaltet werden. Der Widerstandswert variiert je nach LED-Spezifikation.

    Arduino UNO R4 - LED dimmen

    Wir können eine LED dimmen, indem wir einige der Pins des Arduino UNO R4 verwenden, die ein PWM-Signal erzeugen können. Zuerst verbinden Sie den positiven Pin (+) der LED mit einem der Pins des Arduino UNO R4. Dann verbinden Sie den negativen Pin (-) der LED mit dem Ground (GND). Anschließend können Sie den ausgewählten Arduino-Pin so konfigurieren, dass er ein PWM-Signal erzeugt.

Verdrahtungsdiagramm

Arduino UNO R4 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.

Wie man programmiert

  • Setzen Sie den Pin-Modus eines Arduino UNO R4 auf OUTPUT, indem Sie die Funktion pinMode() verwenden. Zum Beispiel für Pin 9:
pinMode(9, OUTPUT);
  • Passen Sie die LED-Helligkeit an, indem Sie die Funktion analogWrite() verwenden, um das entsprechende PWM-Signal zu erzeugen.
analogWrite(9, brightness);

Die Helligkeit kann von 0 bis 255 reichen.

Arduino UNO R4 Code - Fade-Beispiel aus der Arduino-IDE

/* * 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-fade-led */ #define LED_PIN 9 // The Arduino UNO R4 pin connected to the LED int brightness = 0; // how bright the LED is int fade_step = 5; // how many points to fade the LED by // the setup routine runs once when you press reset: void setup() { // declare pin 9 to be an output: pinMode(LED_PIN, OUTPUT); } // the loop routine runs over and over again forever: void loop() { // set the brightness of pin 9: analogWrite(LED_PIN, brightness); // change the brightness for next time through the loop: brightness = brightness + fade_step; // reverse the direction of the fading at the ends of the fade: if (brightness <= 0 || brightness >= 255) { fade_step = -fade_step; } // wait for 30 milliseconds to see the dimming effect delay(30); }

Schnelle Schritte

Folgen Sie diesen Anweisungen Schritt für Schritt:

  • Falls dies das erste Mal ist, dass Sie das 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.
  • Schließen Sie die LED gemäß dem bereitgestellten Diagramm an den Arduino Uno R4 an.
  • Verbinden Sie das Arduino Uno R4-Board über ein USB-Kabel mit Ihrem Computer.
  • Öffnen 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 obigen Code und fügen Sie ihn in die Arduino IDE ein.
  • Klicken Sie auf die Schaltfläche Upload in der Arduino IDE, um den Code auf den Arduino Uno R4 zu übertragen.
Arduino IDE Code hochladen
  • Schau, wie hell die LED ist.

Code-Erklärung

Die Erklärung befindet sich in den Kommentaren des oben gezeigten Arduino-Codes.

※ Notiz:

Im obigen Beispiel verwenden wir eine Funktion namens delay(), um das Licht langsam heller und dunkler zu machen. Allerdings sorgt die Verwendung von delay() dafür, dass die Lichtänderung weniger gleichmäßig verläuft und andere Teile des Programms während des Wartens nicht funktionieren. Im nächsten Teil werden wir lernen, wie man das Licht gleichmäßig ändern kann, ohne den Rest des Programms zu stoppen, indem man die Funktion millis() verwendet.

Wie man eine LED über einen Zeitraum allmählich ausblendet, ohne delay() zu verwenden

/* * 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-fade-led */ #define LED_PIN 9 // The Arduino UNO R4 pin connected to the LED #define FADE_PEDIOD 3000 // fade time is 3 seconds unsigned long fade_start_ms; // the setup routine runs once when you press reset void setup() { pinMode(LED_PIN, OUTPUT); // declare pin 9 to be an output fade_start_ms = millis(); } // fade-in in loop, and restart after finishing void loop() { unsigned long progress = millis() - fade_start_ms; if (progress <= FADE_PEDIOD) { long brightness = map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { fade_start_ms = millis(); // restart fade again } }

Wie man eine LED über einen Zeitraum ohne delay() einblendet

/* * 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-fade-led */ #define LED_PIN 9 // The Arduino UNO R4 pin connected to the LED #define FADE_PEDIOD 3000 // fade time is 3 seconds unsigned long fade_start_ms; // the setup routine runs once when you press reset void setup() { pinMode(LED_PIN, OUTPUT); // declare pin 9 to be an output fade_start_ms = millis(); } // fade-in in loop, and restart after finishing void loop() { unsigned long progress = millis() - fade_start_ms; if (progress <= FADE_PEDIOD) { long brightness = map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { fade_start_ms = millis(); // restart fade again } }

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.

Funktionsreferenzen

※ 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!