Daftar Isi:
- Langkah 1: Hal-hal yang Anda Butuhkan
- Langkah 2: Memahami PWM di ESP32
- Langkah 3: Koneksi
- Langkah 4: Instal PAPAN ESP32 di Arduino IDE
- Langkah 5: Kode
- Langkah 6: Menguji Fungsionalitas PWM
Video: PWM Dengan ESP32 - Peredupan LED Dengan PWM pada ESP 32 Dengan Arduino IDE: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
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
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
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
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
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
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
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:
Monitor Cuaca M5Stack M5stick C Berbasis ESP32 Dengan DHT11 - Pantau Suhu Kelembaban & Indeks Panas pada M5stick-C Dengan DHT11: 6 Langkah
Monitor Cuaca M5Stack M5stick C Berbasis ESP32 Dengan DHT11 | Memantau Suhu Kelembaban & Indeks Panas pada M5stick-C Dengan DHT11: Hai teman-teman, dalam instruksi ini kita akan belajar bagaimana menghubungkan sensor suhu DHT11 dengan m5stick-C (papan pengembangan oleh m5stack) dan menampilkannya di layar m5stick-C. Jadi dalam tutorial ini kita akan membaca suhu, kelembaban & panas aku
Memulai Dengan ESP32 - Memasang Board ESP32 di Arduino IDE - Kode Blink ESP32: 3 Langkah
Memulai Dengan ESP32 | Memasang Board ESP32 di Arduino IDE | Kode Blink ESP32: Dalam instruksi ini kita akan melihat cara mulai bekerja dengan esp32 dan cara memasang papan esp32 ke Arduino IDE dan kami akan memprogram esp 32 untuk menjalankan kode blink menggunakan arduino ide
Memulai Dengan Esp 8266 Esp-01 Dengan Arduino IDE - Memasang Papan Esp di Arduino Ide dan Pemrograman Esp: 4 Langkah
Memulai Dengan Esp 8266 Esp-01 Dengan Arduino IDE | Memasang Papan Esp di Ide dan Pemrograman Arduino Esp: Dalam instruksi ini kita akan belajar cara memasang papan esp8266 di Arduino IDE dan cara memprogram esp-01 dan mengunggah kode di dalamnya. ini dan kebanyakan orang menghadapi masalah
LCD I2C pada NodeMCU V2 Dengan Arduino IDE: 3 Langkah
LCD I2C pada NodeMCU V2 Dengan Arduino IDE: Dalam instruksi singkat ini saya akan menunjukkan cara makan siang LCD dengan Adaptor Serial I2C pada NodeMCU v2 menggunakan ArduinoIDE dan perpustakaan yang tersedia
Memutar Lagu (MP3) Dengan Arduino Menggunakan PWM pada Speaker atau Flyback Transformer: 6 Langkah (dengan Gambar)
Memutar Lagu (MP3) Dengan Arduino Menggunakan PWM di Speaker atau Flyback Transformer: Halo Guys, Ini adalah instruksi pertama saya, saya harap Anda menyukainya!! Pada dasarnya, Dalam Proyek ini saya telah menggunakan Komunikasi Serial antara Arduino dan Laptop saya, untuk mengirimkan data musik dari laptop saya ke Arduino. Dan menggunakan TIMER Arduino untuk