Классический светофор на ATmega328P: красный (D2), жёлтый (D3) и зелёный (D4) светодиоды переключаются по циклу с задержками delay() — красный, красный+жёлтый, зелёный, жёлтый.
Эта страница представляет собой утилиту для того чтобы смоделировать светофор на трёх светодиодах (atmega328p / arduino) онлайн онлайн при заданных начальных значениях.
Микроконтроллер ATmega328P реализует работу классического трёхсекционного светофора с использованием трёх светодиодов: красный подключён к цифровому выводу D2, жёлтый — к D3, зелёный — к D4. Каждый светодиод подключён через токоограничивающий резистор, что обеспечивает безопасный рабочий ток и защищает как светодиоды, так и выводы микроконтроллера.
После запуска программы в функции setup() выводы D2, D3 и D4 настраиваются как цифровые выходы. Основная логика работы реализована в функции loop(), которая непрерывно выполняет последовательность состояний светофора, имитируя работу реального дорожного объекта.
Цикл работы включает четыре основных этапа. Сначала включается красный сигнал, запрещающий движение. Затем одновременно включаются красный и жёлтый светодиоды, что соответствует подготовке к началу движения. После этого включается зелёный сигнал, разрешающий движение транспортных средств. В завершение цикла включается жёлтый сигнал, предупреждающий о скором переключении на запрещающий режим. После окончания этого этапа программа возвращается к начальному состоянию, и цикл повторяется бесконечно.
Временные интервалы между переключениями реализованы с помощью функции delay(), которая приостанавливает выполнение программы на заданное количество миллисекунд. Изменяя значения задержек, можно регулировать продолжительность работы каждого сигнала и моделировать различные режимы функционирования светофора.
Исходный код программы можно редактировать непосредственно в свойствах микроконтроллера в среде моделирования. После внесения изменений обновлённый скетч автоматически загружается в модель ATmega328P, что позволяет быстро изменять алгоритм работы светофора, экспериментировать с длительностью сигналов и изучать принципы управления цифровыми выходами микроконтроллера.









Комментарии