const int pin_1 =2, pin_2=4, pin_3=16;
//pin 1 pada analog 2
//pin 2 pada analog 4
//pin 3 pada analog 16
int time_now=3000; //waktu awal

void setup() {
  // put your setup code here, to run once:
  pinMode(pin_1, OUTPUT);//lampu merah
  pinMode(pin_2, OUTPUT);//lampu kuning
  pinMode(pin_3, OUTPUT);//lampu hijau

  Serial.begin(115200);
  Serial.println("RAMA SUGIARTO '202520027'");
}

void loop() {
time_now=time_now - 10; //penghitungan waktu dibuat mundur -10 supaya tidak menunggu lama

if(time_now >2500){ //jika waktu lebih dari 2500
digitalWrite(pin_1, HIGH); //lampu merah menyala
digitalWrite(pin_2, LOW); //lampu kuning mati
digitalWrite(pin_3, LOW); //lampu hijau mati
delay(100);
Serial.println("Berhenti");
}else if (time_now >1500){ //jika waktu lebih dari atau sama dengan 1500
  digitalWrite(pin_1, LOW); // lampu merah mati
  digitalWrite(pin_2, HIGH); //lampu kuning menyala
  delay(100);
  Serial.println("Hati-hati");
}else if(time_now >500){ //jika waktu lebih dari atau sama dengan 500
  digitalWrite(pin_1, LOW); //lampu merah mati
  digitalWrite(pin_2, LOW); //lampu kuning mati
  digitalWrite(pin_3, HIGH); //lampu hijau menyala
  delay(100);
  Serial.println("Silahkan Jalan");
}else if(time_now <500){ //jika waktu kurang dari 500
  time_now=3000; //waktu akan kembali ke waktu awal yaitu 3000
  delay(100);
}
Serial.println(time_now);
}
//   // put your main code here, to run repeatedly:
//   digitalWrite(pin_1, HIGH);
//   delay(1000); // this speeds up the simulation
//   digitalWrite(pin_1, LOW);
//   delay(1500); // this speeds up the simulation
//   digitalWrite(pin_2, HIGH);
//   delay(500); // this speeds up the simulation
//   digitalWrite(pin_2, LOW);
//   delay(1500); // this speeds up the simulation
//   digitalWrite(pin_3, HIGH);
//   delay(1000); // this speeds up the simulation
//   digitalWrite(pin_3, LOW);
//   delay(1500); // this speeds up the simulation