int status = 0;
int buttonState = 0;
int lastButtonState = 0;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50;
void setup() {
pinMode(10, OUTPUT); // LED biru
pinMode(9, OUTPUT); // LED kuning
pinMode(8, OUTPUT); // LED jingga
pinMode(7, INPUT); // Tombol
// Mulai dengan semua LED mati
digitalWrite(10, LOW);
digitalWrite(9, LOW);
digitalWrite(8, LOW);
}
void loop() {
int reading = digitalRead(7);
if (reading != lastButtonState) {
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay) {
if (reading != buttonState) {
buttonState = reading;
if (buttonState == HIGH) {
status++;
}
}
}
lastButtonState = reading;
if (status == 1) {
digitalWrite(8, HIGH); // LED jingga menyala
digitalWrite(9, LOW);
digitalWrite(10, LOW);
} else if (status == 2) {
digitalWrite(8, LOW);
digitalWrite(9, HIGH); // LED kuning menyala
digitalWrite(10, LOW);
} else if (status == 3) {
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, HIGH); // LED biru menyala
} else if (status == 4) {
digitalWrite(8, LOW); // Semua LED mati
digitalWrite(9, LOW);
digitalWrite(10, LOW);
} else if (status == 5) {
digitalWrite(8, HIGH); // Semua LED menyala
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
} else if (status == 6) {
digitalWrite(8, LOW); // Semua LED mati
digitalWrite(9, LOW);
digitalWrite(10, LOW);
status = 0; // Reset status kembali ke awal
}
delay(50); // Sedikit delay untuk stabilitas
}