// Project
// Author: 2C Group 99
// Members: 2C41 Chan Tai Man, 2C42 Cheung Siu Ming
// Date: 2023-12-19
/*
BLINK (Duration: 2s)
for (int i=0; i<5; i++) {
digitalWrite(8, HIGH);
delay(400);
digitalWrite(8, LOW);
delay(400);
}
ON
digitalWrite(8, HIGH);
OFF
digitalWrite(8, OFF);
*/
void setup() {
// Pedestrian
pinMode(5, OUTPUT); //red
pinMode(6, OUTPUT); //green
// Driver
pinMode(8, OUTPUT); //red
pinMode(9, OUTPUT); //amber
pinMode(10, OUTPUT); //green
}
void loop() {
// State 1
// LED: (ON, OFF), (ON, OFF, OFF)
// Duration: 1s
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
delay(1000);
// State 2
// LED: (OFF, ON), (ON, OFF, OFF)
// Duration: 4s
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
delay(4000);
// State 3
// LED: (OFF, BLINK), (ON, OFF, OFF)
// Duration: 4s
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
for (int i=0; i<10; i++) {
digitalWrite(6, HIGH);
delay(200);
digitalWrite(6, LOW);
delay(200);
}
// State 4
// LED: (ON, OFF), (ON, OFF, OFF)
// Duration: 1s
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
delay(1000);
// State 5
// LED: (ON, OFF), (ON, ON, OFF)
// Duration: 2s
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(2000);
// State 6
// LED: (ON, OFF), (OFF, OFF, ON)
// Duration: 6s
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
delay(6000);
// State 7
// LED: (ON, OFF), (OFF, ON, OFF)
// Duration: 3s
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(3000);
}