//LAMPU LALU LINTAS PEREMPATAN CELEP
// selatan : dari candi
//barat : dari celep
//timur : dari jl. erlangga
//utara : dari gajah mada
//utara ke barat : dari gajah mada ke jl erlangga
// Definisikan pin untuk lampu
// dhavin ryansyah rivaldi 10
//yehezkiel christian santoso 35
int lampuHijauTimur = 2;
int lampuKuningTimur = 3;
int lampuMerahTimur = 4;
int lampuHijauBarat = 5;
int lampuKuningBarat = 6;
int lampuMerahBarat = 7;
int lampuHijauUtara = 8;
int lampuKuningUtara = 9;
int lampuMerahUtara = 10;
int lampuHijauSelatan = 11;
int lampuKuningSelatan = 12;
int lampuMerahSelatan = 13;
int lampuHijauUtaraKeBarat = A0;
int lampuKuningUtaraKeBarat = A1;
int lampuMerahUtaraKeBarat = A2;
int durasiHijau = 5000;
int durasiKuning = 2000;
void setup() {
// semua pin menjadi output
pinMode(lampuHijauTimur, OUTPUT);
pinMode(lampuKuningTimur, OUTPUT);
pinMode(lampuMerahTimur, OUTPUT);
pinMode(lampuHijauBarat, OUTPUT);
pinMode(lampuKuningBarat, OUTPUT);
pinMode(lampuMerahBarat, OUTPUT);
pinMode(lampuHijauUtara, OUTPUT);
pinMode(lampuKuningUtara, OUTPUT);
pinMode(lampuMerahUtara, OUTPUT);
pinMode(lampuHijauSelatan, OUTPUT);
pinMode(lampuKuningSelatan, OUTPUT);
pinMode(lampuMerahSelatan, OUTPUT);
pinMode(lampuHijauUtaraKeBarat, OUTPUT);
pinMode(lampuKuningUtaraKeBarat, OUTPUT);
pinMode(lampuMerahUtaraKeBarat, OUTPUT);
}
void loop() {
// U dan UB Hijau, T, B, S
digitalWrite(lampuHijauUtara, HIGH);
digitalWrite(lampuMerahTimur, HIGH);
digitalWrite(lampuMerahBarat, HIGH);
digitalWrite(lampuMerahSelatan, HIGH);
digitalWrite(lampuHijauUtaraKeBarat, HIGH);
digitalWrite(lampuMerahUtaraKeBarat, LOW);
delay(durasiHijau / 2);
digitalWrite(lampuHijauUtaraKeBarat, LOW);
digitalWrite(lampuMerahUtaraKeBarat, HIGH);
delay(durasiHijau / 2);
digitalWrite(lampuHijauUtaraKeBarat, LOW);
// S Hijau, U tetap Hijau, T, B, dan UB Merah
digitalWrite(lampuHijauSelatan, HIGH);
digitalWrite(lampuMerahSelatan, LOW);
delay(durasiHijau);
//U dan S Kuning
digitalWrite(lampuHijauUtara, LOW);
digitalWrite(lampuHijauSelatan, LOW);
digitalWrite(lampuKuningUtara, HIGH);
digitalWrite(lampuKuningSelatan, HIGH);
delay(durasiKuning);
// U dan S Merah, T dan B Hijau
digitalWrite(lampuKuningUtara, LOW);
digitalWrite(lampuKuningSelatan, LOW);
digitalWrite(lampuMerahUtara, HIGH);
digitalWrite(lampuMerahSelatan, HIGH);
digitalWrite(lampuHijauTimur, HIGH);
digitalWrite(lampuHijauBarat, HIGH);
digitalWrite(lampuMerahBarat, LOW);
digitalWrite(lampuMerahTimur, LOW);
delay(durasiHijau);
// T dan B Kuning
digitalWrite(lampuHijauTimur, LOW);
digitalWrite(lampuHijauBarat, LOW);
digitalWrite(lampuKuningTimur, HIGH);
digitalWrite(lampuKuningBarat, HIGH);
delay(durasiKuning);
digitalWrite(lampuKuningTimur, LOW);
digitalWrite(lampuKuningBarat, LOW);
digitalWrite(lampuMerahTimur, LOW);
digitalWrite(lampuMerahBarat, LOW);
digitalWrite(lampuMerahUtara, LOW);
digitalWrite(lampuMerahSelatan, LOW);
}