Loading...
OUR BLOG

LED blinking kawal guna PWM

 

Dalam tutorial kali ini, anda akan mempelajari bagaimana PWM berfungsi yang mampu mengawal kadar terang, malap lampu LED dalam code anda. Saya akan terangkan sedikit mengenai PWM. Dekat board NodeMCU ESP8266 ni, pin PWM adalah bermula dari D1, D2, D3, …. D8.

PWM berfungsi untuk membolehkan kita mengawal analog device atau komponen melalui digital pin. Anda boleh search berkaitan PWM untuk mengetahui lebih terperinci mengenai frekuensi Pulse Width Modulation. 

 

Untuk tutorial ini, anda boleh ikuti langkah-langkah dibawah:

 

1. Sambungan litar

Sebelum memulakan sketch/code, sambungan litar perlu dibuat terlebih dahulu. Sambungan litar seperti berikut: 


 

Pastikan ground anda disambungkan pada ground breadboard.

 

2. Sambungkan NodeMCU ESP8266 pada USB komputer

USB yang digunakan untuk NodeMCU ESP8266 ini berbeza dengan Arduino UNO. Arduino UNO menggunakan USB cable jenis A/B, manakala NodeMCU ESP8266 menggunakan cable jenis Micro USB. 

Pastikan anda memilih NodeMCU board module, bergantung pada jenis board NodeMCU ESP8266 yang anda gunakan.

 

3. Sketch/code untuk LED blinking, kawal menggunakan PWM

 

Dalam langkah yang ke 3 ini, anda boleh taip atau copy code yang kami berikan. PWM boleh digunakan pada komponen potentiometer dan juga motor untuk kawal banyak lagi komponen lain. Tapi untuk tutorial ini, saya akan tunjukkan kecerahan nyalaan LED dikawal dengan hanya declare nilai PWM dalam code.

 

/**********************************************************************************/

void setup() {

  // masukkan code setup di sini  

  pinMode(D1, OUTPUT); //PWM pada LED HIJAU dan PIN D1 sebagai OUTPUT

  pinMode(D2, OUTPUT); //PWM pada LED KUNING dan PIN D2 sebagai OUTPUT

  pinMode(D3, OUTPUT); //PWM pada LED MERAH dan PIN D3 sebagai OUTPUT

    

}

 

/**********************************************************************************/

void loop() {

  // masukkan code utama disini

  analogWrite(D1, 100); //declare PWM PIN D1 dan nilai PWM 100 

                        //range yang digunakan antara 0~255

  delay(1000); //delay selama 1 saat (1000millisaat)

  analogWrite(D2, 200);//declare PWM PIN D2 dan nilai PWM 200 

                        //range yang digunakan antara 0~255

  delay(1000); //delay selama 1 saat (1000millisaat)

  analogWrite(D3, 240);//declare PWM PIN D3 dan nilai PWM 240 

                        //range yang digunakan antara 0~255

  delay(1000); //delay selama 1 saat (1000millisaat)

 

}

 

/**********************************************************************************/

 

 

 

 

 

Jangan lupa untuk follow Facebook dan Instagram kami untuk dapatkan banyak lagi info dan update projek menarik akan kami share kepada anda. Itu sahaja untuk tutorial ini.  Selamat mencuba!

 

 

 

 

 

 

 

 

Unsure Whether You Need Our Help?

Have you got an awesome new idea or project that you want to talk about? We're here to talk you through it. Flick us an email or give us a call to get started.