Ход работы

  1. Я сделал схему для машинного светофора
  2. Начал работать с кодом для машинного светофора
void setup() //Пины, которые я использовал для LED
{
  pinMode(11, OUTPUT);
  pinMode(10, OUTPUT); 
  pinMode(9, OUTPUT);
}

3. Написал функцию для светофора

void traffic_light_day()
{
  int c=0; //Переменная для циклов
  digitalWrite(11, HIGH); //digitalWrite позволяет подавать напряжение на компоненты платы (HIGH). Также может снизить подачу напряжения(LOW)
  delay(2000); //Задержка 
  digitalWrite(12, HIGH); 
  delay(8000);
  digitalWrite(12, LOW);
  while(c<4) //Цикл для мигания светофора
  {
  digitalWrite(12, LOW);  
  delay(300);              
  digitalWrite(12, HIGH);    
  delay(300);
  c=c+1;
  }
  c=0; 
  digitalWrite(12, LOW);     
  digitalWrite(13, HIGH);
  delay(500);
  digitalWrite(11, LOW);
  delay(1000);           
  digitalWrite(10, HIGH);
  delay(1500);           
  digitalWrite(10, LOW);  
  delay(1000);
  digitalWrite(9, HIGH);
  delay(8000);
  while(c<4)
  {
    digitalWrite(9, LOW);
    delay(300);              
    digitalWrite(9, HIGH);
    delay(300);
    digitalWrite(9, LOW);
    c=c+1;
  }
  c=0;
  digitalWrite(13, LOW);
  while(c<4)
  {
    digitalWrite(13, HIGH);
    delay(300);              
    digitalWrite(13, LOW);
    delay(300);
    c=c+1;
  }
  c=0;
  
}

4. В эту функцию был внедрен код моего товарища (Марко Лембер) для пешеходного светофора
5. После этого код был переработан
6. В дальнейшем была написана функция для ночного режима. Функция просто делает так, чтобы машинный светофор мигал, а пешеходный был выключен

void traffic_light_night()
{
  int z = 0; //Переменная для цикла
  while (z<10) //Цикл
  {
    digitalWrite(12, LOW);
    digitalWrite(13, LOW);
    z++;
    digitalWrite(10, HIGH);   
    delay(500);           
    digitalWrite(10, LOW);
    delay(500);
  }
}

7. Эти функция вставили в основной цикл

void loop()
{
  traffic_light_day();
  delay(2500); //Задержка переключения режима
  traffic_light_night();
}

Как работает светофор

Один дневной цикл

  1. Загорается красный свет для машин
  2. Загорается зеленый свет для пешеходов
  3. Начинает мигать зеленый свет (4 раза) для пешеходов. Позже гаснет и переключается на красный
  4. Красный свет для машин переключается сначала на желтый, а потом на зеленый
  5. Позже зеленый мигает (4 раза) и гаснет
  6. Красный свет для пешеходов мигает (4 раза) и гаснет

Один ночной цикл

  1. Пешеходный светофор выключается
  2. Желтый машинный свет мигает (10 раз)

Ссылка на проект
https://www.tinkercad.com/things/0RZIKca7JK2-super-bombul/editel?sharecode=YmKe_iudgJTtqfYgJrq0Ph82ciVqLI-GNL0w4Ej4eIw

Компоненты

11 проводов

5 резисторов 220 Ом

5 LED

Макетка
Arduino UNO R3

Cхема подключения компонентов к плате

Возможности применения в жизни

Светодиоды LED можно применить для:

  • Индикация какого-либо события
  • Небольшой подсветки контуров чего-либо (спидометр автомобиля, буквы на вывесках)
  • В детских игрушках

Видео работы