int pushButton = 12;
int GREEN = 8;
int YELLOW = 9;
int RED = 10;
// the setup routine runs once when you press reset:
void go();
void stop();
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
// make the pushbutton's pin an input:
pinMode(pushButton, INPUT);
pinMode(GREEN, OUTPUT);
pinMode(YELLOW, OUTPUT);
pinMode(RED, OUTPUT);
}
void go(){
digitalWrite(RED, LOW);
digitalWrite(GREEN, HIGH);
};
void stop(){
digitalWrite(GREEN, LOW);
if(digitalRead(RED)==LOW){
digitalWrite(YELLOW, HIGH);
delay(500);
digitalWrite(YELLOW, LOW);
}
digitalWrite(RED, HIGH);
};
// the loop routine runs over and over again forever:
void loop() {
// read the input pin:
int buttonState = digitalRead(pushButton);
// print out the state of the button:
Serial.println(buttonState);
if(buttonState == 1) go();
else stop();
delay(1); // delay in between reads for stability
}