Inhaltsverzeichnis:

PWM mit ESP32 - LED mit PWM auf ESP 32 mit Arduino IDE dimmen - Gunook
PWM mit ESP32 - LED mit PWM auf ESP 32 mit Arduino IDE dimmen - Gunook

Video: PWM mit ESP32 - LED mit PWM auf ESP 32 mit Arduino IDE dimmen - Gunook

Video: PWM mit ESP32 - LED mit PWM auf ESP 32 mit Arduino IDE dimmen - Gunook
Video: 01 LED fading by PWM with ESP32 (Arduino IDE) 2024, Juli
Anonim
PWM mit ESP32 | Dimmen der LED mit PWM auf ESP 32 mit Arduino IDE
PWM mit ESP32 | Dimmen der LED mit PWM auf ESP 32 mit Arduino IDE

In diesen Anleitungen werden wir sehen, wie man PWM-Signale mit ESP32 mit Arduino IDE & PWM erzeugt 5V (bei arduino uno) und diese PWM-Signale (analoger Ausgang) werden verwendet, um die LED zu dimmen (variabler Ausgang, Beleuchtung der LED mit unterschiedlicher Helligkeit).

Schritt 1: Dinge, die Sie brauchen

Dinge, die du brauchst
Dinge, die du brauchst
Dinge, die du brauchst
Dinge, die du brauchst
Dinge, die du brauchst
Dinge, die du brauchst

Für dieses Tutorial benötigen Sie folgende Dinge: ESP32

220 Ohm Widerstände

Farbe LED

Steckbrett

Ein paar Jumper

Schritt 2: Verständnis der PWM auf ESP32

Verständnis der PWM auf ESP32
Verständnis der PWM auf ESP32

ESP32 verfügt über einen 16-Kanal-PWM-Controller und diese 16 Kanäle sind unabhängig und können unabhängig voneinander konfiguriert werden, um PWM-Signale mit unterschiedlichen Eigenschaften für unterschiedliche Anforderungen zu erhalten. Bevor Sie den Code und den gesamten Prozess durchlaufen, müssen Sie folgende Dinge wissen: >> Es gibt 16 (0 bis 15) PWM-Kanäle in einem ESP32. Sie müssen Ihren PWM-Kanal auswählen. >> Danach müssen wir die Frequenz für PWM auswählen, wir können 5000 Hz verwenden. >> Hier haben wir eine Auflösung von 1 bis 16 Bit in ESP32, aber für dieses Tutorial werden wir nur 8 Bit verwenden was bedeutet, dass die Helligkeit durch die Werte 0 bis 255 gesteuert wird. >> Sie müssen die LED für PWM einrichten, um dies zu tun, müssen Sie die folgende Codezeile verwenden und dabei den LED-Kanal erwähnen (wir verwenden Kanal 0 von ESP32), die Sie für PWM & Freq verwenden, ist die Frequenz (wir verwenden 5000 Hz) von PWM & Auflösung, die Sie verwenden (wir verwenden eine 8-Bit-Auflösung).ledcSetup(ledChannel, freq, resolution);Werte in unserem Fall: const int freq = 5000; const int ledChannel = 0; const int resolution = 8; >> dann erwähnen Sie, welchen LED-Pin Sie benötigen, indem Sie den folgenden Befehl verwenden: ledcAttachPin(ledPin, ledChannel);- hier ist ledPin die Pin-Nr. Was wir verwenden werden & ledChannel ist der Kanal, den wir für PWM.5 auswählen müssen. Um die LED-Helligkeit mit PWM zu steuern, verwenden Sie schließlich die folgende Funktion: >> Der wichtigste Teil des Codes ist der folgende Befehl, der den analogen Ausgang auf den LED-Pin schreibt: ledcWrite (ledChannel, Dutycycle); dieser obige Befehl benötigt 'ledChannel' & 'dutyCycle' wobei channel die Kanalnummer ist, die wir verwenden werden und Duty Cycle der Wert ist, den wir als Ausgang auf den LED-Pin schreiben.

Schritt 3: Verbindungen

Anschlüsse
Anschlüsse

Der Anschlussteil ist sehr einfach. Sie müssen eine LED mit Widerstand an GPIO16 anschließen, wie im Schema gezeigt.

Schritt 4: ESP32 BOARDS in Arduino IDE installieren

Installieren Sie ESP32 BOARDS in der Arduino IDE
Installieren Sie ESP32 BOARDS in der Arduino IDE

Stellen Sie sicher, dass Sie Arduino IDE in Ihrem PC haben und ESP32 Boards in Ihrer Arduino IDE installiert haben, und wenn dies nicht der Fall ist, folgen Sie bitte den folgenden Anweisungen von mir, um sie zu installieren.:

Schritt 5: Code

Code
Code

Bitte kopieren Sie den folgenden Code und laden Sie ihn auf Ihren ESP32 hoch: // die Nummer der LED pinconst int ledPin = 16; // 16 entspricht GPIO16 // Einstellung der PWM-Eigenschaftenconst int freq = 5000;const int ledChannel = 0;const int resolution = 8;void setup () { // LED PWM-Funktionalitäten konfigurieren ledcSetup (ledChannel, freq, resolution); // den Kanal an den zu steuernden GPIO anhängen ledcAttachPin(ledPin, ledChannel);}void loop(){ // die LED-Helligkeit erhöhen for(int dutyCycle = 0; dutyCycle <= 255; dutyCycle++) {// die LED ändern Helligkeit mit PWM ledcWrite(ledChannel, DutyCycle); Verzögerung(15); } // LED-Helligkeit verringern for(int dutyCycle = 255; dutyCycle >= 0; dutyCycle--) {// ändern der LED-Helligkeit mit PWM ledcWrite (ledChannel, dutyCycle); Verzögerung(15); }}

Schritt 6: Testen der PWM-Funktionalität

Testen der PWM-Funktionalität
Testen der PWM-Funktionalität

Nach dem Hochladen des Codes sehen Sie, wie sich Ihre LED-Intensität ändert, so dass wir zum Ende dieser Anleitung gelangen. Viel Spaß mit PWM mit ESP32 in Ihren Projekten.

Empfohlen: