// Name: Karl Edward Sarmiento
// Purpose: Traffic Light System
// Commentary: In this lab, I learned how to code a traffic light system that can light-up the LEDs by activating the output-pins using codes. Also, I wrote codes that can control the timer of the LEDs by delaying them to when it will light up.
int button_value = 7;
int button_pin = 7;
void setup() {
Serial.begin(9600);
pinMode(button_pin, INPUT_PULLUP);
// LED test
pinMode(22, OUTPUT); // Red
pinMode(26, OUTPUT); // Yellow
pinMode(32, OUTPUT); // Green
pinMode(23, OUTPUT); // Ground-Red
pinMode(27, OUTPUT); // Ground-Yellow
pinMode(33, OUTPUT); // Ground-Green
// Grounds for the LEDs
digitalWrite(22, LOW);
digitalWrite(26, LOW);
digitalWrite(32, LOW);
digitalWrite(33, HIGH); // Keep the green light on once the simulation starts
}
void loop() {
button_value = digitalRead(button_pin);
if (button_value == 0)
{
digitalWrite(33, LOW); // Button pressed: Green off
digitalWrite(27, HIGH); // Yellow LED turn on
delay(2000); // LED stay on for 2s
digitalWrite(27, LOW); // Yellow LED turn off
digitalWrite(23, HIGH); // Red LED turn on
delay(5000); // LED stay on for 5s
digitalWrite(23, LOW); // Red LED turn off
digitalWrite(33, HIGH); // Green turn back on
//Serial.println("Karl Edward Sarmiento");
//digitalWrite(22, HIGH);
//digitalWrite(26, HIGH);
//digitalWrite(32, HIGH);
}
//digitalWrite(22, LOW);
//digitalWrite(26, LOW);
//digitalWrite(32, LOW);
}