int LED_green = 5; //LED Grün
int LED_yellow = 6; //LED Gelb
int LED_red = 7; //LED Rot
int F_LED_red = 4; //LED rot Fußgänger
int F_LED_green = 3; //LED Grün Fußgänger
int C_LED_orange = 2; //LED Orange Radfahrer
int G_PUSHER = 8; //Taster Grün
int Y_PUSHER = 9; //Taster Gelb
int R_PUSHER = 10; //Taster Rot
int pusherstatus5; //Taster (Grün) status abrufen
int pusherstatus6; //Taster (Gelb) status abrufen
int pusherstatus7; //Taster (Rot) status abrufen
void setup() {
pinMode(LED_green, OUTPUT); //LED (Grün) = Output
pinMode(LED_yellow, OUTPUT); //LED (Gelb) = Output
pinMode(LED_red, OUTPUT); //LED (Rot) = Output
pinMode(F_LED_green, OUTPUT); //LED (Grün/Fußgänger) = Output
pinMode(F_LED_red, OUTPUT); //LED (Rot/Fußgänger) = Output
pinMode(C_LED_orange, OUTPUT); //LED (Orange/Radfahrer) = Output
pinMode(G_PUSHER, INPUT); //Taster (Grün) = Input
pinMode(Y_PUSHER, INPUT); //Taster (Gelb) = Input
pinMode(R_PUSHER, INPUT); //Taster (Rot) = Input
}
//Programm loop
void loop() {
pusherstatus5 = digitalRead(G_PUSHER); //pusherstatus5 gleich Taster(Grün)
if (pusherstatus5 == HIGH){ //wenn Taster (Grün) gedrückt dann..
//Warte 1 Sekunden bevor die if bedingung gestartet wird
delay(1000); //warte 1 Sekunde
//Auto Gelb Phase
digitalWrite(LED_yellow, HIGH); //LED Gelb an
digitalWrite(LED_green, LOW); //LED Grün aus
delay(3000); //warte 3 Sekunden
//Auto Rot Phase
digitalWrite(LED_yellow, LOW); //LED Gelb aus
digitalWrite(LED_red, HIGH); //LED Rot an
delay(3000); //warte 3 Sekunden
//Fußgänger Grün Phase
digitalWrite(F_LED_red, LOW); //Fußgänger LED Rot aus
digitalWrite(F_LED_green, HIGH); //Fußgänger LED Grün an
//Radfahrer Orange blinkt Phase
digitalWrite(C_LED_orange, HIGH); //LED (Orange/Radfahrer) an
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, HIGH); //LED (Orange/Radfahrer) an
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, HIGH); //LED (Orange/Radfahrer) an
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, HIGH); //LED (Orange/Radfahrer) an
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, HIGH); //LED (Orange/Radfahrer) an
delay(500); //warte 0,5 Sekunden
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
delay(500); //warte 0,5 Sekunden
//Fußgänger Rot Phase
digitalWrite(F_LED_green, LOW); //Fußgänger LED Grün aus
digitalWrite(F_LED_red, HIGH); //Fußgänger LED Rot an
delay(3000); //warte 3 Sekunden
//Auto Rot-Gelb Phase
digitalWrite(LED_yellow, HIGH); //LED Gelb an
delay(3000); //warte 3 Sekunden
//Auto Grün Phase
digitalWrite(LED_yellow, LOW); //LED Gelb aus
digitalWrite(LED_red, LOW); //LED Rot aus
digitalWrite(LED_green, HIGH); //LED Grün an
}
else{ //wenn Taster nicht gedrückt dann...
//Ausgangs position
digitalWrite(F_LED_red, HIGH); //Fußgänger LED Rot an
digitalWrite(LED_green, HIGH); //LED Rot an
digitalWrite(C_LED_orange, LOW); //LED (Orange/Radfahrer) aus
}
}