// linke Ampel
int ROT_L = 8;
int GELB_L = 9;
int GRUEN_L = 10;
// rechte Ampel
int ROT_R = 5;
int GELB_R = 6;
int GRUEN_R = 7;
void setup()
{
pinMode(ROT_L, OUTPUT);
pinMode(GELB_L, OUTPUT);
pinMode(GRUEN_L, OUTPUT);
pinMode(ROT_R, OUTPUT);
pinMode(GELB_R, OUTPUT);
pinMode(GRUEN_R, OUTPUT);
}
void loop()
{
// beim Start zeigen beide Ampeln rot
digitalWrite(ROT_L, HIGH);
digitalWrite(ROT_R, HIGH);
// 1 Sekunde Sicherheitszone
delay(1000);
// linke Ampel wird über rot/gelb auf grün geschaltet
// GELB_L -> an, 1 Sekunde warten, GELB_L -> aus, ROT_L -> aus, GRUEN_L -> an
digitalWrite(GELB_L, HIGH);
delay(1000);
digitalWrite(GELB_L, LOW);
digitalWrite(ROT_L, LOW);
digitalWrite(GRUEN_L, HIGH);
delay(5000);
// linke Ampel wird von grün -> gelb auf rot geschaltet
// GRUEN_L -> aus, GELB_L -> an, 1 Sekunde warten, GELB_L aus, ROT_L -> an
digitalWrite(GRUEN_L, LOW);
digitalWrite(GELB_L, HIGH);
delay(1000);
digitalWrite(GELB_L, LOW);
digitalWrite(ROT_L, HIGH);
// 1 Sekunde Sicherheitszone, beide Ampeln bleiben rot
delay(1000);
// rechte Ampel über rot-gelb auf grün schalten
// GELB_R -> an, 1 Sekunde warten, GELB_R -> aus, ROT_R -> aus, GRUEN_R -> an
digitalWrite(GELB_R, HIGH);
delay(1000);
digitalWrite(GELB_R, LOW);
digitalWrite(ROT_R, LOW);
digitalWrite(GRUEN_R, HIGH);
delay(5000);
// rechte Ampel wird von grün -> gelb auf rot geschaltet
// GRUEN_R -> aus, GELB_R -> an, 1 Sekunde warten, GELB_R aus,loop beginnt von vornan
digitalWrite(GRUEN_R, LOW);
digitalWrite(GELB_R, HIGH);
delay(1000);
digitalWrite(GELB_R, LOW);
}
Letzte Aktualisierung: