Переводчик
Мы в соц.сетях:
Коротко о сайте:
Мастер Винтик. Всё своими руками!
– это сайт для любителей делать, ремонтировать, творить своими руками! Здесь вы найдёте бесплатные справочники, программы. На сайте подобраны простые схемы, а так же советы для начинающих самоделкиных. Часть схем и методов ремонта разработана авторами и друзьями сайта. Остальной материал взят из открытых источников и используется исключительно в ознакомительных целях.
или через форму.Программы, схемы и литература – всё БЕСПЛАТНО!Если сайт понравился, добавьте в избранное (нажмите Ctrl + D)
, а также можете подписаться на RSS новости и всегда получать новые статьи по ленте. Если у вас есть вопрос по схеме или поделке? Добро пожаловать на наш ФОРУМ! Мы всегда рады оказать помощь в настройке схем, ремонте, изготовлении поделок!
Микроконтроллер 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 программа.
Схемы стоп-сигнала “бегущие огни” своими руками на машине
Мигающие огни реализованы на микросхеме счетчике К561ИЕ8. По сути это десятичный счетчик, то есть который считает до 10, а потом “замирает”, либо начинает все сначала. Так как в нашем случае организована обратная связь, то все будет повторяться снова и снова. Вместо нашей микросхемы можно взять импортный аналог CD4017. Примечателен тот факт, что эта микросхема имеет даже те же самые выводы для обеспечения своей работоспособности, что и отечественная. Очевидно в свое время наши содрали микросхему один к одному. Но это нам даже под руку! Так вот, светодиоды на данной схеме будут загораться от HL1- HL2 до HL11 – HL12, попарно, так подключены параллельно. Как только загорается следующая пара светодиодов, предыдущая гаснет, как только гаснет пара HL11- HL12, то вновь зажигается HL1- HL2 и так до бесконечности, пока мы не отключим питание (или не сломается наша схема…). Сигнал с ножки 5 идет на ножку 15 и именно из-за этого цикл повторяется. В итоге, такое поочередное включение огней на выходе счетчика будет эмитировать бегущие огни на стоп-сигнале. Светодиоды подключены попарно так как предполагается, что бегущие огни будут перемещаться от центра стоп-сигнала к его краям. В этом случае в центре размещается пара HL1- HL2, далее по краям пара HL3-4, потом HL5-6, HL7-8, HL9-10, HL11-12. При таком монтаже светодиодов получиться эффект, когда свет перемещается от центра к концам, как мы уже сказали. Если пофантазировать, то можно придумать и свой какой-то алгоритм перемещения бегущих огней.
Первоначально мы упомянули лишь о применяемом счетчике, однако здесь используются две микросхемы. Одна из которых мультивибратор DD1 К561ЛА7, она задает импульсы с какой частотой одна пара светодиодов будет загораться за другой. Изменяя емкость конденсатора C1 вы можете менять время переключения между парами светодиодов в стоп – сигнале. Вторая микросхема-счетчик DD2 К561ИЕ8 или CD4017. Это микросхема по факту поступления на нее импульсов на 14 ногу перебирает свои выходы (3, 2, 4, 7, 10, 1, 5, 6, 9, 11). Заметьте, что микросхема имеет 10 выходов, а у нас задействовано только 6, а вот с 7 уже все идет на 15 ножку для зацикливания. То есть при необходимости можно увеличить число огней последовательно загорающихся друг за другом до 9, а 10 канал будет идти на 14 ножку.
Теперь о усилении выходного сигнала. Транзисторы VT1-VT6 служат как элементы-ключи. Плюсовой потенциал поступающий на базу со счетчика – микросхемы открывает транзистор. При этом загорается соответствующая пара светодиодов.
Если говорить о питании, то в серии микросхем начинающейся на 5 уже встроен стабилизатор, поэтому они могут работать в довольно значительном диапазоне, до 14 вольт. Для верности можно использовать LM 7809, как микросхему стабилизатор, для питания всей схемы. Они снизит напряжение до 9 вольт, а потом стабилизаторы снизят напряжение в микросхемах до 5 вольт. Ведь именно на этом напряжении работает транзисторная логика микросхем. Конденсаторы С2 и С3 являются здесь фильтрами питания, при установке в машине их применение не особо целесообразно, то есть можно без них!
Принципиальная схема стоп-сигнала с функцией “бегущие огни”. Микросхема может быть заменена на CD4017, при этом маркировка выводов при присоединении сохраняется один к одному. Если вам надо будет использовать все выходы микросхемы, то подключаем все следующим образом…
Создание гирлянды из старой клавиатуры
Для ускоренного создания гирлянды можно воспользоваться одним из самых бюджетных вариантов, связанных с разборкой старых компьютерных устройств ввода – мыши и клавиатуры.
В процессе выполнения работы вам понадобятся:
- несколько старых клавиатур, которые могут быть даже нефункционирующими;
- паяльник;
- резисторы;
- изолента или скотч;
- термоусадочные кембрики;
- припой и канифоль.
Сначала удалите провода из клавиатуры и отсоедините USB-кабель. Для повышения шансов на выполнение качественной работы вам понадобятся около 5 устройств ввода: возможно, таковые имеются у ваших друзей, близких, поспрашивайте на городском форуме.
Каждая клавиатура оснащена 3-мя светодиодами, указывающими на работу 3 основных функций изделия на кнопках Num Lock, Caps Lock и Scroll Lock. Если же вам под руку попалась ненужная геймерская клавиатура, то все будет намного проще, ведь она зачастую включает огромное количество светодиодов.
Выполните разборку изделия и вытащите из него маленькую плату с контроллером. Она будет использоваться для соединения различных лампочек. Создайте изделие из 12 элементов, подключенных к резисторам по параллельной схеме. Превышать это значение не стоит, поскольку стандартный USB-кабель, от которого питается клавиатура, передает напряжение до 5 В при силе тока 500 мА.
Рабочее напряжение отдельных элементов не превышает 5 В. При прямом подключении без резистора будет происходить перегрев, который рано или поздно приведет к перегоранию компонентов. Именно поэтому напряжение понижается за счет дополнительного сопротивления или методом попарной спайки элементов. Во втором случае каждый отдельный компонент будет понижать напряжение «своего соседа». К сожалению, такой вариант считается менее оптимальным и эффективным: лучше всего следить за установленным лимитом вольтажа и не выходить за их пределы.
Далее следует взять простой кабель и на одной из его сторон удалить оплетку, а затем выполнить пайку. После создания изделия нужной длины и формы, остается заизолировать оголенные части.
Создать самодельную новогоднюю гирлянду из светодиодов проще простого: запаситесь необходимыми элементами и инструментами, выполните расчет (с этим могу помочь специалисты) или найдите в сети любую проверенную схему подключения. Затем следуйте нашим инструкциям, и в итоге получите функционирующее, качественное и безопасное изделие.
УПРАВЛЕНИЕ
НАСТРОЙКА ОПОРНОГО НАПРЯЖЕНИЯ. Потенциометр настройки опорного напряжения настраивается “методом тыка” пока не заработает (у меня стоит в середине). Подстройка нужна при смене источника аудио или изменении его потенциальной громкости.
- Если во время работы в режиме VU метра (первые два режима) шкала всё время горит – слишком низкое опорное напряжение, Ардуино получает слишком высокий сигнал
- Если не горит – опорное слишком высокое, системе не удаётся распознать изменение громкости с достаточной для работы точностью
МОЖНО СОБРАТЬ СХЕМУ БЕЗ ПОТЕНЦИОМЕТРА! Для этого параметру POTENT (в скетче в блоке настроек в настройках сигнала) присваиваем 0. Будет задействован внутренний опорный источник опорного напряжения 1.1 Вольт. Но он будет работать не с любой громкостью! Для корректной работы системы нужно будет подобрать громкость входящего аудио сигнала так, чтобы всё было красиво, используя предыдущие два пункта по настройке.
НАСТРОЙКА НИЖНЕГО ПОРОГА ШУМОВ является очень важной, в идеале выполняется 1 раз для любого нового источника звука или смены громкости старого. Есть 3 варианта настройки:
- Ручная: выключаем AUTO_LOW_PASS и EEPROM_LOW_PASS (ставим около них 0), настраиваем значения LOW_PASS и SPEKTR_LOW_PASS вручную, методом тыка
- Автонастройка при каждом запуске: включаем AUTO_LOW_PASS, выключаем EEPROM_LOW_PASS . При подаче питания музыка должна стоять на паузе! Калибровка происходит буквально за 1 секунду.
- По кнопке: при удерживании кнопки 1 секунду настраивается нижний порог шума (музыку на паузу!)
- Из памяти (ЛУЧШИЙ ВАРИАНТ): выключаем AUTO_LOW_PASS и включаем EEPROM_LOW_PASS
- Включаем систему, источник звука подключен проводом
- Ставим музыку на паузу
- Удерживаем кнопку 1 секунду (либо кликаем кнопку 0 (ноль) на ИК пульте
- Загорится светодиод на плате Arduino, погаснет через ~1.5 секунды
- Значения шумов будут записаны в память и будут САМИ загружаться при последующем запуске!
Сердце бегущих огней
То, что AVR микроконтроллеры Atmel обладают высокими эксплуатационными характеристиками – всем известный факт. Их многофункциональность и лёгкость программирования позволяет реализовывать самые необыкновенные электронные устройства. Но начинать знакомство с микроконтроллерной техникой лучше со сборки простых схем, в которых порты ввода/вывода имеют одинаковое назначение.
Одной из таких схем являются бегущие огни с выбором программ на ATtiny2313. В данном микроконтроллере есть всё необходимое для реализации подобных проектов. При этом он не перегружен дополнительными функциями, за которые пришлось бы переплачивать. Выпускается ATtiny2313 в корпусе PDIP и SOIC и имеет следующие технические характеристики:
- 32 8-битных рабочих регистра общего назначения;
- 120 операций, выполняемых за 1 тактовый цикл;
- 2 кБ внутрисистемной flash-памяти, выдерживающей 10 тыс. циклов запись/стирание;
- 128 байт внутрисистемной EEPROM, выдерживающей 100 тыс. циклов запись/стирание;
- 128 байт встроенной оперативной памяти;
- 8-битный и 16-битный счётчик/таймер;
- 4 ШИМ канала;
- встроенный генератор;
- универсальный последовательный интерфейс и прочие полезные функции.
Энергетические параметры зависят от модификации:
- ATtiny2313 – 2,7-5,5В и до 300 мкА в активном режиме на частоте 1 МГц;
- ATtiny2313А (4313) – 1,8-5,5В и до 190 мкА в активном режиме на частоте 1 МГц.
В ждущем режиме энергопотребление снижается на два порядка и не превышает 1 мкА. Кроме этого данное семейство микроконтроллеров обладает целым рядом специальных свойств. С полным перечнем возможностей ATtiny2313 можно ознакомиться на официальной страничке производителя www.atmel.com.
Бегущие огни на светодиодах своими руками
В продаже имеется огромное количество различных мигающих цветными огоньками светодиодных девайсов, способных сделать ярче любой праздник. Зачем покупать стандартные светодиодные мигалки, когда намного интереснее за несколько часов своими руками собрать оригинальное и полностью функциональное устройство, способное переключать светодиоды в определенной последовательности, тем самым создавая эффект бегущих огней. Для начинающих радиолюбителей, эта самоделка будет замечательным проектом выходного дня.
На этом рисунке изображена схема бегущих огней на светодиодах.
Схема бегущих светодиодных огней на микросхеме NE555, CD4017, CD4022
Устройство состоит из двух микросхем, принцип работы очень простой. Задающий генератор импульсов выполнен на универсальной микросхеме NE555. Сигнал с генератора поступает на вход двоичного счетчика дешифратора CD4017 или CD4022 эти микросхемы аналогичные и полностью взаимозаменяемые. Микросхема имеет 10 выходов, к которым подключены светодиоды. При подаче тактовых импульсов с генератора импульсов на вход счетчика происходит последовательное переключение между выходами микросхемы.
Светодиоды зажигаются в строгой последовательности от 1 до 10 и поэтому получается эффект бегущих огней. Скорость переключения светодиодов регулируется за счет изменения частоты задающего генератора импульсов подстроечным резистором P1. Напряжение питания светодиодов устанавливается подбором сопротивления резистора R1. Схема питается напряжением от 5 до 15 вольт
Так же обратите внимание на нумерацию светодиодов на схеме. Если вы хотите, чтобы светодиоды зажигались один за другим, то разместите их по порядку указанном на схеме
На этом рисунке изображена печатная плата бегущих светодиодных огней на двух микросхемах.
Печатная плата бегущих светодиодных огней на двух микросхемах своими руками
Детали устройства легко помещаются на печатной плате размером 65х45 мм. Микросхемы для удобства я установил в DIP панельки, стоят копейки, в случае замены микросхемы не надо ничего паять.
Светодиоды с платой соединяются проводами. На каждый канал микросхемы можно подключить не более трех светодиодов. В своей самоделке решил поставить по два светодиода на каждый канал и разместить светодиоды один на против другого таким образом, чтобы получился круговой эффект вращения из двух точек. Вы можете размещать светодиоды в любой последовательности, создавать фигуры, вариантов много, фантазируйте…
Хочу заострить ваше внимание на том, что если будете ставить разноцветные светодиоды. На один канал можно ставить светодиоды, только одного цвета
Все потому, что у разноцветных светодиодов разное сопротивление и поэтому будет светиться только, тот у которого меньшее сопротивление. Конечно можно это дело исправить, если заменить резистор R1 перемычкой, а на каждый светодиод поставить отдельный резистор. Тогда все светодиоды будут светиться, как надо.
Моей задачей было собрать автономное, карманное устройство, которое будет служить световым дополнением к музыкальному «Бумбоксу», поэтому светодиоды и плату с батарейкой, аккуратно разместил в пластиковом корпусе от электромагнитного реле. Светодиоды залил термо клеем. Таким образом приклеил печатную плату. Поставил выключатель и один диод IN4007 для защиты устройства от переполюсовки.
Получилось симпатичное карманное устройство, которое можно взять с собой и наслаждаться бегущими по кругу светодиодными огоньками.
А, что делать если хочется подключить большую нагрузку, например светодиодные ленты? Тогда придется немного усовершенствовать схему. На каждый канал надо поставить транзисторный ключ.
В данной схеме хорошо работают практически любые транзисторы структуры n-p-n например: BD139, TIP41C, MJE13006, MJE13007, MJE13008, MJE13009, КТ815, КТ805, КТ819 и другие аналогичные подберите в зависимости от требуемой нагрузки. Все транзисторы надо закрепить на радиаторе, коллекторы транзисторов по схеме соединяются вместе, поэтому изолировать от радиатора не надо. Резисторы R1, R2, R3, R4, R5, R6, R7, R8, R9, R10 подключите к выходам микросхемы. Питание схемы возьмите от общего источника питания.
Радиодетали для сборки бегущих огней на светодиодах
- Микросхема NE555
- Микросхема CD4017 или CD4022
- Подстроечный резистор P1 на 50К
- Резистор R1 1К, R2 22К
- Конденсатор С1 220 мкФ 25В, С2 10 мкФ 25В
- Светодиоды с напряжением питания от 2 до 12В
Друзья, желаю вам удачи и хорошего настроения! До встречи в новых статьях!
Рекомендую посмотреть видеоролик о том, как сделать бегущие огни на светодиодах
Собираем «Бегущие огни» своими руками
Здесь пойдёт речь о том, как сделать бегущие огни на светодиодах своими руками. Схема устройства отличается простотой и реализована на логических микросхемах так называемой жёсткой логики – микросхемах серии ТТЛ. Само устройство включает три микросхемы.
Схема состоит из четырёх основных узлов:
генератора прямоугольных импульсов;
устройства индикации (16-ти светодиодов).
Вот принципиальная схема устройства.
Устройство работает следующим образом. После подачи питания светодиоды HL1 – HL16 начинают последовательно загораться и гаснуть. Визуально это выглядит как движение огонька слева направо (или наоборот). Такой эффект и называется «бегущий огонь».
Генератор прямоугольных импульсов реализован на микросхеме К155ЛА3. Задействовано лишь 3 элемента 2И-НЕ этой микросхемы. С 8-го вывода снимаются прямоугольные импульсы. Частота их следования невелика. Это позволяет реализовать видимое переключение светодиодов.
По сути, генератор на элементах DD1.1 – DD1.3 задаёт темп переключения светодиодов, а, следовательно, и скорость «бегущего огня». При желании скорость переключения можно подкорректировать с помощью изменения номиналов резистора R1 и C1.
Стоит предупредить, что при других номиналах R1 и C1 генерация может быть сорвана – генератор не будет работать. Так, например, генератор отказался работать при сопротивлении резистора R1 равном 1 кОм. Поэтому изменять номиналы C1 и R1 можно лишь в некоторых пределах. Если генератор не запустился, то будет постоянно светиться один из светодиодов HL1 – HL16.
Счётчик на микросхеме DD2 необходим для подсчёта импульсов, поступающих от генератора и подачи двоичного кода на дешифратор К155ИД3. По схеме выводы 1 и 12 микросхемы-счётчика К155ИЕ5 соединены. При этом микросхема будет считать поступающие на вход C1 (выв. 14) импульсы и выдавать на выходах (1, 2, 4, параллельный двоичный код, соответствующий количеству поступивших импульсов от 0 до 15. То есть на выходах (1, 2, 4, микросхемы К155ИЕ5 последовательно сменяют друг друга 16 комбинаций кода (0000, 0001, 0010, 0011, 0100 и т.д.). Далее в работу включается дешифратор.
Особенность микросхемы К155ИД3 заключается в том, что она преобразует двоичный четырёхразрядный код в напряжение логического нуля, который появляется на одном из 16 соответствующих выходов (1-11, 13-17). Думаю, такое объяснение не всем понятно. Попробуем разобраться.
Если обратить внимание на изображение микросхемы К155ИД3, то можно заметить, что у неё 16 выходов. Как известно, в двоичном коде из четырёх знаков можно закодировать 16 комбинаций
Больше никак не получится. Напомним, что с помощью четырёхзначного двоичного кода можно закодировать десятичные цифры от 0 до 15 (всего 16 цифр).
Это легко проверить, если возвести 2 (основание системы счисления) в степень 4 (количество разрядов или цифр в коде). Получим 2 4 = 16 возможных комбинаций. Таким образом, при поступлении на входы микросхемы К155ИД3 двоичного кода в диапазоне от 0000 до 1111 на выходах 0 — 15 появится логический ноль (светодиод засветится). То есть микросхема преобразует число в двоичном коде в логический ноль на выводе, который соответствует числу в двоичном коде. По сути это такой особенный дешифратор из двоичной системы в десятичную.
А почему светится светодиод? На выходе ведь логический ноль. По схеме видно, что аноды всех светодиодов подключены к плюсу питания, а катоды к выходам микросхемы К155ИД3. Если на выходе «0», то для светодиода это как бы минус питания и через его p-n переход течёт ток – светодиод светится. Если на выходе логическая единица «1», то ток через светодиод не пойдёт.
Если всё то, что было написано вам всё равно не понятно, то не стоит расстраиваться. Просто соберите предложенную схему, например, на беспаечной макетной плате и наслаждайтесь работой устройства. Схема проверена и исправно работает. Вот короткое видео работающего устройства.
Если в распоряжении уже есть стабилизированный блок питания (например, такой как этот), то интегральный стабилизатор DA1 (КР142ЕН5А) и элементы обвязки (C2, C3, C4) в схему устанавливать не надо.
Все номиналы элементов (конденсаторов и резисторов) могут иметь разброс ±20%. На работу устройства это не повлияет. Светодиоды HL1 — HL16 могут быть любого цвета свечения (красного, синего, зелёного) с рабочим напряжением 3 вольта. Можно, например, использовать яркие красные светодиоды диаметром 10 миллиметров. «Бегущий огонь» с такими светодиодами будет смотреться очень эффектно.
ОШИБКИ И FAQ
FAQ:Большинство проблем можно решить, прочитав вот эту статью: https://alexgyver.ru/ws2812_guide/
В: Купил ленту, на ней контакты G, R, B, 12. Как подключить?О: Это не та лента, можешь выкинуть
В: Прошивка загружается, но выползает рыжими буквами ошибка “Pragma message….”О: Это не ошибка, а информация о версии библиотеки
В: Что делать, чтобы подключить ленту своей длины?О: Посчитать количество светодиодов, перед загрузкой прошивки изменить самую первую в скетче настройку NUM_LEDS (по умолчанию стоит 120, заменить на своё). Да, просто заменить и всё!!!
В: Сколько светодиодов поддерживает система?О: Версия 1.1: максимум 450 штук, версия 2.0: 350 штук
В: Как увеличить это количество?О: Варианта два: оптимизировать код, взять другую библиотеку для ленты (но придётся переписать часть). Либо взять Arduino MEGA, у неё больше памяти.
В: Какой конденсатор ставить на питание ленты?О: Электролитический. Напряжение 6.3 Вольт минимум (можно больше, но сам кондер будет крупнее). Ёмкость – минимум 1000 мкФ, а так чем больше тем лучше.
В: Как проверить ленту без Arduino? Горит ли лента без Arduino?О: Адресная лента управляется по спец протоколу и работает ТОЛЬКО при подключении к драйверу (микроконтроллеру)
Аrduino и промышленные решения
Для создания более габаритных светодиодных дисплеев используются те же принципы адресации.
Для светодиодных панелей, размещаемых на улице, потребуются более мощные источники света, чем миниатюрный светодиодный дисплей. В качестве контроллеров вывода изображения используются max7219, а для коммуникации с мощными светодиодами служит драйвер питания на микросхеме ULN2803. Она имеет восемь линий коммутации управляющих сигналов, что идеально подходит для наших целей.
В конструкции рекламных дисплеев больших габаритов применяют сверхъяркие светодиоды со световым потоком 70-100 Лм.
В одноцветных (монохромных) светодиодных матрицах у каждого элемента существует два состояния: включено/выключено. Для передачи полноцветной информации используют RGB светодиоды с ШИМ-контроллерами управления яркостью для каждого цвета.
Бегущие огни на 10 светодиодах
Один из самых популярных световых эффектов это эффект бегущие огни. Визуально он выражается в том, что в цепочке каких-либо источников света, например электрических лампочек, в самом простом варианте поочередно загорается один или группа источников, расположенных один возле другого. При этом, благодаря инерции нашего зрения, создается видимость того, что источник света перемещается, «бежит» по цепочке с определенной скоростью. В качестве источников света в таких конструкциях могут использоваться не только электрические лампочки, но и, например, светодиоды.
Простое и в то же время надежное устройство, реализующее световой эффект бегущих огней, можно собрать с использованием обыкновенных светодиодов. Предлагаемая конструкция представляет собой обычный переключатель, в котором напряжение питания поочередно подается на один из десяти светодиодов.
Принципиальная схема бегущих огней
Данное устройство, основу которого составляют две микросхемы и десять транзисторов, условно можно разделить на три функциональных блока: задающий генератор, блок управления и схему индикации. Как и большинство подобных конструкций, предлагаемый модуль изготовлен с использованием счетчиков импульсов. Задающий генератор, формирующий импульсы управления, выполнен на микросхеме IC2, которая включена по схеме нестабильного мультивибратора. При этом рабочая частота задающего генератора определяется величиной сопротивления резистора R1 и значением емкости конденсатора С1. При использовании данных элементов с указанными на принципиальной схеме параметрами частота следования управляющих импульсов будет около 15 ГЦ. С выхода задающего генератора (вывод IC2/3) управляющие импульсы подаются на блок управления, основу которого составляет микросхема IC1, являющаяся счетчиком импульсов. На десяти выходах этой микросхемы обеспечивается последовательное формирование напряжения логической единицы. Первоначально на всех выходах счетчика импульсов присутствуют напряжения логического нуля. Другими словами, уровень напряжения на каждом из выходов микросхемы IC1 (выводы IC1/1-7.9-11) будет низким и недостаточным для того, чтобы открылся транзистор, база которого подключена к соответствующему выходу.
При поступлении от задающего генератора первого управляющего импульса на вход счетчика CLK (вывод IC1/14) на выходе DO0 (вывод IC1/3) сформируется напряжение логической единицы, то есть на этот выход будет подано напряжение более высокого уровня. Таким образом, на одном из выходов блока управления появится управляющее напряжение, которое подается на соответствующий вход блока индикации. В рассматриваемой схеме блок индикации выполнен на транзисторах Т1-Т10 и светодиодах D1-D10.
С выхода DO0 (вывод IC1/3) напряжение высокого логического уровня поступает на базу транзистора Т10 и обеспечивает его отпирание. В результате через открытый переход «коллектор-эмиттер» транзистора Т10 анод светодиода LD10 оказывается подключенным к плюсу источника питания, что приводит к свечению этого диода. Поступление на вход микросхемы IC1 следующего управляющего импульса от задающего генератора обеспечит формирование напряжения логической единицы на выходе DO1 (вывод 1С 1/2). При этом на выходе DO0 вновь появится напряжение низкого логического уровня, транзистор Т10 закроется, а светодиод LD10 погаснет. В то же время транзистор Т9 откроется, а диод LD9 начнет светиться.
При подаче на вход счетчика IC1 непрерывной последовательности из десяти управляющих импульсов напряжение высокого логического уровня будет поочередно формироваться на выходах DO0-DO9, чем будут обеспечены последовательные вспышки светодиодов от LD10 до LD1. Если эти светодиоды расположить один возле другого, то, как уже отмечалось, благодаря инерции нашего зрения, создастся видимость того.что светящийся диод «бежит» по цепочке. После того как на вход счетчика будет подана следующая последовательность из десяти управляющих импульсов, произойдет повторный цикл поочередных вспышек светодиодов. И так будет продолжаться до отключения питания.Остается добавить, что использование в данной схеме транзисторов Т1-Т10 в качестве управляющих работой светодиодов ключей обусловлено тем, что токовая нагрузка микросхемы IC1 весьма незначительна. Поэтому непосредственное подключение отдельных светодиодов к ее выходам может привести к неисправности микросхемы
Скетч
- p070_running_bar.ino
-
// светодиодная шкала подключена к группе пинов расположенных // подряд. Даём понятные имена первому и последнему пинам #define FIRST_LED_PIN 2 #define LAST_LED_PIN 11 void setup() { // в шкале 10 светодиодов. Мы бы могли написать pinMode 10 // раз: для каждого из пинов, но это бы раздуло код и // сделало его изменение более проблематичным. // Поэтому лучше воспользоваться циклом. Мы выполняем // pinMode для (англ. for) каждого пина (переменная pin) // от первого (= FIRST_LED_PIN) до последнего включительно // (<= LAST_LED_PIN), всякий раз продвигаясь к следующему // (++pin увеличивает значение pin на единицу) // Так все пины от 2-го по 11-й друг за другом станут выходами for (int pin = FIRST_LED_PIN; pin <= LAST_LED_PIN; ++pin) pinMode(pin, OUTPUT); } void loop() { // получаем время в миллисекундах, прошедшее с момента // включения микроконтроллера unsigned int ms = millis(); // нехитрой арифметикой вычисляем, какой светодиод // должен гореть именно сейчас. Смена будет происходить // каждые 120 миллисекунд. Y % X — это остаток от // деления Y на X; плюс, минус, скобки — как в алгебре. int pin = FIRST_LED_PIN + (ms 120) % 10; // включаем нужный светодиод на 10 миллисекунд, затем — // выключаем. На следующем проходе цикла он снова включится, // если гореть его черёд, и мы вообще не заметим отключения digitalWrite(pin, HIGH); delay(10); digitalWrite(pin, LOW); }