Помогите простым понятным кодом написать светофор с кнопкой без delay, без пауз

Два светофора - для машин и пешеходов

const int red1 = 2;
const int yellow1 = 3;
const int green1 = 4;
const int red2 = 5;
const int green2 = 6;
const int button = 7;

void setup() {
  pinMode(red1, OUTPUT);
  pinMode(yellow1, OUTPUT);
  pinMode(green1, OUTPUT);
  pinMode(red2, OUTPUT);
  pinMode(green2, OUTPUT);
  pinMode(button, INPUT);
}

void loop() {
  if (digitalRead(button) == LOW) {
    digitalWrite(green1, HIGH);
    digitalWrite(red2, HIGH);
  }
    
    if (digitalRead(button) == HIGH) {
      

    for (int i = 0; i<3; i++) 
    {
    digitalWrite(green1, LOW);
    delay(500);
    digitalWrite(green1, HIGH);
    delay(500);
    }
    
    digitalWrite(green1, LOW);
    digitalWrite(yellow1, HIGH);
    delay(1000);

    digitalWrite(yellow1, LOW);
    digitalWrite(red2, LOW);

    digitalWrite(red1, HIGH);
    digitalWrite(green2, HIGH);
    delay(1000);

    for (int i = 0; i<3; i++) 
    {
    digitalWrite(green2, LOW);
    delay(500);
    digitalWrite(green2, HIGH);
    delay(500);
    }

    digitalWrite(green2, LOW);
    digitalWrite(yellow1, HIGH);
    digitalWrite(red2, HIGH);
    delay(1000);

    digitalWrite(yellow1, LOW);
    digitalWrite(red2, LOW);
    digitalWrite(red1, LOW); 
  }
}

И? Это всё?

Тема перенесена в профильный раздел.

Петрович, не губи “бизнес-идею” )))