#define LED_hijau 11 // Mendefinisikan pin digital 11 untuk LED hijau
#define LED_biru 12 // Mendefinisikan pin digital 12 untuk LED biru
#define LED_merah 13 // Mendefinisikan pin digital 13 untuk LED merah
#define tombol 7 // Mendefinisikan pin digital 7 untuk tombol
int status = 0; // Mendeklarasikan variabel status untuk menyimpan kondisi tombol
void setup() {
pinMode(LED_hijau, OUTPUT); // Mengatur pin LED_hijau sebagai output
pinMode(tombol, INPUT); // Mengatur pin tombol sebagai input
pinMode(LED_biru, OUTPUT); // Mengatur pin LED_biru sebagai output
pinMode(LED_merah, OUTPUT); // Mengatur pin LED_merah sebagai output
digitalWrite(LED_hijau, LOW); // Mematikan LED hijau pada awal program
digitalWrite(LED_biru, LOW); // Mematikan LED biru pada awal program
digitalWrite(LED_merah, LOW); // Mematikan LED merah pada awal program
}
void loop() {
if(digitalRead(tombol) == HIGH) { // Membaca nilai dari tombol, jika ditekan (HIGH)
status++; // Menambahkan nilai status
delay(200); // Menunda eksekusi selama 200 milidetik untuk debouncing
}
if(status == 1) { // Jika status bernilai 1
digitalWrite(LED_hijau, HIGH); // Menyalakan LED hijau
}
else if (status == 2) { // Jika status bernilai 2
digitalWrite(LED_biru, HIGH); // Menyalakan LED biru
}
else if (status == 3) { // Jika status bernilai 3
digitalWrite(LED_merah, HIGH); // Menyalakan LED merah
}
else { // Jika status bernilai selain 1, 2, atau 3
digitalWrite(LED_hijau, LOW); // Mematikan LED hijau
digitalWrite(LED_biru, LOW); // Mematikan LED biru
digitalWrite(LED_merah, LOW); // Mematikan LED merah
status = 0; // Mengatur status kembali ke 0
}
}