RGB светильник или лампа настроения на ATtiny13

На носу Новый год, праздничное настроение, разноцветные огни… И конечно нужно задуматься о новогодних подарках для своих близких. Вы уже придумали что подарить? Я долго размышлял над этим и решил что лучший подарок, это подарок сделанный своими руками. В результате чего была затеяна данная конструкция RGB светильника. Её можно использовать везде и как угодно, она интуитивно понятна и проста, а значит понравится любому человеку. Функция светильника очень проста: освещать окружающий интерьер различными меняющимися цветами. Для этой нехитрой задачи пойдёт практически любой микроконтроллер, но я остановился на AVR микроконтроллере Attiny13, так как он достаточно распространён, дешёв и у меня его много. В качестве светодиода я использовал матовый RGB светодиод с четырьмя выводами, с общим катодом.

Принципиальная схема RGB светильника:

Принципиальная схема RGB светильника

На схеме указано подключение RGB светодиода с общим анодом.

Но во время разработки я наткнулся на одну неприятность, у микроконтроллера Attiny13 всего лишь два аппаратных ШИМ выхода на таймере 0 и на этом всё. Ох, а нужно ведь три ШИМа, на три цвета… И засада, таймер в МК один… Поэтому я решил поизвращаться и реализовал три программных ШИМа на таймере 0, получилось очень даже хорошо, но, данный метод плох тем что частота этого ШИМа получается низка. И чтобы не было видно мерцаний светодиода пришлось запускать микроконтроллер на частоте 9,6 МГц. Прошивку я писал в среде BASCOM-AVR. Главное что всё работает! 

  

Питание RGB светильника осуществляется от двух мизинчиковых батареек AA типа по 1.5 вольт каждая. В сумме получается 3 вольта, то что нужно устройству. Для удобной эксплуатации светильника батарейки вставляются в специальный для них отсек, который я приобрёл в радио магазине. Светодиод нужно использовать RGB с четырьмя выводами, общим выводом может быть как анод так и катод, от этого поменяется только подключение светодиода по схеме, плата и прошивка. Микроконтроллер Attiny13 можно использовать с любыми буквенными индексами, в любом корпусе (желательно в DIP чтобы подходил на плату). Для установки микроконтроллера используйте панель DIP-8, это позволит быстро и удобно извлечь микроконтроллер из платы в случае замены или прошивки.

 

Прототип RGB светильника на макетной плате с механическими контактами:

Сам светильник я реализовал на круглой печатной плате диаметром 5 см. Плата сделана по ЛУТ технологии на стеклотекстолите, чтобы плату сделать абсолютно круглой я сначала её высверлил и обработал напильником по контуру окружности. Для наилучшего качества я рекомендую, сначала, перевести рисунок на квадратный кусок текстолита, протравить его в растворе хлорного железа или медного купороса и лишь потом, по контуру окружности рисунка, высверливать и подгонять, круглую плату. Рисунок печатной платы я делал в программе Sprint Layout 4.0, исходные файлы платы вы можете найти ниже.

T13RGBA.LAY — Файл печатной платы светильника под светодиод с общим анодом
T13RGBK.LAY — Файл печатной платы светильника под светодиод с общим катодом

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

RGB светильник без корпуса (плата и отсек для батареек):

Для работы светильника нужно прошить микроконтроллер соответствующей прошивкой, для этого вам потребуется программатор AVR микроконтроллеров. Программатор можно использовать практически любой, главное чтобы он поддерживал ISP режим и микроконтроллер Attiny13. Я написал две версии прошивки, одна для светодиода с общим анодом, другая для светодиода с общим катодом. Файлы прошивки и исходники в среде BASCOM-AVR вы можете найти ниже.

FWT13RGBA.HEX — Файл прошивки светильника под светодиод с общим анодом

FWT13RGBK.HEX — Файл прошивки светильника под светодиод с общим катодом

Не зависимо от файла, после прошивки нужно прошить соответствующие фьюз-биты указанные ниже.

Фьюз-биты для программы PonyProg:

Фьюз-биты для программы SinaProg:

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
IC1 МК AVR 8-бит ATtiny13 1 Требуется прошивка
HL1 RGB светодиод 1
R1-R3 Резистор 100 Ом 3
R4 Резистор 10 кОм 1
С1 Конденсатор электролитический 10 мкФ 1
С2 Конденсатор керамический 0.1 мкФ 1
Кнопка с фиксацией 1
Панель для м/с DIP-8 1

Прикрепленные файлы:

  • T13RGBLED.rar (118 Кб)

Теги: