// Definisikan pin tombol
const int buttonPin1 = 2; // Tombol Merah
const int buttonPin2 = 3; // Tombol Hijau
const int buttonPin3 = 4; // Tombol Biru
// Definisikan pin LED
const int ledPin1 = 12; // LED Merah
const int ledPin2 = 11; // LED Hijau
const int ledPin3 = 10; // LED Biru
const int ledPin4 = 5; // LED Kuning
void setup() {
// Set pin tombol sebagai input dengan pull-up internal
pinMode(buttonPin1, INPUT_PULLUP);
pinMode(buttonPin2, INPUT_PULLUP);
pinMode(buttonPin3, INPUT_PULLUP);
// Set pin LED sebagai output
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin4, OUTPUT);
// Matikan semua LED di awal
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
// Menyalakan LED sesuai urutan dengan delay 2 detik
digitalWrite(ledPin1, HIGH);
delay(2000); // Tunda 2 detik
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
delay(2000); // Tunda 2 detik
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
delay(2000); // Tunda 2 detik
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
delay(2000); // Tunda 2 detik
digitalWrite(ledPin4, LOW);
}
void loop() {
// Baca status tombol
bool button1State = digitalRead(buttonPin1) == LOW; // Tombol ditekan (aktif LOW)
bool button2State = digitalRead(buttonPin2) == LOW;
bool button3State = digitalRead(buttonPin3) == LOW;
// Kontrol LED berdasarkan tombol yang ditekan
if (button1State && button2State && button3State) {
// Semua tombol ditekan
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
} else if (button1State && button2State) {
// Tombol Merah dan Hijau ditekan
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
} else if (button1State && button3State) {
// Tombol Merah dan Biru ditekan
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
} else if (button2State && button3State) {
// Tombol Hijau dan Biru ditekan
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
} else if (button1State) {
// Hanya Tombol Merah yang ditekan
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
} else if (button2State) {
// Hanya Tombol Hijau yang ditekan
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
} else if (button3State) {
// Hanya Tombol Biru yang ditekan
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
} else {
// Tidak ada tombol yang ditekan
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
}
}