C++:
#define red 2
#define red2 7
#define yellow 3
#define green2 6
#define green 4
#define but1 5
bool but_state;
void yelloww() {
digitalWrite(yellow, HIGH);
delay(2000);
digitalWrite(yellow, LOW);
}
void setup() {
pinMode(red, OUTPUT);
pinMode(yellow, OUTPUT);
pinMode(red2, OUTPUT);
pinMode(green2, OUTPUT);
pinMode(green, OUTPUT);
pinMode(but1, INPUT);
}
void loop() {
if (digitalRead(but1) == 1) {
but_state = !(but_state);
while (digitalRead(but1) == 1) {
delay(25);
}
}
switch (but_state) {
case 0:
digitalWrite(green, HIGH);
digitalWrite(green2, LOW);
digitalWrite(red2, HIGH);
break;
case 1:
digitalWrite(green, LOW);
yelloww();
digitalWrite(red, HIGH);
digitalWrite(green2, HIGH);
digitalWrite(red2, LOW);
delay(5000);
digitalWrite(red, LOW);
yelloww();
but_state = 0;
break;
}
}