Talaan ng mga Nilalaman:

PWM Sa ESP32 - Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE: 6 Hakbang
PWM Sa ESP32 - Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE: 6 Hakbang

Video: PWM Sa ESP32 - Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE: 6 Hakbang

Video: PWM Sa ESP32 - Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE: 6 Hakbang
Video: How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code 2024, Nobyembre
Anonim
PWM Sa ESP32 | Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE
PWM Sa ESP32 | Dimming LED Sa PWM sa ESP 32 Sa Arduino IDE

Sa mga itinuturo na ito makikita natin kung paano makabuo ng mga signal ng PWM gamit ang ESP32 gamit ang Arduino IDE & PWM ay karaniwang ginagamit upang makabuo ng analog output mula sa anumang MCU at ang analog na output ay maaaring maging anumang bagay sa pagitan ng 0V hanggang 3.3V (sa kaso ng esp32) at mula 0V hanggang Ang 5V (sa kaso ng arduino uno) at ang mga signal ng PWM (analog output) ay ginagamit upang malabo (variable output, ilaw ng LED sa iba't ibang liwanag) ang LED.

Hakbang 1: Mga Bagay na Kailangan mo

Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo

Para sa tutorial na ito kakailanganin mo ang mga sumusunod na bagay: ESP32

220 ohm resistors

Pinangunahan ang kulay

breadboard

Ilang jumper

Hakbang 2: Pag-unawa sa PWM sa ESP32

Pag-unawa sa PWM sa ESP32
Pag-unawa sa PWM sa ESP32

Ang ESP32 ay may 16 Channel PWM controller at ang 16 na Channels na ito ay independiyente at maaaring mai-configure nang nakapag-iisa upang makakuha ng mga signal ng PWM na may iba't ibang mga katangian para sa iba't ibang mga kinakailangan. Bago dumaan sa code at lahat ng proseso na kailangan mong malaman ang mga sumusunod na bagay: >> may 16 (0 hanggang 15) pwm Mga Channel sa isang ESP32. Kailangan mong piliin ang iyong PWM channel. >> Pagkatapos nito kailangan naming piliin ang dalas para sa PWM, maaari kaming pumunta sa 5000hz. >> Narito mayroon kaming resolusyon na 1 hanggang 16bits sa ESP32 ngunit para sa tutorial na ito pupunta kami para sa 8 bit lamang na nangangahulugang ang ningning ay makokontrol ng mga halagang 0 hanggang 255. >> Kailangan mong i-setup ang LED para gawin ng PWM na kailangan mong gamitin ang sumusunod na linya ng code at kailangan mong banggitin tungkol sa ledchannel (gumagamit kami ng channel 0 ng ESP32) ginagamit mo para sa PWM & freq ay ang dalas (gumagamit kami ng 5000hz) ng PWM at resolusyon na iyong ginagamit (gumagamit kami ng 8bit na resolusyon).ledcSetup (ledChannel, freq, resolusyon); Mga halaga sa aming kaso: const int freq = 5000; Const int ledChannel = 0; Const int resolusyon = 8; >> pagkatapos ay banggitin kung aling LED pin ang kailangan mo sa pamamagitan ng paggamit ng sumusunod na utos: ledcAttachPin (ledPin, ledChannel); - narito ang ledPin ang pin no. Alin ang gagamitin namin & ledChannel ay ang channel na kailangan naming piliin para sa PWM.5. Sa wakas, upang makontrol ang ilaw ng LED gamit ang PWM, gagamitin mo ang sumusunod na pagpapaandar: >> ang pangunahing mahalagang bahagi ng code ay ang sumusunod na utos na magsusulat ng analog na output sa LED pin: ledcWrite (ledChannel, dutycycle); sa itaas na utos nangangailangan ng 'ledChannel' & 'dutyCycle' kung saan ang channel ay ang numero ng channel na gagamitin namin at ang cycle ng tungkulin ay ang halagang sinusulat namin bilang output sa LED pin.

Hakbang 3: Mga Koneksyon

Mga koneksyon
Mga koneksyon

Napakadali ng bahagi ng koneksyon. Kailangan mong ikonekta ang isang LED na may Resistor sa GPIO16 tulad ng ipinakita sa schmatics.

Hakbang 4: I-install ang mga ESP32 BOARDS sa Arduino IDE

I-install ang ESP32 BOARDS sa Arduino IDE
I-install ang ESP32 BOARDS sa Arduino IDE

Tiyaking mayroon kang Arduino IDE sa iyong PC at na-install mo ang mga ESP32 Boards sa iyong Arduino IDE, at kung hindi ito mangyaring sundin ang mga sumusunod na itinuro sa akin upang mai-install ito.:

Hakbang 5: Code

Code
Code

Mangyaring kopyahin ang sumusunod na code at i-upload ito sa iyong ESP32: // ang numero ng LED pinconst int ledPin = 16; // 16 ay tumutugma sa GPIO16 // setting PWM assetsconst int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup () {// configure LED PWM functionalitites ledcSetup (ledChannel, freq, resolusyon); // ikabit ang channel sa GPIO upang makontrol ang ledcAttachPin (ledPin, ledChannel);} void loop () {// taasan ang LED brightness para sa (int dutyCycle = 0; dutyCycle <= 255; dutyCycle ++) {// pagbabago ng LED ningning na may PWM ledcWrite (ledChannel, dutyCycle); pagkaantala (15); } // bawasan ang liwanag ng LED para sa (int dutyCycle = 255; dutyCycle> = 0; dutyCycle -) {// pagbabago ng LED brightness na may PWM ledcWrite (ledChannel, dutyCycle); pagkaantala (15); }}

Hakbang 6: Pagsubok sa Pag-andar ng PWM

Pagsubok sa PWM Functionality
Pagsubok sa PWM Functionality

Matapos ang pag-upload ng code makikita mo ang pagbabago ng tindi ng iyong mga LED upang maihatid kami sa dulo ng mga itinuturo na ito. Magsaya sa paggamit ng PWM sa ESP32 sa iyong mga proyekto.

Inirerekumendang: