ESP32 C3 Super Mini - LED - Dimmen

Lernen Sie, wie Sie eine LED mit dem ESP32 C3 Super Mini über PWM-Steuerung dimmen. Dieses einsteigerfreundliche Tutorial zeigt Ihnen drei verschiedene Methoden für sanfte LED-Dimmeffekte, von einfachem delay-basiertem Code bis zu fortgeschrittenen, nicht blockierenden Techniken.

In diesem Tutorial lernen Sie:

ESP32 C3 Super Mini - LED - Dimmen

Erforderliche Hardware

1×ESP32 C3 Super Mini
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×(Alternativ) Button and LED Kit
1×220Ω Resistor
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss

Oder Sie können die folgenden Kits kaufen:

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.

Überblick über LED

Eine LED ist eine Leuchtdiode, die leuchtet, wenn elektrischer Strom in der richtigen Richtung hindurchfließt.

Wichtige Merkmale:

  • Zwei Pins: Anode (positiv, längeres Bein) und Kathode (negativ, kürzeres Bein)
  • Geringer Stromverbrauch und lange Lebensdauer
  • Die Helligkeit lässt sich über PWM-Signale steuern
  • Benötigt einen strombegrenzenden Widerstand (typischerweise 220 Ohm), um Schäden zu vermeiden
  • Betriebsspannung typischerweise 2-3V, abhängig von der LED-Farbe
  • Ideal für Einsteiger, die digitale Ausgänge und PWM-Steuerung kennenlernen

LED-Pinbelegung

Die LED hat eine einfache Zwei-Pin-Anordnung:

  • Kathoden-Pin (-): Diesen Pin mit GND (0V) verbinden - das ist das kürzere Bein mit der abgeflachten Kante am LED-Gehäuse
  • Anoden-Pin (+): Mit dem Ausgangspin des ESP32 C3 Super Mini verbinden, um den LED-Zustand zu steuern - das ist das längere Bein
LED-Pinbelegung

Wie eine LED funktioniert

Nachdem die Kathode (-) mit GND verbunden ist:

  • GND an der Anode (+): Die LED ist AUS (kein Spannungsunterschied)
  • VCC an der Anode (+): Die LED leuchtet mit voller Helligkeit (maximaler Stromfluss)
  • PWM-Signal an der Anode (+): Die LED-Helligkeit ändert sich proportional zum PWM-Tastverhältnis
    • Das PWM-Tastverhältnis reicht beim ESP32 C3 Super Mini von 0 bis 255
    • Tastverhältnis 0 = entspricht GND = LED AUS
    • Tastverhältnis 255 = entspricht VCC = LED mit maximaler Helligkeit
    • Tastverhältnis 127 = etwa 50 % Helligkeit
    • Der ESP32 schaltet den Pin sehr schnell EIN/AUS, um die durchschnittliche Helligkeit zu erzeugen
    Wie eine LED funktioniert

    ※ Notiz:

    Verwenden Sie immer einen Widerstand (typischerweise 220 Ohm) in Reihe mit der LED, um den Strom zu begrenzen und ein Durchbrennen zu verhindern. Der Widerstandswert hängt von der Spezifikation der LED und der Versorgungsspannung ab.

    ESP32 C3 Super Mini - LED dimmen

    Die digitalen Ausgangspins des ESP32 C3 Super Mini können PWM-Signale für sanfte LED-Dimmeffekte erzeugen.

    Wie das Dimmen einer LED mit dem ESP32 C3 Super Mini funktioniert:

    • Verbinden Sie die LED-Anode (+) mit einem beliebigen PWM-fähigen Pin des ESP32 C3 Super Mini (die meisten digitalen Pins unterstützen PWM)
    • Verbinden Sie die LED-Kathode (-) über einen 220-Ohm-Widerstand mit GND
    • Programmieren Sie den ESP32 C3 Super Mini so, dass er die Werte des PWM-Tastverhältnisses schrittweise ändert
    • Die LED-Helligkeit ändert sich sanft, während das Tastverhältnis von 0 bis 255 wechselt
    • Erzeugen Sie Einblendeffekte, indem Sie das Tastverhältnis mit der Zeit erhöhen
    • Erzeugen Sie Ausblendeffekte, indem Sie das Tastverhältnis mit der Zeit verringern

Schaltplan zwischen LED und ESP32 C3 Super Mini

Folgen Sie diesem Schaltplan, um Ihre LED zur Dimmsteuerung mit dem ESP32 C3 Super Mini zu verbinden:

  • Wichtig: Schalten Sie immer den 220-Ohm-Widerstand in Reihe mit der LED, um Schäden durch zu hohen Strom zu vermeiden
LED-Pin ESP32 C3 Super Mini Pin
Anode (+) (längeres Bein) D7 (über 220Ω-Widerstand)
Kathode (-) (kürzeres Bein) GND
ESP32 C3 Super Mini LED Schaltplan

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

Wie man programmiert

Das Programmieren des ESP32 C3 Super Mini zum Dimmen einer LED umfasst diese grundlegenden Schritte:

  • Pin konfigurieren: Legen Sie mit der Funktion pinMode() einen Pin des ESP32 C3 Super Mini als digitalen Ausgang fest (Beispiel mit Pin D7):
pinMode(D7, OUTPUT);
  • LED-Helligkeit festlegen: Erzeugen Sie mit der Funktion analogWrite() ein PWM-Signal mit dem gewünschten Tastverhältnis:
analogWrite(D7, brightness);

Dabei ist brightness ein Wert von 0 (komplett aus) bis 255 (maximale Helligkeit).

Was der Code macht:

  • Die Funktion pinMode() bereitet Pin D7 auf die Ausgabe von Signalen vor
  • Die Funktion analogWrite() erzeugt ein PWM-Signal mit einem Tastverhältnis, das dem Helligkeitswert entspricht
  • Das Ändern der Helligkeitswerte über die Zeit erzeugt den Dimmeffekt
  • Höhere Werte = hellere LED, niedrigere Werte = dunklere LED

ESP32 C3 Super Mini Code - Einfaches Dimm-Beispiel

Dieser Code zeigt das grundlegende Dimmen einer LED mit der Funktion delay():

Was dieser Code macht:

  • Erhöht die LED-Helligkeit schrittweise von 0 auf 255 (Einblenden)
  • Verringert die LED-Helligkeit schrittweise von 255 auf 0 (Ausblenden)
  • Verwendet delay(), um die Geschwindigkeit der Helligkeitsänderungen zu steuern
  • Wiederholt den Ein- und Ausblendzyklus fortlaufend

Schnelle Schritte

  • Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
  • Komponenten verdrahten: Folgen Sie dem obigen Schaltplan, um die LED über einen 220-Ohm-Widerstand mit Pin D7 zu verbinden
  • Platine anschließen: Verbinden Sie Ihren ESP32 C3 Super Mini über ein USB-Typ-C-Kabel mit Ihrem Computer
  • Arduino IDE öffnen: Starten Sie die Arduino IDE auf Ihrem Computer
  • Board und Port auswählen: Wählen Sie "ESP32 C3 Super Mini" als Board und den richtigen COM-Port aus
  • Code kopieren: Kopieren Sie den folgenden Code und fügen Sie ihn in einen neuen Arduino-IDE-Sketch ein
  • Code hochladen: Klicken Sie in der Arduino IDE auf die Schaltfläche Upload, um den Code zu kompilieren und auf Ihren ESP32 C3 Super Mini zu übertragen
  • Ergebnis beobachten: Beobachten Sie, wie die LED in einem fortlaufenden Zyklus sanft ein- und ausblendet
  • Profi-Tipp: Ändern Sie die Verzögerungswerte, um den Dimmeffekt zu beschleunigen oder zu verlangsamen, oder passen Sie die Helligkeitsschritte für ein sanfteres oder deutlicheres Dimmen an.
Code in der Arduino IDE hochladen
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini 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/esp32-c3/esp32-c3-super-mini-led-fade */ #define LED_PIN 7 // The ESP32 C3 SuperMini pin 7 connected to LED int brightness = 0; // how bright the LED is int fade_amount = 5; // how many points to fade the LED by // The setup function runs once on reset or power-up void setup() { // configure the Arduino Nano ESP32 pin as an output: pinMode(LED_PIN, OUTPUT); } // The loop function repeats indefinitely. void loop() { // set the brightness analogWrite(LED_PIN, brightness); // change the brightness for next time through the loop: brightness = brightness + fade_amount; // reverse the direction of the fading at the ends of the fade: if (brightness <= 0 || brightness >= 255) { fade_amount = -fade_amount; } // wait for 30 milliseconds to see the dimming effect delay(30); }

Zeilenweise Code-Erklärung

Der obige ESP32 C3 Super Mini Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!

※ Notiz:

Das obige Beispiel verwendet die Funktion delay() zum Ein- und Ausblenden. Die Funktion delay() macht das Dimmen der LED weniger gleichmäßig und blockiert während des Dimmens die Ausführung von anderem Code. In den nächsten Abschnitten lernen wir, wie man mit der Funktion millis() für eine nicht blockierende Zeitsteuerung sanft ein- und ausblendet, ohne anderen Code zu blockieren.

Wie man eine LED innerhalb eines Zeitraums ohne delay() einblendet

Dieser fortgeschrittene Code erzeugt mit millis() einen sanften Einblendeffekt mit nicht blockierender Zeitsteuerung:

Was dieser Code macht:

  • Blendet die LED innerhalb eines festgelegten Zeitraums von aus bis zur vollen Helligkeit ein
  • Verwendet millis(), um die Zeit zu verfolgen, ohne die Ausführung anderen Codes zu blockieren
  • Ermöglicht die gleichzeitige Ausführung anderer Aufgaben während des Dimmens
  • Bietet eine sanftere und präzisere Dimmsteuerung als delay()
  • Berechnet die Helligkeit automatisch anhand der verstrichenen Zeit
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini 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/esp32-c3/esp32-c3-super-mini-led-fade */ #define LED_PIN 7 // The ESP32 C3 SuperMini pin 7 connected to LED #define FADE_PEDIOD 3000 // fade time is 3 seconds unsigned long start_time; // The setup routine runs once when you press reset void setup() { pinMode(LED_PIN, OUTPUT); // configure the Arduino Nano ESP32 pin as an output start_time = millis(); } // fade-in in loop, and restart after finishing void loop() { unsigned long progress = millis() - start_time; if (progress <= FADE_PEDIOD) { long brightness = map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { start_time = millis(); // restart fade again } }

Wie man eine LED innerhalb eines Zeitraums ohne delay() ausblendet

Dieser Code zeigt sanfte Ausblendeffekte mit nicht blockierender Zeitsteuerung:

Was dieser Code macht:

  • Blendet die LED innerhalb einer festgelegten Dauer von voller Helligkeit bis aus aus
  • Verwendet millis() für eine nicht blockierende Zeitverfolgung
  • Ermöglicht Multitasking, während die LED gedimmt wird
  • Bietet präzise Kontrolle über Timing und Gleichmäßigkeit des Dimmens
  • Kann mit dem Einblend-Code zu vollständigen Dimmzyklen kombiniert werden
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini 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/esp32-c3/esp32-c3-super-mini-led-fade */ #define LED_PIN 7 // The ESP32 C3 SuperMini pin 7 connected to LED #define FADE_PEDIOD 3000 // fade time is 3 seconds unsigned long start_time; // The setup routine runs once when you press reset void setup() { pinMode(LED_PIN, OUTPUT); // configure the Arduino Nano ESP32 pin as an output start_time = millis(); } // fade-out in loop, and restart after finishing void loop() { unsigned long progress = millis() - start_time; if (progress <= FADE_PEDIOD) { long brightness = 255 - map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { start_time = millis(); // restart fade again } }

Anwendungen und Projektideen

Nutzen Sie LED-Dimmtechniken in diesen einsteigerfreundlichen ESP32 C3 Super Mini Projekten:

  • Atmendes Nachtlicht: Erstellen Sie ein beruhigendes Umgebungslicht, das sanft ein- und ausblendet
  • Statusanzeige: Zeigen Sie Gerätezustände mit unterschiedlichen Dimmgeschwindigkeiten an (langsames Dimmen = Standby, schnelles Dimmen = Verarbeitung)
  • Wecker: Erhöhen Sie die LED-Helligkeit schrittweise, um einen Sonnenaufgang für sanftes Aufwachen zu simulieren
  • Musik-Visualisierer: Synchronisieren Sie das Dimmen der LED mit einem Audioeingang für eine einfache, klangreaktive Beleuchtung
  • Smart-Home-Stimmungsbeleuchtung: Steuern Sie die LED-Helligkeit per Fernzugriff mit Dimmeffekten für eine angenehme Atmosphäre
  • Akkustandsanzeige: Stellen Sie die verbleibende Akkuladung über die Dimmgeschwindigkeit dar (langsam = voll, schnell = niedrig)

Video-Tutorial

Sehen Sie sich das folgende Video an, um eine visuelle Schritt-für-Schritt-Anleitung zu diesem Projekt zu erhalten.

Fordern Sie sich selbst heraus

Bringen Sie Ihre Fähigkeiten beim Dimmen von LEDs mit diesen Aufgaben auf die nächste Stufe:

  • Einfach: Ändern Sie die Dimmgeschwindigkeit, um einen langsamen, entspannenden Atemeffekt über 5 Sekunden zu erzeugen
  • Einfach: Ändern Sie den Code so, dass zwischen zwei verschiedenen Helligkeitsstufen statt zwischen 0 und 255 gedimmt wird
  • Mittel: Steuern Sie mehrere LEDs mit unterschiedlichen Dimmmustern gleichzeitig, ohne zu blockieren
  • Mittel: Fügen Sie einen Taster hinzu, um den Dimmeffekt zu starten/stoppen oder zwischen verschiedenen Dimmgeschwindigkeiten zu wechseln
  • Fortgeschritten: Erstellen Sie einen Regenbogen-Dimmeffekt mit RGB-LEDs und überlappenden Farbübergängen
  • Fortgeschritten: Implementieren Sie ein Dimmmuster, das auf Sensoreingaben reagiert (z. B. Lichtstärke oder Temperatur)

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