#include <Arduino.h>
// Піни для підключення світлофорів
#define LED_RED PA0
#define LED_YELLOW PA1
#define LED_GREEN PA2
#define LED_RED_2 PA3 // Червоний для другого світлофора
#define LED_GREEN_2 PA4 // Зелений для другого світлофора
void setup() {
// Налаштування пінів як виходи
pinMode(LED_RED, OUTPUT);
pinMode(LED_YELLOW, OUTPUT);
pinMode(LED_GREEN, OUTPUT);
pinMode(LED_RED_2, OUTPUT);
pinMode(LED_GREEN_2, OUTPUT);
// Початковий стан
digitalWrite(LED_RED, LOW);
digitalWrite(LED_YELLOW, LOW);
digitalWrite(LED_GREEN, HIGH); // Зелений на першому
digitalWrite(LED_RED_2, HIGH); // Червоний на другому
digitalWrite(LED_GREEN_2, LOW);
}
void loop() {
// Перший зелений 15 с
digitalWrite(LED_GREEN, HIGH);
digitalWrite(LED_YELLOW, LOW);
digitalWrite(LED_RED, LOW);
digitalWrite(LED_GREEN_2, LOW);
digitalWrite(LED_RED_2, HIGH);
delay(15000);
// Перший жовтий 2 с
digitalWrite(LED_GREEN, LOW);
digitalWrite(LED_YELLOW, HIGH);
delay(2000);
// Перший червоний 2 с
digitalWrite(LED_YELLOW, LOW);
digitalWrite(LED_RED, HIGH);
delay(2000);
// Другий зелений 30 с
digitalWrite(LED_GREEN_2, HIGH);
digitalWrite(LED_RED_2, LOW);
delay(30000);
// Другий червоний 3 с (жовтий на першому для підготовки)
digitalWrite(LED_RED_2, HIGH);
digitalWrite(LED_GREEN_2, LOW);
digitalWrite(LED_RED, LOW);
digitalWrite(LED_YELLOW, HIGH);
delay(3000);
// Повертаємось до початку (зелений на першому)
digitalWrite(LED_YELLOW, LOW);
digitalWrite(LED_GREEN, HIGH);
digitalWrite(LED_RED_2, HIGH);
digitalWrite(LED_GREEN_2, LOW);
// цикл повторюється автоматично
}