Загрузка данных


void setup() {
  pinMode(2, OUTPUT); // Красный 1
  pinMode(3, OUTPUT); // Жёлтый 1
  pinMode(4, OUTPUT); // Зелёный 1

  pinMode(5, OUTPUT); // Красный 2
  pinMode(6, OUTPUT); // Жёлтый 2
  pinMode(7, OUTPUT); // Зелёный 2
}

void loop() {

  // Светофор 1 едет
  digitalWrite(4, HIGH);
  digitalWrite(5, HIGH);
  delay(5000);

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

  digitalWrite(4, LOW);
  digitalWrite(3, HIGH);
  delay(1000);
  digitalWrite(3, LOW);
  digitalWrite(2, HIGH);

  // Светофор 2 готовится ехать
  for (int i = 0; i < 3; i++) {
    digitalWrite(5, LOW); delay(300);
    digitalWrite(5, HIGH); delay(300);
  }

  digitalWrite(5, LOW);
  digitalWrite(6, HIGH);
  delay(1000);
  digitalWrite(6, LOW);
  digitalWrite(7, HIGH);
  delay(5000);

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

  digitalWrite(7, LOW);
  digitalWrite(6, HIGH);
  delay(1000);
  digitalWrite(6, LOW);
  digitalWrite(5, HIGH);

  // Светофор 1 готовится ехать
  for (int i = 0; i < 3; i++) {
    digitalWrite(2, LOW); delay(300);
    digitalWrite(2, HIGH); delay(300);
  }

  digitalWrite(2, LOW);
  digitalWrite(3, HIGH);
  delay(1000);
  digitalWrite(3, LOW);
}