Program Arduino: Fade Analogwrite!

Seperti kebanyakan microcontroller, Arduino tidak mempunyai analog output. Tapi Arduino mempunyai kelebihan pin digital PWM (pulse width modulation), apa bahwasanya PWM ini?






Secara sederhana PWM menciptakan pin digital Arduino dapat mengeluarkan Output Analog dari 0-255. Dengan begini kita dapat mengendalikan tingkat keterangan pada lampu LED, mengatur volume bunyi speaker, sampai mengatur kecepatan Motor DC.



Tapi tidak semua pin digital pada Arduino termasuk PWM. Hanya pin 3,5,6,9,10, dan 11 saja. Dan kita dapat gunakan pin PWM ini dengan perintah analogWrite.


Sebelum mencoba pemrograman analogWrite, pastikan kau sudah menyiapkan:


1x Arduino

1x Breadboard

1x LED

1x Resistor 220 Ohm

2x Kabel Jumper


Selanjutnya buatlah rangkaian menyerupai pada gambar dibawah ini:



Lalu untuk mencoba memprogram, silahkan gunakan sketch dibawah ini:





void setup() {

pinMode(9, OUTPUT);

}


void loop() {

analogWrite(9, 255);  //led menyala terang

delay(500);

analogWrite(9, 100);  //led menyala sedang

delay(500);

analogWrite(9, 0); //led tidak menyala

delay(500);

}




Sedikit Catatan: untuk menggantikan HIGH dan LOW yang biasa dipakai pada digitalWrite, kau gunakan angka 0-255. Dimana 0 untuk nilai paling gelap dan 255 nilai paing terang.


Selanjutnya kita akan mencoba menciptakan lampu LED terperinci redup seakan-akan luntur (fade). Untuk sketchnya kau dapat buka di FILE => EXAMPLE => BASIC => FADE.


Atau salin ulang sketch dibawah ini:


int led= 9;

int brightness= 0;  //variabel untuk kecerahan led

int fade= 5;  //variabel untuk jumlah luntur dalam satu waktu

void setup()

{

pinMode(led,OUTPUT);

}

void loop()

{

 analogWrite(led, brightness); //menyalakan led sesuai dengan tingkat terperinci dari brightness

brightness= brightness +fade; //merubah terperinci led selanjutnya

if (brightness == 0 || brightness == 255)  // mengembalikan cahaya led kembali terang

{

fade = -fade;

}

delay(30);

}





NOTES:



  • int brightness= 0; variabel yang dipakai untuk tingkat keterangan.

  • int fade= 5; jumlah fade yang berubah dalam satu waktu.

  • analogWrite(led, brightness); dipakai untuk menyalakan LED sesuai dengan nilai terperinci dari variabel brightness.

  • brightness= brightness +fade; dipakai untuk merubah tingkat terperinci led untuk waktu selanjutnya.

  • if (brightness == 0 || brightness == 255) dipakai untuk mengembalikan cahaya led kembali terperinci ketika hampir menjadi gelap.



Komentar

Postingan populer dari blog ini

Apa Itu Arduino? Arduino Adalah…

Jenis-Jenis Robot Beroda

Cara Gampang Memprogram Dfplayer Mini Mp3 Module Dengan Arduino