int greenled = 27;
int yellowled = 26;
int redled = 25;
int pedgreen = 12;
int pedred = 14;
int button = 33;
int crossTime = 5000;
unsigned long changeTime;
void setup() {
pinMode(greenled, OUTPUT);
pinMode(yellowled, OUTPUT);
pinMode(redled, OUTPUT);
pinMode(pedgreen, OUTPUT);
pinMode(pedred, OUTPUT);
pinMode(button, INPUT);
digitalWrite(greenled, HIGH);
digitalWrite(yellowled, LOW);
digitalWrite(redled, LOW);
digitalWrite(pedgreen, LOW);
digitalWrite(pedred, HIGH);
}
void loop() {
int state= digitalRead(button);
if (state == HIGH && (millis() - changeTime))
changeLights();
}
void changeLights (){
digitalWrite(greenled, LOW);
digitalWrite(yellowled, HIGH);
delay(2000);
digitalWrite(yellowled, LOW);
digitalWrite(redled, HIGH);
digitalWrite(pedred, LOW);
digitalWrite(pedgreen, HIGH);
delay(crossTime);
for (int x=0; x<10; x++); {
digitalWrite(pedgreen, LOW);
delay(100);
digitalWrite(pedgreen, HIGH);
delay(100);
}
digitalWrite(pedred, HIGH);
digitalWrite(redled, LOW);
digitalWrite(pedgreen, LOW);
digitalWrite(greenled, HIGH);
changeTime = millis();
}