1. Arduino UNO
2. Resistor 220 ohm
3. LED
int led [ ] = {2, 3, 4, 5, 6, 7, 8, 9}; //mendeklarasikan pin 2-9 yang digunakan
void setup() //semua kode dalam fungsi ini hanya dibaca sekali
{
for (int i = 0; i <= 8; i++) //perulangan dari 0 dengan nilai batas kecil sama dengan 8; increase
{
pinMode (led[i], OUTPUT); //menyatakan pin yang dihubungkan ke LED sebagai OUTPUT
}
}
void loop(){ //Semua kode dalam fungsi ini dibaca berulang
for (int hidup = 0; hidup <= 8; hidup++) //Kondisi perulangan dari 0 dengan batas nilai 8 untuk menghidupkan LED
{
digitalWrite(led[hidup], HIGH); //LED diberi logika 1 sehingga LED menyala
delay(100); //Jarak waktu 100 ms antar LED yang akan menyala
}
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
for (int mati = 0; mati <= 8; mati++) //Kondisi perulangan dari 0 dengan batas nilai 8; untuk mematikan LED
{
digitalWrite(led[mati], LOW); //LED diberi logika 0 sehingga LED mati
delay(100); //Jarak waktu 100 ms antar LED yang akan mati
}
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
}
a.
Pada
listing program terdapat digitalWrite, jika diubah menjadi analogWrite apa yang
terjadi?
Jawab:
Jika pada
program diubah menjadi analogWrite maka LED akan hidup secara acak hal ini
dikarenakan perintah analogWrite berfungsi sebagai pembangkit pulsa (PWM).
Berbeda dengan digitalWrite yang berfungsi sebagai pembangkit sinyal digital
berupa 1 atau 0.
b.
Apa
yang terjadi jika delay(100) diubah menjadi delay(2000) pada rangkaian
percobaan serta apa kegunaan delay pada rangkaian tersebut?
Jawab:
Apabila
delay(100) diubah menjadi delay(2000) maka jeda antar kejadian akan menjadi
lebih lama, yang awalnya dibuat jeda 100ms sekarang menjadi 2s. Delay pada
rangkaian tersebut berguna untuk memberikan jeda untuk menghidupkan dan
mematikan led secara bergantian.
c.
Jelaskan
prinsip kerja rangkaian percobaan
Jawab:
Prinsip kerja
rangakaian ON/OFF led
Rangkaian
menggunakan arduino uno, 8 buah resistor 220ohm, dan 8 buah LED. 8 LED tersebut
dihubungkan ke pin 2, 3, 4, 5, 6, 7, 8, dan 9 pada arduino uno. Pada program
arduino diberikan perintah digitalWrite berupa HIGH/LOW dengan perulangan.
Ketika mendapat HIGH maka LED akan hidup dan ketika mendapat LOW maka LED akan
mati. Pada rangkaian ini diprogram LED akan hidup secara berurutan dari LED
pertama hingga LED kedelapan dengan jeda 100ms, lalu setelah semuanya hidup,
dengan jeda 100ms LED akan dimatikan juga secara berurutan dari LED pertama
hingga LED kedelapan dengan jeda 100ms. Proses ini akan terus berulang hingga
program dimatikan dikarenakan perintah ini diletakkan di bagian void loop().
Rangkaian simulasi disini.
Video simulasi disini.
Listing program disini.
HTML disini.
Tidak ada komentar:
Posting Komentar