Печать

Трехканальный RGB контроллер подсветки панели приборов автомобиля на Atmega8

Автор: AntonChip Опубликовано . Опубликовано в Устройства на AVR

Рейтинг:   / 6
ПлохоОтлично 
Трехканальный RGB контроллер подсветки панели приборов автомобиля на Atmega8 

Контроллер имеет на борту 3 RGB канала, которые настраиваются по отдельности. 1 и 2 каналы привязаны к первому и второму логическим входам управления. Третий RGB канал для подсветки тахометра, с этим каналом связан выход тахометра. При превышении заранее установленного числа оборотов двигателя RGB канал сначала мигает красным цветом и включается зуммер, если обороты уменьшатся цвет канала возвращается к исходному состоянию, если обороты не уменьшаются канал остается гореть красным цветом, а зуммер выключается.

Устройство реализовано на микроконтроллере Atmega8, который тактируется от внешнего кварцевого резонатора частотой 8МГц. В качестве источника напряжения 5 Вольт использован линейный LowDrop стабилизатор. Единственный управляющий элемент энкодер, который отщелкивает 24 импульса на оборот. Полевые транзисторы P-канальные, можно использовать любые принимая во внимание мощность нагрузки, я использовал транзисторы с материнской платы 06N03. Широтно импульсный сигнал для RGB каналов реализован программно.

Схема контроллера

Алгоритм работы устройства

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

Если на входе 1 лог. ноль первый RGB канал плавно потухнет с соответствующей задержкой.
Если на входе 2 лог. ноль второй RGB канал плавно потухнет с соответствующей задержкой.
Если на входе 1 и 2 лог. ноль все RGB каналы по очереди плавно потухнут с соответствующей задержкой.
Если на входе 1 лог. единица первый и третий RGB каналы плавно разгорятся с соответствующей задержкой.
Если на входе 2 лог. единица второй и третий RGB каналы плавно разгорятся с соответствующей задержкой.

Если включить контроллер с нажатой кнопкой энкодера включится функция тестирования RGB светодиодов.

В обычном режиме при повороте ручки энкодера меняется общая яркость.

Программирование настроек RGB каналов и задержек.

Если в режиме настройки кнопка энкодера не нажималась более 30 сек. произойдет автоматический выход из режима настроек с сохранением их в памяти. При нажатии на кнопку энкодера:

Число нажатий

на кнопку

энкодера

RGB Канал

Число вспышек

канала

Настраиваемый параметр

(поворотом ручки энкодера)

1 1 канал 1 Цвет
2 1 канал 2 Насыщенность
3 1 канал 3 Яркость
4 1 канал 4

Задержка плавного включения/выключения

желтый цвет - 0 сек
зеленый цвет - 1 сек
фиолетовый цвет - 3 сек
синий цвет - 5 сек
розовый цвет - 10 сек
красный цвет - 15 сек 

5 2 канал  1 Цвет
6 2 канал  2 Насыщенность
7 2 канал  3 Яркость
8 2 канал  4

Задержка плавного включения/выключения

желтый цвет - 0 сек
зеленый цвет - 1 сек
фиолетовый цвет - 3 сек
синий цвет - 5 сек
розовый цвет - 10 сек
красный цвет - 15 сек 

9 2 канал  1 Цвет 
10 2 канал  2 Насыщенность 
11 2 канал  3 Яркость 
12 2 канал  4

Задержка плавного включения/выключения

желтый цвет - 0 сек
зеленый цвет - 1 сек
фиолетовый цвет - 3 сек
синий цвет - 5 сек
розовый цвет - 10 сек
красный цвет - 15 сек

 
13

1 канал

2 канал

3 канал 

 3  Сохранение настроек в памяти

Программирование отсечки по оборотам двигателя:

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

Видео работы RGB контроллера

Обсуждение статьи на форуме

Рекомендуем посмотреть