enum TrafficState {
STATE_RED,
STATE_YELLOW,
STATE_GREEN
};
TrafficState currentState = STATE_RED;
// 2 -> Red
// 4 -> Green
// 5 -> Blue , Will be used for simplicity instead of Yellow
void showState(TrafficState s) {
digitalWrite(2, s == STATE_RED ? HIGH : LOW);
digitalWrite(4, s == STATE_GREEN ? HIGH : LOW);
digitalWrite(5, s == STATE_YELLOW ? HIGH : LOW);
}
void setup() {
pinMode(2, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
}
void loop() {
showState(currentState);
delay(1000);
if (currentState == STATE_RED) {
currentState = STATE_GREEN;
} else if (currentState == STATE_GREEN) {
currentState = STATE_YELLOW;
} else {
currentState = STATE_RED;
}
}
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4