int buttonState = 0;
int oldbuttonState = 0;
#define ROT_AUTO 13
#define GELB_AUTO 12
#define GRUEN_AUTO 11
#define FUSS_ROT 7
#define FUSS_GRUEN 6
#define BUTTON A1
void setup() {
pinMode(ROT_AUTO, OUTPUT); // rot auto
pinMode(GELB_AUTO, OUTPUT); // gelb auto
pinMode(GRUEN_AUTO, OUTPUT); // grün auto
pinMode(FUSS_ROT, OUTPUT); // fuß rot
pinMode(FUSS_GRUEN, OUTPUT); // fuß grün
pinMode(BUTTON, INPUT); // Button
}
void loop() {
buttonState = digitalRead(BUTTON); // check if the button at pin 1 gets a signal
if (oldbuttonState != buttonState && buttonState == HIGH) { // if button is pressed
// Traffic Light Routine
delay(800);
digitalWrite(FUSS_ROT, HIGH);
digitalWrite(GRUEN_AUTO, HIGH);
delay(1000);
digitalWrite(GRUEN_AUTO, LOW);
digitalWrite(GELB_AUTO, HIGH);
delay(1000);
digitalWrite(GELB_AUTO, LOW);
digitalWrite(ROT_AUTO, HIGH);
digitalWrite(FUSS_ROT, LOW);
digitalWrite(FUSS_GRUEN, HIGH);
delay(1600);
digitalWrite(GELB_AUTO, HIGH);
digitalWrite(ROT_AUTO, LOW);
digitalWrite(FUSS_ROT, HIGH);
digitalWrite(FUSS_GRUEN, LOW);
delay(1000);
digitalWrite(GELB_AUTO, LOW);
digitalWrite(GRUEN_AUTO, HIGH);
delay(1000);
digitalWrite(FUSS_ROT, LOW);
digitalWrite(GRUEN_AUTO, LOW);
delay(100);
}
oldbuttonState = buttonState;
}