int led1 = 2;
int led2 = 3;
int led3 = 4;
int button1 = 5;
int button2 = 6;
int button3 = 7;
int buttonState1=0;
int buttonState2=0;
int buttonState3=0;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(button3, INPUT);
}
void loop() {
// Baca status pushbutton
buttonState1 = digitalRead(button1);
buttonState2 = digitalRead(button2);
buttonState3 = digitalRead(button3);
// Jika pushbutton 1 ditekan, semua LED berkedip
if (buttonState1 == HIGH) {
blinkAllLeds();
}
// Jika pushbutton 2 ditekan, nyalakan LED bergantian
else if (buttonState2 == HIGH) {
alternateLeds();
}
// Jika pushbutton 3 ditekan, LED menyala 1, mati 2, bergantian
else if (buttonState3 == HIGH) {
oneLedOnTwoOff();
}
// Matikan semua LED jika tidak ada tombol yang ditekan
else {
turnOffAllLeds();
}
}
// Fungsi untuk membuat semua LED berkedip
void blinkAllLeds() {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
delay(500); // Tunda selama 500 ms
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500); // Tunda selama 500 ms
}
// Fungsi untuk menyalakan LED bergantian (LED1 -> LED2 -> LED3)
void alternateLeds() {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(500);
}
// Fungsi untuk menyalakan 1 LED dan mematikan 2 lainnya bergantian
void oneLedOnTwoOff() {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(500);
}
// Fungsi untuk mematikan semua LED
void turnOffAllLeds() {
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
}