#define DELAY0 10000
#define DELAY1 1000
#define DELAY2 2000
#define DELAY3 3000
int ledPinRotAuto = 7;
int ledPinGelbAuto = 6;
int ledPinGruenAuto = 5;
int ledPinRotFuss = 3;
int ledPinGruenFuss = 2;
int tasterPinAmpel = 8;
int tasterAmpelWert = LOW;
void setup(){
pinMode(ledPinRotAuto, OUTPUT);
pinMode(ledPinGelbAuto, OUTPUT);
pinMode(ledPinGruenAuto, OUTPUT);
pinMode(ledPinRotFuss, OUTPUT);
pinMode(ledPinGruenFuss, OUTPUT);
pinMode(tasterPinAmpel, INPUT);
digitalWrite(ledPinGruenAuto, HIGH);
digitalWrite(ledPinRotFuss, HIGH);
}
void loop(){
//Ampeltasterstatus in Variable einlesen
tasterAmpelWert = digitalRead(tasterPinAmpel);
//Wurde Taster gedrückt, rufe Funktion auf
if(tasterAmpelWert == HIGH)
ampelUmschaltung();
}
void ampelUmschaltung(){
digitalWrite(ledPinGruenAuto, LOW);
digitalWrite(ledPinGelbAuto, HIGH); delay(DELAY3);
digitalWrite(ledPinGelbAuto, LOW);
digitalWrite(ledPinRotAuto, HIGH); delay(DELAY1);
digitalWrite(ledPinRotFuss, LOW);
digitalWrite(ledPinGruenFuss, HIGH); delay(DELAY0);
digitalWrite(ledPinGruenFuss, LOW);
digitalWrite(ledPinRotFuss, HIGH); delay(DELAY1);
digitalWrite(ledPinGelbAuto, HIGH); delay(DELAY2);
digitalWrite(ledPinRotAuto, LOW);
digitalWrite(ledPinGelbAuto, LOW);
digitalWrite(ledPinGruenAuto, HIGH);
}