Радиолоцман Электроника en
расширенный поиск +
  

Управление подсветкой на светодиодах на микроконтроллере AVR

Оценить эту запись

Управление подсветкой на светодиодах на микроконтроллере AVR

Запись от Vadzz размещена 22.05.2013 в 11:32
Обновил(-а) Vadzz 22.05.2013 в 19:57
Метки attiny45, avr, шим

Как-то приобрел светодиодную ленту (5 метров, 300 светодиодов типоразмера 5050, яркие) в китайском интернет-магазине по хорошей цене (5 метров за 15$) с целью сделать подсветку на кухне над рабочим столом. Проверил ее и положил в тумбочку.

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

Было решено «по-быстрому» собрать какой-нибудь регулируемый ШИМ и встроить все это в системный блок и подключиться к его блоку питания, тем самым подсветка будет включаться/отключаться при включении/отключении компьютера.

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

Я не стал что-то особенное выдумывать и приобрел микроконтроллер ATtiny45 (около 3$), в котором на базе таймера можно организовать 8-разрядный ШИМ. Тем более что при таком подходе можно организовать простое управление яркостью и запоминать установленный уровень яркости (благодаря встроенной в микроконтроллер EEPROM). Своего рода диммер с дискретной установкой уровня яркости свечения.

Так и сделал. Схема простая: микроконтроллер, силовой MOSFET, дроссель и конденсатор в качестве фильтра, кнопка управления. Делал все «на скорую руку». MOSFET P3055LS и дроссель когда-то снял с убитой материнской платы, кнопка тоже с компьютерного хлама.

Печатную плату не делал, просто аккуратно вырезал дорожки на кусочке стеклотекстолита. Для подключения к компьютерному блоку питания с неисправного IDE винчестера взял коннектор питания и посадил его на свою плату. Напряжение питания +12 В используется для питания светодиодной ленты, +5 В через диод IN4007 в smd корпусе – для питания микроконтроллера.

Программу микроконтроллера писал на Си в AVR Studio. В исходнике старался все комментировать.

Поясню некоторые моменты прошивки. Управление яркостью осуществляется с помощью кнопки циклически, каждое нажатие увеличивает значение скважность сигнала ШИМ от 0 до 100%, затем цикл повторяется. Обработка нажатия кнопки, запись соответствующего значения в регистр сравнения OC1B и запись установленного значения яркости в EEPROM ведется в прерывании по изменению лог. уровня на выводе PB3. В основном цикле программы лишь одна команда, которая отправляет микроконтроллер в спячку (режим Idle).

С момента подачи напряжения питания, выполняется настройка портов ввода/вывода, периферии и режима работы микроконтроллера. Затем выполняется задержка 2 сек и плавное зажигание светодиодов до последнего сохраненного уровня яркости, после чего микроконтроллер уходит в спячку.

Микроконтроллер тактируется от встроенного RC осциллятора 8 МГц (делитель тактовой частоты на 8 отключен). Кнопка подключена к порту PB3 (PCINT5), транзистор управляется с порта PB4 (OC1B). Вывод сброса Reset потянут к питанию. Для программирования микроконтроллера использовал PonyProg.

Программирование Fuse-битов для нового микроконтроллера (у которого установлены Fuse-биты по-умолчанию) сводится к отключению внутреннего делителя тактовой частоты на 8, т.е. нужно чтобы бит CKDIV8=1. Конфигурация Fuse-битов: младший байт (Low) = E2, старший байт (High) = DF.

Во вложениях фотки платы, компьютерного стола с включенным и выключенным освещением, а также исходник и прошивка микроконтроллера.
Миниатюры
Нажмите на изображение для увеличения
Название: IMG_5644_1.jpg
Просмотров: 1808
Размер:	370.6 Кб
ID:	146   Нажмите на изображение для увеличения
Название: IMG_5645.jpg
Просмотров: 1696
Размер:	378.6 Кб
ID:	147   Нажмите на изображение для увеличения
Название: IMG_5648.jpg
Просмотров: 1536
Размер:	257.3 Кб
ID:	148   Нажмите на изображение для увеличения
Название: IMG_5652.jpg
Просмотров: 1539
Размер:	284.3 Кб
ID:	150  
Вложения
Тип файла: rar tiny45_LED_dimmer.rar (36.5 Кб, 1577 просмотров)
Размещено в ,
Просмотров 13919 Комментарии 2 Редактировать метки Отправить другу ссылку на эту запись
Всего комментариев 2

Комментарии

  1. Old Comment
    А где схема-то? Что за файлы в архиве?
    Запись от ovp размещена 20.12.2013 в 16:51 ovp вне форума
  2. Old Comment
    Аватар для Vadzz
    Цитата:
    Сообщение от ovp Просмотреть комментарий
    А где схема-то? Что за файлы в архиве?
    Извините, что долго не отвечал...
    Если актуально, то схема в архиве в формате Proteus.

    Даю ссылку на архив, где есть схема в формате JPEG.
    tiny45_LED_Dimmer_Sch_JPG
    Запись от Vadzz размещена 04.01.2014 в 23:39 Vadzz вне форума
 
Часовой пояс GMT +3, время: 13:27.
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot
Срезы портала ↓
антенны Maxtena для приложений GPS (L1, L2), ГЛОНАСС и IRIDIUM
Инновационные антенны Maxtena для приложений GPS (L1, L2), ГЛОНАСС и IRIDIUM
Спиральные и микрополосковые антенны
Лазерный дальномер Leica Disto D1
Дальномер Leica Disto D1
Дальность измерения: 0.2 - 40 м
Цена: от 4 999 руб.
Доставка: Россия
Осциллограф Rohde Schwarz RTB2002
Осциллограф Rohde&Schwarz RTB2002
Цена: от 128 тыс. руб.
Доставка: Россия
Рейтинг@Mail.ru