Modul 1, Percobaan 1, Nomor 16
Hidupkan LED seluruhnya, lalu mati bergantian dari kanan ke kiri
2. Rangkaian Simulasi
[Kembali]
int led [ ] = {2, 3, 4, 5, 6, 7, 8, 9};
void setup()
{
for (int i = 0; i < 8; i++)
{
pinMode (led[i], OUTPUT);
}
}
void loop()
{
for (int hidup = 0; hidup <= 8; hidup++)
{
digitalWrite(led[hidup], HIGH);
}
delay(100);
for (int mati = 8; mati >= 0; mati--)
{
digitalWrite(led[mati], LOW);
delay(100);
}
delay(100);
}
Prinsip kerja:
Pada rangkaian, terdapat power tegangan dan ground yang terhubung ke Arduino (disini menggunakan SIMULANO). Kemudian, dari pin 2-9 dari Arduino terhubung ke masing-masing resistor dengan hambatan 220 ohm. Masing-masing resistor terhubung ke LED dan terakhir ke ground.
Untuk menjalankan rangkaian, diperlukan program untuk Arduino dengan menggunakan Arduino IDE. Pertama mendeklarasikan pin Arduino dari 2-9 dengan tipe data int dengan array. Kemudian, fungsi void setup() yang hanya dibaca satu kali. Untuk menyatakan pin mode menjadi OUTPUT yaitu dengan perulangan for (int i = 0; i <= 8; i++). Ketika kondisi i<8 sudah tidak terpenuhi, dijalankan fungsi void loop() yang dibaca berulang. Di dalamnya, terdapat perulangan for (int hidup = 0; hidup <= 8; hidup++) untuk menghidupkan LED dengan digitalWrite (led [hidup], HIGH) ; tanpa ada delay. Ketika kondisi hidup<=8 sudah tidak terpenuhi, dijalankan delay selama 100 ms untuk jeda waktu sebelum perulangan selanjutnya. Setelahnya, dijalankan perulangan for (int mati = 8; mati >= 0; mati--) untuk mematikan LED dengan digitalWrite (led [mati], LOW); dan dilanjutkan dengan delay selama 100 ms, sehingga delay tersebut menandakan berapa lama waktu yang dibutuhkan LED pertama untuk mati sebelum LED selanjutnya juga mati. Ketika kondisi mati>=0 sudah tidak terpenuhi, maka selanjutnya dijalankan delay selama 100 ms sebelum memulai perulangan void loop () kembali.
Setelah program dibuat dan dipasangkan pada Arduino di proteus, ketika dijalankan akan terlihat LED hidup secara bersamaan karena pada program perulangan for (int hidup = 0; hidup <= 8; hidup++) tidak memiliki delay dimana delay berguna untuk LED terlihat hidup secara bergantian. Selanjutnya setelah delay 100 ms, LED akan terlihat mati secara bergantian dari kanan ke kiri karena pada perulangan for menggunakan decrease dari 8-0 dan terdapat delay untuk masing-masing LED tersebut. Setelah semua LED mati, terdapat delay 100 ms kembali sebelum perulangan ke awal kembali dan seterusnya.
6. Link Download [Kembali]
Rangkaian simulasi download
Video simulasi download
Program arduino download
File html download
Tidak ada komentar:
Posting Komentar