Daftar Isi:

PWM Dengan ESP32 - Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE: 6 Langkah
PWM Dengan ESP32 - Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE: 6 Langkah

Video: PWM Dengan ESP32 - Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE: 6 Langkah

Video: PWM Dengan ESP32 - Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE: 6 Langkah
Video: BELAJAR 24 PEMROGRAMAN ARDUINO - Cara Menggunakan PWM (Pulse Width Modulation) 2024, Juli
Anonim
PWM Dengan ESP32 | Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE
PWM Dengan ESP32 | Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE

Dalam instruksi ini kita akan melihat cara menghasilkan sinyal PWM dengan ESP32 menggunakan Arduino IDE & PWM pada dasarnya digunakan untuk menghasilkan output analog dari MCU apa pun dan output analog itu bisa berupa apa saja antara 0V hingga 3.3V (dalam kasus esp32) & dari 0V ke 5V (dalam kasus arduino uno) dan sinyal PWM ini (output analog) digunakan untuk meredupkan (output variabel, menyalakan LED pada kecerahan berbeda) LED.

Langkah 1: Hal-hal yang Anda Butuhkan

Hal yang Anda Butuhkan
Hal yang Anda Butuhkan
Hal yang Anda Butuhkan
Hal yang Anda Butuhkan
Hal yang Anda Butuhkan
Hal yang Anda Butuhkan

Untuk tutorial ini Anda memerlukan hal-hal berikut: ESP32

resistor 220 ohm

dipimpin warna

papan tempat memotong roti

Beberapa jumper

Langkah 2: Memahami PWM di ESP32

Memahami PWM pada ESP32
Memahami PWM pada ESP32

ESP32 memiliki 16 Channel PWM controller dan 16 Channel ini independen dan dapat dikonfigurasi secara independen untuk mendapatkan sinyal PWM dengan properti yang berbeda untuk kebutuhan yang berbeda. Sebelum melalui kode & semua proses Anda perlu mengetahui hal-hal berikut: >> ada 16 (0 hingga 15) Saluran pwm dalam ESP32. Anda harus memilih saluran PWM Anda.>>Setelah ini kita perlu memilih frekuensi untuk PWM, kita bisa menggunakan 5000hz.>>Di sini kita memiliki resolusi 1 hingga 16bit di ESP32 tetapi untuk tutorial ini kita hanya akan menggunakan 8 bit yang berarti kecerahan akan dikontrol oleh nilai 0 hingga 255.>>Anda perlu mengatur LED untuk PWM untuk melakukan itu Anda perlu menggunakan baris kode berikut dan di dalamnya Anda perlu menyebutkan tentang saluran led (kami menggunakan saluran 0 dari ESP32) yang Anda gunakan untuk PWM & freq adalah frekuensi (kami menggunakan 5000hz) dari PWM & resolusi yang Anda gunakan (kami menggunakan resolusi 8bit). ledcSetup(ledChannel, freq, resolusi);Nilai dalam kasus kami: const int freq = 5000; const int ledSaluran = 0; const int resolution = 8;>>lalu sebutkan pin LED yang Anda butuhkan dengan menggunakan perintah berikut: ledcAttachPin(ledPin, ledChannel);- disini ledPin adalah pin no. Yang akan kita gunakan & ledChannel adalah channel yang harus kita pilih untuk PWM.5. Terakhir, untuk mengontrol kecerahan LED menggunakan PWM, Anda menggunakan fungsi berikut:>>bagian penting utama dari kode adalah perintah berikut yang akan menulis output analog ke pin LED: ledcWrite(ledChannel, dutycycle);perintah di atas membutuhkan 'ledChannel' & 'dutyCycle' di mana saluran adalah nomor saluran yang akan kita gunakan dan siklus tugas adalah nilai yang kita tulis sebagai output ke pin LED.

Langkah 3: Koneksi

Koneksi
Koneksi

Bagian koneksi sangat mudah. Anda perlu menghubungkan LED dengan Resistor ke GPIO16 seperti yang ditunjukkan pada skema.

Langkah 4: Instal PAPAN ESP32 di Arduino IDE

Instal PAPAN ESP32 di Arduino IDE
Instal PAPAN ESP32 di Arduino IDE

Pastikan Anda memiliki Arduino IDE di PC Anda dan Anda menginstal Papan ESP32 di Arduino IDE Anda, dan jika tidak, ikuti instruksi saya berikut untuk menginstalnya.:

Langkah 5: Kode

Kode
Kode

Silakan salin kode berikut dan unggah ke ESP32 Anda: // jumlah pinconst LED int ledPin = 16; // 16 sesuai dengan GPIO16// pengaturan PWM propertiesconst int freq = 5000;const int ledChannel = 0;const int resolution = 8;void setup(){ // mengkonfigurasi fungsi LED PWM ledcSetup(ledChannel, freq, resolusi); // pasang saluran ke GPIO yang akan dikontrol ledcAttachPin(ledPin, ledChannel);}void loop(){ // meningkatkan kecerahan LED untuk(int dutyCycle = 0; dutyCycle <= 255; dutyCycle++){ // mengubah LED kecerahan dengan PWM ledcWrite (ledChannel, dutyCycle); penundaan (15); } // mengurangi kecerahan LED untuk(int dutyCycle = 255; dutyCycle >= 0; dutyCycle--){ // mengubah kecerahan LED dengan PWM ledcWrite(ledChannel, dutyCycle); penundaan (15); }}

Langkah 6: Menguji Fungsionalitas PWM

Menguji Fungsionalitas PWM
Menguji Fungsionalitas PWM

Setelah mengunggah kode, Anda akan melihat intensitas LED Anda berubah sehingga membawa kita ke akhir instruksi ini. Bersenang-senang menggunakan PWM dengan ESP32 di proyek Anda.

Direkomendasikan: