Главная » Статьи » Пректы RGB LED на МК. |
Юрий Супрун Всем известно такое устройство как «цветомузыка». Обычно оно представляет собой внушительное стационарное сооружение с мощными
осветительными приборами на выходе. Как правило, такие «музыки» собирают
на основе полосовых фильтров с последующими детекторами, которые управляют выходными мощными лампами. Лампы накаливания снабжают цветными светофильтрами. Существуют и другие принципы управления световыми каналами. Хорошие возможности для реализации цветомузыки предоставляют микроконтроллеры, в частности, такой миниатюрный как ATtiny15L (ATtiny13V, ATtiny25V). В этом случае «музыка» может быть совсем крохотной и помещаться в броши или кулоне. Для разделения по каналам лучше использовать не частотное разделение,
а скорость изменения сигнала, что для игрушки не очень существенно
(программа частотного разделения слишком сложна для такого простого
микроконтроллера). Так как ATtiny15L обладает встроенным АЦП, для
реализации цветомузыки необходимо совсем мало внешних элементов. Схема совсем простая, показана на (рис. 1). Один вход (АЦП) и четыре выхода на светодиоды. Рис. 1 Светодиодов может быть и больше, причем красные, желтые и зеленые
можно включать последовательно, подбирая гасящие резисторы, а синие параллельно, так как падение напряжения на них существенно больше. Следует помнить, что ток порта микроконтроллера не должен превышать 40 мА, а общее потребление 100 мА. Для наглядности схема с дополнительными светодиодами показана на (рис. 2)
Программа цветомузыки достаточно простая. Используется одно прерывание – от АЦП, оно определяет все временные интервалы работы программы. Выделено восемь «цветовых» регистров, четыре регистра приращений и
четыре регистра отсчета, соответственно. Период анализа сигнала длится
256 циклов работы АЦП. В течение этого периода 256 раз вычисляется
модуль разности текущего и предыдущего показаний, оценивается его
величина и на основании этого производится, или не производится,
инкремент одного из соответствующих регистров приращения. Одновременно с
этим процессом происходит декремент регистров отсчета «горящих» каналов и их гашение. Пересылка из регистров приращения в регистры отсчета и зажигание нужных каналов происходит в конце периода анализа. В файле листинга даны необходимые пояснения. Оформить устройство можно в соответствии с различными вкусами потребителей: в виде присоски на лобовом стекле автомобиля, броши,
колье. В последних двух случаях понадобится предварительный микрофонный
усилитель, имеющий АРУ. Простейшая схема выглядит следующим образом (рис. 3):
Микрофон – от мобильного телефона или подобный, резистор R5 следует
подобрать таким, чтобы напряжение на коллекторе Q1 было в пределах 2…3 В. Если размеры платы желательно минимизировать, следует применять SMD
резисторы, конденсаторы, диоды, транзистор, а контроллер использовать в корпусе SOIC-8. Для тех, кто хочет иметь более эффективную АРУ, можно порекомендовать схему более сложную (рис. 4). Здесь транзистор Q4 служит нагрузкой
микрофона, каскад на транзисторе Q2 обеспечивает усиление сигнала, Q3 – эмиттерный повторитель, диоды D17, D18 детектор, конденсатор С11 выделяет средневыпрямленный уровень, который регулирует степень запирания полевого транзистора J1. Он, в свою очередь задает глубину отрицательной обратной связи каскада усиления на Q2, таким образом,
регулируя усиление. Резистор R23 подбирается таким, чтобы напряжение на выходе OUT было около 2 В.
Для прошивки микроконтроллера ATtiny15L использовался программатор
PonyProg. Он удобен тем, что не требует дополнительного источника питания (питается от СОМ порта компьютера) и не содержит микроконтроллеров. Схема программатора и программная поддержка доступна в Интернете. Если переписать программу для ATtiny13V или ATtiny25V, то
нужно собрать программатор подключаемый к USB порту, потому что PonyProg не поддерживает новые типы контроллеров. Файл прошивки имеет имя: Cvetmuz.hex , файл листинга (для любителей программирования) Cvetmuz.asm.
Для написания программы использовалась стандартная программа фирмы
Atmel – AVRStudio версия 4.12, отладка производилась с помощью VMLAB версии 3.14. Все необходимые для повторения файлы находятся в архиве. Источник: http://www.rlocman.ru | |
Просмотров: 5705 | | |
Всего комментариев: 0 | |