1,8K подписчиков

Занятие 3 Делаем светофор на трех светодиодах

188 прочитали

На предыдущем занятии мы научились программировать цифровой порт для управления включением/выключением светодиодом. На этом занятии мы продолжим тему программирования цифровых портов и создадим светофор на примере трех светодиодов красного, желтого и зеленого цветов, подключенных к цифровым портам.

Нам понадобиться для этого:

  • 1x Контроллер Ардуино (Arduino UNO)
  • 1x беспаечная макетная плата
  • 3x светодиода - красный, желтый, зеленый
  • 1x резистор номиналом 220 Ом
  • 4x провода «папа-папа»

Принципиальная схема

Принципиальная схема для построения программируемого светофора
Принципиальная схема для построения программируемого светофора

Схема на макетке

Подключение светодиодов на макетной плате с подключением к портам контроллера Ардуино Arduino UNO
Подключение светодиодов на макетной плате с подключением к портам контроллера Ардуино Arduino UNO

Алгоритм работы программы

С этого занятия мы вводим такое понятие как Алгоритм работы программы.

Алгоритм - это то, как будет работать наш светофор, в какой последовательности будут переключаться светодиоды на нашем светофоре, сколько времени будет гореть каждый цвет в том числе при режиме моргания. На основании алгоритма создается программа, которая может быть на любом языке программирования.

Есть специально применяемы значки для создания алгоритма работы программы, которые мы будем применять по мере усложнения задач.

1. Горит красный цвет в течении 5 секунд

2. Горит зеленый цвет в течении 3 секунд и далее он моргает 2 раза в течении 2х секунд

3. Горит желтый 1 секунду

4. возвращается на 1 шаг

Алгоритм работы светофора
Алгоритм работы светофора

Скетч (на Mixly)

Можно использовать уже начатый скетч из прошлого занятия или создадим программу управления свечением светодиодов заново.

Разделы, где находятся команды для создания команды отмечены красной рамкой. В разделе In/Out - команды управления портами, в Control - команда приостановки перехода на следующий шаг программы Delay у которой выбирается в качестве алгоритма время в миллисекундах.

1000 мс = 1 секунда.

Скетч управления светофором
Скетч управления светофором

Вопросы для проверки себя

  1. Какие уровни сигналов в вольтах на выходных портах при подаче команды DigitalWrite статуса High и статуса Low?
  2. Зачем применяются резисторы 220 Ом на схеме для каждого светодиода?
  3. После последней команды Delay 1000ms что происходит?
  4. Можно ли использовать один резистор для трех светодиодов. Если да, какая в этом случае будет принципиальная схема?

Задания для самостоятельного

  1. Создайте свой алгоритм управления светофором, изменяя время горения светодиодов и их моргания.
  2. Начните программу с шага, когда горит зеленый цвет светофора.