Indholdsfortegnelse:

PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin
PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin

Video: PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin

Video: PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin
Video: ESP32 Robotdyn AC dimmer 2024, November
Anonim
PWM Med ESP32 | Dæmpning LED med PWM på ESP 32 Med Arduino IDE
PWM Med ESP32 | Dæmpning LED med PWM på ESP 32 Med Arduino IDE

I denne instruktion vil vi se, hvordan man genererer PWM -signaler med ESP32 ved hjælp af Arduino IDE & PWM bruges dybest set til at generere analog output fra enhver MCU, og at analog output kan være alt mellem 0V til 3,3V (i tilfælde af esp32) og fra 0V til 5V (i tilfælde af arduino uno) og disse PWM -signaler (analog udgang) bruges til at dæmpe (variabel udgang, tænde LED'en med forskellig lysstyrke) LED'en.

Trin 1: Ting du har brug for

Ting du har brug for
Ting du har brug for
Ting du har brug for
Ting du har brug for
Ting du har brug for
Ting du har brug for

Til denne vejledning skal du bruge følgende ting: ESP32

220 ohm modstande

Farve LED

brødbræt

Få springere

Trin 2: Forståelse af PWM på ESP32

Forståelse af PWM på ESP32
Forståelse af PWM på ESP32

ESP32 har 16 -kanals PWM -controller, og disse 16 kanaler er uafhængige og kan konfigureres uafhængigt til at få PWM -signaler med forskellige egenskaber til forskellige krav. Inden du går gennem koden og hele processen, skal du vide følgende ting: >> der er 16 (0 til 15) pwm -kanaler i en ESP32. Du skal vælge din PWM -kanal. >> Efter dette skal vi vælge frekvensen for PWM, vi kan gå til 5000hz. >> Her har vi en opløsning på 1 til 16bits i ESP32, men til denne vejledning går vi kun til 8 bit hvilket betyder, at lysstyrken styres af værdierne 0 til 255. >> Du skal konfigurere LED'en til PWM for at gøre det, du skal bruge følgende kodelinje, og i det skal du nævne om ledkanalen (vi bruger kanal 0 af ESP32), du bruger til PWM & freq, er frekvensen (vi bruger 5000hz) af PWM og opløsning, du bruger (vi bruger 8bit opløsning).ledcSetup (ledChannel, freq, resolution); Værdier i vores tilfælde: const int freq = 5000; const int ledChannel = 0; const int resolution = 8; >> nævne derefter hvilken LED-pin du skal bruge ved hjælp af følgende kommando: ledcAttachPin (ledPin, ledChannel);- her er ledPin pin-nr. Som vi vil bruge & ledChannel er den kanal, vi skal vælge til PWM.5. Endelig, for at styre LED -lysstyrken ved hjælp af PWM, bruger du følgende funktion: >> den vigtigste vigtige del af koden vil være følgende kommando, der vil skrive den analoge udgang til LED -pin: ledcWrite (ledChannel, dutycycle); denne kommando ovenfor har brug for 'ledChannel' & 'dutyCycle', hvor kanalen er det kanalnummer, vi vil bruge, og duty cycle er den værdi, vi skriver som output til LED -pin.

Trin 3: Forbindelser

Forbindelser
Forbindelser

Tilslutningsdelen er meget let. Du skal tilslutte en LED med modstand til GPIO16 som vist i skematik.

Trin 4: Installer ESP32 BOARDS i Arduino IDE

Installer ESP32 BOARDS i Arduino IDE
Installer ESP32 BOARDS i Arduino IDE

Sørg for, at du har Arduino IDE på din pc, og at du har installeret ESP32 -plader i din Arduino IDE, og hvis det ikke er tilfældet, skal du følge min instruks nedenfor for at installere det.:

Trin 5: Kode

Kode
Kode

Kopier venligst følgende kode og upload den til din ESP32: // nummeret på LED pinconst int ledPin = 16; // 16 svarer til GPIO16 // indstilling af PWM propertiesconst int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup () {// konfigurer LED PWM functionalitites ledcSetup (ledChannel, freq, resolution); // vedhæft kanalen til GPIO, der skal kontrolleres ledcAttachPin (ledPin, ledChannel);} void loop () {// øg LED -lysstyrken for (int dutyCycle = 0; dutyCycle <= 255; dutyCycle ++) {// ændring af LED lysstyrke med PWM ledcWrite (ledChannel, dutyCycle); forsinkelse (15); } // reducer LED-lysstyrken for (int dutyCycle = 255; dutyCycle> = 0; dutyCycle-) {// ændring af LED-lysstyrken med PWM ledcWrite (ledChannel, dutyCycle); forsinkelse (15); }}

Trin 6: Test af PWM -funktionaliteten

Test af PWM -funktionalitet
Test af PWM -funktionalitet

Efter at have uploadet koden vil du se din LED -intensitet ændre sig, så det tager os til slutningen af denne instruks. Hav det sjovt at bruge PWM med ESP32 i dine projekter.

Anbefalede: