Всем привет. В этой статье я хочу рассказать о том как сделать бегущие огни на микроконтроллере ATtiny13.
Нам понадобятся: ATtiny13, программатор (в нашем случае Arduino Nano), 5 светодиодов и резистор на 220 Ом. Как программировать ATtiny13 в Arduino IDE подробно описано тут.
Соберем схему:
Плюс (+) первого светодиода подключим ко второй ноге ATtiny13
Плюс (+) второго светодиода подключим к третьей ноге ATtiny13
Плюс (+) третьего светодиода подключим к пятой ноге ATtiny13
Плюс (+) четвертого светодиода подключим к шестой ноге ATtiny13
Плюс (+) пятого светодиода подключим к седьмой ноге ATtiny13
Все минусовые выводы светодиодов подключим к четвертой ноге через резистор на 220 Ом. Чтобы определить, где плюс и минус у светодиода, посмотрите на него. Один вывод светодиода длиннее другого. Тот который длиннее – плюс, тот который короче – минус. Ниже схема подключения.
Собираем схему на макетке.
Далее открываем Arduino IDE и пишем:
Эта часть программы будет включать и выключать светодиоды по очереди. В скетче она подписана как режим 1. Режим 1 обратно – делает тоже самое, только в обратном направлении. Функция delay(150) здесь и во всех остальных режимах отвечает за скорость мигания светодиодов. Меняя значение 150 на другое, можно менять скорость включения и выключения светодиодов. Значение задается в миллисекундах. 1 секунда равна 1000 миллисекундам.
Добавим еще один режим включения светодиодов.
Эта часть программы сначала включит все светодиоды по очереди, а потом так же по очереди выключит их в той же последовательности. Режим 2 обратно – делает тоже самое, только в обратном направлении.
Добавим еще один режим включения светодиодов.
Эта часть программы сначала включит все светодиоды по очереди, а потом так же по очереди выключит их в обратной последовательности. Режим 3 обратно – делает тоже самое, только в противоположном направлении.
Более наглядно режимы представлены на анимации ниже.
Тут они включаются по очереди с первого по третий. По желанию, режимы в скетче можно менять местами. Между режимами есть небольшая пауза. В коде обозначена как delay(500).
Что бы не писать этот код, можно скачать готовый скетч, ссылка на который находится в конце статьи. И просто загрузить его на ваш ATtiny13. Как загружать скетчи из Arduino IDE в ATtiny13 – подробно описано в этой статье.
Спасибо, что дочитали статью до конца! Если вам понравилось, пожалуйста поставьте лайк. Если вам нравится тематика моего канала, подписывайтесь на мой канал. До новых встреч!