Бегущие огни схема. Бегущие огни на светодиодах своими руками — схема на микроконтроллере ATtiny2313 Бегущая волна своими руками

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

Микроконтроллер ATtiny2313 для бегущих огней

Данное устройство относится к серии AVR микроконтроллеров бренда Atmel. Именно под его управлением чаще всего делают бегущую световую ленту, поскольку эксплуатационные характеристики модели достаточно высокие. Микроконтроллеры просты в программировании, многофункциональны и поддерживают реализацию разных электронных устройств.

ATtiny2313 сделан по простой схеме, где порт для вывода и ввода имеет идентичное значение. Выбрать программу (одну из 12) на таком микроконтроллере очень легко, ведь он не перегружен лишними опциями. Модель выпускается в двух корпусах – SOIC и PDIP, причем каждый вариант обладает идентичными характеристиками:

  • 8-битные общие регистры в количестве 32 штук;
  • возможности 120 операций за один тактовый цикл;
  • flash-память внутри системы на 2 кБ с поддержкой 10 тысяч циклов стирания и записи;
  • внутрисистемная EEPROM на 128 байт с поддержкой 100 тысяч циклов;
  • 128 байт встроенной оперативки;
  • 4 ШИМ-канала;
  • счетчик-таймер на 8 и 16 бит;
  • встроенный генератор;
  • удобный для разных целей интерфейс и другие функции.

Микроконтроллер имеет два вида в соответствии с энергопараметрами:

  • классическая модель ATtiny2313 обладает напряжением от 2,7 до 5,5 В и силой тока до 300 мкА на частоте 1 МГц в режиме активности;
  • вариант ATtiny2313А (4313) обладает характеристиками в 1,8-5,5 В и 190 мкА при той же частоте.

В режиме ожидания устройство имеет энергопотребление не больше 1 мкА.

Как уже было указано, память микроконтроллера оснащена 11 комбинациями световых схем, а возможность выбора всех комбинаций светодиодов последовательно – это и есть 12 программа.

Схема бегущих огней и принцип её работы

Создаваемая схема бегущих огней на светодиодах базируется на размещении микроконтроллера в центре. Все его порты вывода соединяются со светодиодами:

  • порт B или PB0-PB7 используется полностью для контроля над свечением;
  • максимально задействованы три вывода от порта D (PD4-PD6);
  • также работают PA0 и PA1, поскольку они свободны за счет реализуемого внутреннего генератора.

Вывод №1 – PA2 или Reset – не является активным звеном схемы, поэтому резистором R1 подсоединяется к цепи питания ATtiny2313. Плюсовая часть питания 5 В идет к выводу №20 – VCC, а минусовая — №10 (GND). Полярный конденсатор C1 устанавливается для предотвращения сбоев и гашения помех в работе МК.

Учитывая, что каждый вывод имеет малую нагрузочную способность, целесообразно ставить на них светодиоды с номиналом до 20 мА.

Подходят, как классические smd3258, так и led’ы повышенной яркости в DIP корпусе. Суммарно их должно быть 13 штук. Функция ограничения тока возлагается на резисторы R6-R18.

Работа схемы контролируется посредством посредством переключателя SA1, кнопок SB1-SB3 и цифровых входов PD0-PD3, которые подключаются через резисторы R2, R3, R6 и R7. Такая конструкция позволяет включать мигание светодиодов в 11 различных режимов, задавая конкретную программу кнопкой SB3. А с помощью переключателя SA1 изменяется скорость мигания. Для этого:

  1. SA1 переводится в замкнутое положение.
  2. Скорость изменяется кнопками SB1 (ускорение) и SB2 (замедление).

Обратите внимание, что при размыкании переключателя данными кнопками меняется яркость свечения светодиодов от еле заметного мерцания до максимальной мощности.

Варианты сборки

Существует два доступных и относительно простых варианта сборки бегущих огней: на печатной или макетной плате. И в том, и в другом случае желательно за основу брать схему в PDIP корпусе на панельке DIP-20. При этом нужно, чтобы остальные компоненты также были в DIP-корпусах.

При сборке на макетной плате будет достаточно модели 50×50 мм с шагом в 2,5 мм. Светодиодыможно будет разместить не только на самой плате, но и на внешней линейке, подключив их в схему с помощью гибких проводов.

Миниатюрная печатная плата более практичный вариант для тех случаев, когда бегущие огни на светодиодах своими руками делают для активной дальнейшей эксплуатации.

К примеру, когда они устанавливаются на велосипед или автомобиль. В этом случае понадобятся такие компоненты:

  • односторонний текстолит 55×55 мм;
  • конденсатор 100 мкФ-6,3В;
  • DD1 – Attine 2313;
  • резистор 10 кОм-0,25 Вт±5% (R1);
  • 17 резисторов 1 кОм-0,25 Вт±5% (R2-R18);
  • 13 светодиодов LED диаметром 3 мм (цвет не важен);
  • 3 кнопки KLS7-TS6601 или аналог (SB1-SB3);
  • переключатель движковый ESP1010 (SA1).

Радиолюбителям с практическим опытом сборки печатных плат лучше взять для этой схемы Attine2313 SOIC c SMD резисторами. За счет этого общие габариты схемы уменьшатся почти в два раза. Можно также отдельным блоком установить сверхъяркие SMD светодиоды.

Эта схема бегущих огней на 12 вольт широко известна в сети, так как имеет очень простую и понятную конструкцию. Генератором режима выступает таймер импульсов, а счетчик, подсчитывая их, подает на выходы соответствующие логические уровни. Светодиодный элемент, подключенный к каждому выходу, загорается при логической единице и гаснет при нуле. Эффект бегущих огней создается за счет последовательного мерцания. Скорость «бега» задается генератором, работа которого контролируется номинальными параметрами конденсатора C1 и резистора R1.

Яркость светодиодов усиливается за счет увеличения подаваемого тока, но для этого их следует подключать через буферные транзисторы. Дело в том, что выходы счетчика не отличаются высокой нагрузочной способностью.

В этой старой схеме приведены советские обозначения компонентов и микросхем, но в наше время не сложно найти соответствующие им аналоги зарубежного производства.

Прошивка

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


Эта конструкция способна осуществлять управление тринадцатью светодиодами, которые подсоединены через токоограничивающие резисторы напрямую к портам микроконтроллера ATtiny2313.

Тумблером SA3 можно осуществлять переключение между возможными вариантами работы. Тумблерами SA1 и SA2 можно регулировать скорость движения огней или частоту мигания каждого светодиода отдельно. Все это зависит, от положения тумблера SA4. При верхнем положении он регулирует скорость бегущих огней, а при нижнем частота мигания.

При установке светодиодов в линейку необходимо соблюдать очередность как указано на рисунке от HL1 до HL11. Микроконтроллер ATtiny2313 тактируем от имеющегося внутреннего генератора с частотой 8 МГц.

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


При подаче напряжения питания от сети оно поступает на первичную обмотку сетевого трансформатора Т1, к вторичной обмотке которого подключен выпрямитель, собранный по схеме с удвоением напряжения на диодах VD1, VD2 и конденсаторах С2, СЗ. Эффективное напряжение вторичной обмотки трансформатора составляет 13,5 Б. Поэтому выпрямленное напряжение в результате удвоения оказывается равным около 32 В. В исходном состоянии транзистор VT1, включенный по схеме с общим коллектором, заперт, поскольку конденсатор С1 разряжен. При этом все реле обесточены и горит гирлянда HL1.

Начинается заряд, конденсатора С1. По мере заряда конденсатора напряжение на нем и на эмиттере транзистора растет. Когда оно достигнет значения, при котором ток в обмотке реле КЗ превысит ток срабатывания, контакты К3.1 переключатся, лампы HL1 погаснут, а лампы HL2 загорятся. Дальнейшее увеличение напряжения на эмиттере транзистора приводит к срабатыванию реле К2, которое контактами К2.1 выключит лампы HL2 и включит HL3. Наконец, продолжающееся увеличение напряжения приводит к срабатыванию реле К1, контакты которого К1.1 разряжают конденсатор С1.

В результате запирается транзистор, все реле обесточиваются, зажигаются лампы HL1, а контакты К1.1 размыкаются. Тогда конденсатор вновь начинает заряжаться и процесс повторяется. Скорость заряда конденсатора и перемещения бегущего огня можно регулировать переменным резистором R2. В качестве сетевого трансформатора используется выходной трансформатор кадровой развертки ТВК-110ЛМ от черно-белых телевизоров. Из двух вторичных обмоток используется та, сопротивление которой составляет 1 Ом. Автор предложил использовать электромагнитные реле типа РЭС9.

Однако, ни одно реле этого типа не предназначено на коммутацию переменного напряжения 220 В (только 115). Поэтому советуем установить реле РЭС10, паспорт РС4.524.302 (РС4.529.031-03 согласно ГОСТ 16121-86). Их ток срабатывания составляет 22 мА, а сопротивление обмотки - 630 Ом. Таким образом, устройство К3 сработает при напряжении на эмиттере VT113,9 В. Благодаря включению резисторов R4 и R5 остальные два реле срабатывают при более высоком напряжении на эмиттере транзистора. Реле К2 срабатывает при напряжении 20,5 В, а реле К1 - при напряжении 23,3 В. Максимально допустимое напряжение на обмотке реле указанного типа составляет 36 В. Его контакты позволяют коммутировать переменное напряжение частотой 50 Щ и напряжением до 250 В при токе активной нагрузки до 0,3 А. Отсюда, каждая гирлянда может быть собрана из 9 соединенных последовательно лампочек накаливания типа МН26-0Д2, рассчитанных на номинальное напряжение 26 В и ток 0,12 А.

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

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

Схема бегущих огней на микросхемах К561ЛА7 и К561ИЕ8

Схема достаточно простая состоит из двух микросхем и десятка светодиодов, которые поочередно загораются.

Для регулировки скорости бегущих огней используется потенциометр R2.

Сегодня мы немного усовершенствуем наш проект, заодно и повторим битовые сдвиги, и не только повторим, а и увидим их смысл в деле. Мы применим данные сдвиги для того, чтобы наши светодиоды, находящиеся в матрице, мигали один за другим поочерёдно, за счёт чего наша схемка приобретёт ещё более живой вид.

Для этого нам потребуется уже не один светодиод. У меня на этот счёт имеется светодиодная планка или матрица. Я её поместил в беспаечную макетную плату, катоды всех светодиодов соединил вместе и подключил к общему проводу, а аноды каждый через токоограничивающий резистор подключил к соответствующим ножкам порта D. Вот так это всё выглядит (нажмите на картинку для увеличения изображения)

Поэтому, как обычно, по старой доброй традиции мы запускаем Atmel Studio , создаём в ней проект, выбрав тот же самый микроконтроллер Atmega8a , назовём проект Test03 . Таким же образом в качестве отладчика выберем simulator, и также, чтобы сэкономить наше драгоценное время, скопируем весь код из файла main.c прошлого занятия.

Начнём писать код. Сначала мы в функции main() создадим целочисленную короткую беззнаковую переменную

int main (void )

unsigned char i ;

Порт также оставляем на выход, и сразу на данном порте включим нулевую ножку в 1

DDRD = 0xFF;

PORTD = 0b00000001 ;

А в бесконечном цикле мы создадим цикл другого типа — типа for . Данный цикл уже является конечным и работает он следующим образом

Данный цикл немного сложнее и условие в скобках здесь уже состоит из трёх частей, но я думаю, мы разберёмся. Мы ещё не с таким впоследствии разберёмся. Применим цикл данного типа в нашем коде:

while (1)

for (i =0;i <=7;i ++)

{

Delay_ms (500);

}

В данном цикле у нас будет пока только задержка, остальной код мы уберём. То есть тело нашего цикла будет у нас выполняться до тех пор, пока переменная i у нас не достигнет значения, большего или равного 7 . То есть получится, что наше тело будет выполняться ровно 8 раз, затем мы выйдем из данного цикла и благодаря бесконечному циклу заново в него войдём и наш восьмикратный процесс повторится сначала.

А вот теперь сдвиг. Вставим его до задержки

PORTD =(1<<i );

Delay_ms (500);

Как мы видим, данный сдвиг мы применяем к регистру, отвечающему за состояния порта D , и в нём мы будем сдвигать единичку влево на величину нашей переменной i , а так как данная переменная с каждым циклом увеличивается на 1 (или инкрементируется ), то, соответственно, наша единичка постепенно раз в полсекунды будет двигиться влево, также как и лапки порта, за которые отвечает каждый бит нашего регистра. И тем самым мы и получим эффект бегущего огня.

Давайте соберём наш проект. И, также как и на прошлом занятии скопируем файл протеуса с прошлого занятия и переименуем его в Test03 . Откроем его, заменим файл прошивки в свойствах контроллера.

Также добавим ещё 7 светодиодов и 7 резисторов, так как показано на схеме. Можно применять операцию копирования. Как это делается, показано в видеоуроке.

Запустим проект в протеусе и увидим, что наши светодиоды мигают поочерёдно, создавая впечатление эффекта бегущего огня

Теперь прошьём настоящий контроллер и увидим уже результат на практике. Это, конечно, намного интереснее, чем в протеусе. Как всё это выглядит, можно увидеть в видеоверсии урока, ссылка на который находится ниже и доступна с помощью нажатия на картинку.

Post Views: 10 673

В настоящее время в интернете море схем с бегущими огнями. В нашей статье рассмотрим самую простую схему, собранную на двух популярных микросхемах: таймере 555 и счетчике CD4017.

Будем собирать вот по этой схеме (для увеличения кликните по ней):

Схема не очень сложная, как кажется на первый взгляд. Итак, чтобы ее собрать, нам потребуются:

1) три резистора номиналом: 22 КилоОма, 500 КилоОм и 330 Ом

2) микросхема NE555

3) микросхема CD4017

4) конденсатор на 1 микрофарад

5) 10 советских или китайских светодиодов на 3 Вольта

Распиновка 555


В настоящее время большинство микросхем производят в так называемом DIP корпусе . DIP – от англ. – Dual In-line Package, что в дословном переводе означает как “двухрядная сборка”. Выводы микросхем в корпусе DIP находятся в противоположных сторонах друг от друга. Расстояние между выводами в основном 2,54 мм, но есть также и исключения. В зависимости от того, сколько выводов имеет микросхема, так и называется корпус на эту микросхему. Например микросхема 555 имеет 8 выводов, следовательно, ее корпус называется DIP-8.

В красных кружочках я пометил так называемые “ключи”. Это специальные метки, с помощью которых можно узнать начало маркировки выводов микросхемы


Первый вывод как раз находится рядом с ключом. Счет идет против часовой стрелки


Значит, на микросхеме NE555N выводы нумеруются таким образом:


Все то же самое касается и микросхемы CD4017, которая изготовлена в корпусе DIP-16.


Нумерация выводов идет с левого нижнего угла.

Сборка устройства

Собираем наши бегущие огни. На макетной плате они выглядят примерно вот так:


А вот работа схемы в действии:

Работает вся схема таким образом: на таймере 555 собран генератор прямоугольных импульсов. Частота следования импульсов зависит от резистора R2 и конденсатора С1. Далее эти прямоугольные импульсы считает микросхема счетчика CD4017 и в зависимости от количества прямоугольных импульсов, выдает сигналы на свои выводы. Когда в микросхеме счетчик переполняется, все начинается сначала. Светодиоды моргают по кругу, пока на схеме есть напряжение.

Имейте ввиду, что аналогов микросхем 555 и CD4017 туева куча. Есть даже советские аналоги. Для таймера 555 это КР1006ВИ1, а для микросхемы счетчика К561ИЕ8.