const int hijauPins[] = {13, 8, 5, 2};
const int kuningPins[] = {12, 9, 6, 3};
const int merahPins[] = {11, 10, 7, 4};
void setup() {
for (int i = 0; i < 4; i++) {
pinMode(hijauPins[i], OUTPUT);
pinMode(kuningPins[i], OUTPUT);
pinMode(merahPins[i], OUTPUT);
}
}
void loop() {
// Setiap langkah diberi komentar untuk menggambarkan fungsinya
// Langkah 1: Lampu hijau pertama menyala, sisanya mati
digitalWrite(hijauPins[0], HIGH);
digitalWrite(merahPins[1], HIGH);
digitalWrite(merahPins[2], HIGH);
digitalWrite(merahPins[3], HIGH);
delay(2000);
digitalWrite(hijauPins[0], LOW);
// Langkah 2
digitalWrite(kuningPins[0], HIGH);
digitalWrite(kuningPins[1], HIGH);
digitalWrite(merahPins[1], HIGH);
delay(2000);
// Langkah 3: Lampu hijau kedua menyala
digitalWrite(hijauPins[1], HIGH);
digitalWrite(merahPins[1],LOW);
digitalWrite(kuningPins[0], LOW);
digitalWrite(kuningPins[1], LOW);
digitalWrite(merahPins[0], HIGH);
digitalWrite(merahPins[2], HIGH);
digitalWrite(merahPins[3], HIGH);
delay(2000);
digitalWrite(hijauPins[1], LOW);
// Langkah 4
digitalWrite(kuningPins[1], HIGH);
digitalWrite(kuningPins[2], HIGH);
digitalWrite(merahPins[2], HIGH);
delay(2000);
// Langkah 5: Lampu hijau ketiga menyala
digitalWrite(hijauPins[2], HIGH);
digitalWrite(merahPins[2],LOW);
digitalWrite(kuningPins[1], LOW);
digitalWrite(kuningPins[2], LOW);
digitalWrite(merahPins[1], HIGH);
digitalWrite(merahPins[3], HIGH);
delay(2000);
digitalWrite(hijauPins[2], LOW);
// Langkah 6
digitalWrite(kuningPins[2], HIGH);
digitalWrite(kuningPins[3], HIGH);
digitalWrite(merahPins[3], HIGH);
delay(2000);
// Langkah 7: Lampu hijau keempat menyala
digitalWrite(hijauPins[3], HIGH);
digitalWrite(merahPins[0], HIGH);
digitalWrite(merahPins[1], HIGH);
digitalWrite(merahPins[2], HIGH);
digitalWrite(merahPins[3], LOW);
digitalWrite(kuningPins[2], LOW);
digitalWrite(kuningPins[3], LOW);
delay(2000);
digitalWrite(hijauPins[3], LOW);
// Langkah 8
digitalWrite(kuningPins[0], HIGH);
digitalWrite(kuningPins[3], HIGH);
digitalWrite(merahPins[0], HIGH);
delay(2000);
//balik lagi ke lampu pertama
digitalWrite(kuningPins[0], LOW);
digitalWrite(kuningPins[3], LOW);
digitalWrite(merahPins[0], LOW);
}