Страница 1 из 4

Управление яркостью множества светодиодов с одного МК

Добавлено: Пт июн 12, 2009 23:24:32
Alex_EXE
Имеем один МК, например PIC16F628A, беру его из за его низкой стоимости и наличия опыта работы с ним, нужно к нему подключить как можно больше 3-х цветных светодиодов.
Яркость меняется по 4 уровням (0-выкл, 3-максемальная яркость и 2 промежуточных) у каждого кристалла, что позволяет одному светодиоду отображать один из 64 цветов.
Как это правильно реализовать?

Примечания:
* Деталей в конструкции должно быть по минимуму, то есть введение дополнительных микросхем крайне не желательно
* Стоимость компонентов должна быть минимальным, светодиоды не учитываются
* Желательно использование PIC контроллеров, работал только с ними, но возможно использовать и другие контроллеры

Добавлено: Сб июн 13, 2009 00:31:19
Настя
Я бы так сделала.
Цена вопроса - 2 рубля за 13 сопротивлений.
Ну а вообще, задачу следует конкретизировать,
т.к. ТЗ "чем больше светодиодов - тем лучше"
сразу вызывает ассоциации об уличных
светодиодных щитах в видео-рекламой.

См. прикрепленный файл.

Добавлено: Сб июн 13, 2009 09:40:04
ARV
имхо, Настя, светодиоды логичнее управлять ступенчатым током, и потому матрица типа R-2R, как у вас на схеме, выглядит немного не в тему. я думаю, надо просто выкинуть "вертикальные" резисторы, а "горизонтальные" попарно соединить и подать на светодиоды.

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

Добавлено: Сб июн 13, 2009 09:55:14
Настя
ARV - так или иначе, идею озвучила я. Ваши "косметические"
замечания возможно будут учтены Alex_EXE.

А вы какой иной подход можете предложить с большим "плюсом"?
Я спрашиваю о принципиально ином подходе.

ПС. Разброс по яркости компенсируется дополнтельными
резисторами для каждого светодиода. Более актуальным
замечанием было бы высказывание о снижении яркости
при динамческой индикации, но вы об этом не сказали.

вот вам и ИМХО

Добавлено: Сб июн 13, 2009 10:32:16
Krik99
А чего не использовать программный ШИМ. Допустим завести всё это от таймера и юзать программный ШИМ. И тогда можно даже выжать из RGB больше оттенков. Нечего конкретного с кодом предложить не могу так как с ПИКами дело не имел.

Добавлено: Сб июн 13, 2009 10:53:08
Настя
Krik99 писал(а):А чего не использовать программный ШИМ. Допустим завести всё это от таймера и юзать программный ШИМ. И тогда можно даже выжать из RGB больше оттенков. Нечего конкретного с кодом предложить не могу так как с ПИКами дело не имел.


Афтор - писши исчо... тут аппаратный ШИМ по этой тематике
слабо прокатывает. Так, между делом почитайте
http://radiokot.ru/forum/viewtopic.php?t=16053

В рамках многозадачности "программный ШИМ" конечно реален,
но если вы это и говорите - скажите длительности импульсов
лог 1. и лог 0 для четырех градаций яркости, условные
25%, 50%, 75% и 100% и так, чтобы это явно воспринимал глаз.

Прежде чем ответить, осведомитесь вопросом импульсного
питания светодиодов, а именно соотношение частоты,
ширины управляющих импульсов и, соотв., яркости.

Прошу простить за агрессивность. Но делая такие заявления
четче говорите о решении, а не о направлении.
И не надо говорить что я знаком/а только с АВР.
Алгоритмы, они и в Африке алгоритмы.

Добавлено: Сб июн 13, 2009 11:23:14
SeamaNCOS
Для неподвижной индикации (просто светящаяся разноцветная палочка) ШИМ идеальный вариант можно подключить больше светиков.
Для механической развертки с ШИМом будет совсем нелегко для такого хороший вариант предложила Настя.
Если надо больше светиков нужно доп. микрухи (сдвигные регисры например)

Добавлено: Сб июн 13, 2009 11:24:56
Alex_EXE
В данный момент данная конструкция реализована так: временно! используются контроллер PIC16F676, к нему подключен один 3-х цветный светодиод, который управляется по шиму, также к контроллеру подключена по I2C flash память и имеется 3-х проводная шина управления. Но реализованной программе в контроллере не хватает больше чем на один 3-х цветный светодиод, к сожалению программы у меня нет, но мене такая конструкция не нравиться - вот и хочу оптимизировать.

Добавлено: Сб июн 13, 2009 11:31:03
Alex_EXE
Данная конструкция - действительно небольшое светодиодное, не коммерческое (то есть его не куда продавать не собираюсь, собираю вместе с руководителем для техникума), табло.
Принцип работы табло: записали для каждой ячейки данные во flash и она, пока эти данные не сменим, будет их циклически повторять

Добавлено: Сб июн 13, 2009 11:31:41
jonifer2009

Добавлено: Сб июн 13, 2009 11:33:30
Настя
Alex_EXE писал(а):В данный момент данная конструкция реализована так: временно используются контроллеры PIC16F676, к нему подключен один 3-х цветный светодиод, который управляется по шиму, также к контроллеру подключена по I2C flash память и имеется 3-х проводная шина управления.


I2C управление на фоне управления яркостью это пыль.
Т.е. очень мало требуется времени на ай-ту-си обмены.

О контроллерах написано во множественном числе. ОписАлись?
"который управляется по шиму" - уточните какой ШИМ,
как управляется, какие уже есть результаты управления
(т.е. есть ли четкие градации яркости)? Если да, то каковы
длительности сигналов лог 1 лог 0 для каждой из градаций?

Идеологически обоснуйте необходимость внешней памяти.
Что туда пишем/читаем и зачем?

Добавлено: Сб июн 13, 2009 11:34:17
Alex_EXE
jonifer2009 писал(а):http://www.youtube.com/watch?v=_SO1J1kP3YQ
http://www.youtube.com/watch?v=yst4eL0-Eco
какой делаете?

не 3-х мерное, а обычное плоское, 2D
Настя писал(а):О контроллерах написано во множественном числе. ОписАлись?
да, исправил

И ещё - хотелось бы управлять - хотя бы 4 такими светодиодами с одного контроллера

Добавлено: Сб июн 13, 2009 11:43:31
Настя
Alex_EXE писал(а): И ещё - хотелось бы управлять - хотя бы
4 такими светодиодами с одного контроллера


схему в студию того что наработано и кусок кода
"градация яркости - ШИМ"

Добавлено: Сб июн 13, 2009 12:27:28
Alex_EXE
Со схемой думаю всё просто: к одному контроллеру подключен один 3-х цветный светодиод – подключен к 3-м выводам контроллера (т.е. каждый кристалл к одному выводу), также у контроллера имеется 3-х линейная шина связи/управления, контроллер работает на внутреннем генераторе – т.е. ~4 МГц, и к контроллеру подключена flash память по I2C
Градация реализована на гораздо больше цветов, думаю - 256 , точно не помню
Попробую изобразить схему:
Изображение
Программа не у меня, но она уже не подойдёт, думаю написать свою, тем более что такая градация не нужна – достаточно 4, программа написана на ассемблере – в нём разбираться не хочу – напишу на Си

Контроле думаю использовать более функциональны и дешёвый – PIC16F628A, но можно и другой

Добавлено: Сб июн 13, 2009 12:38:44
Alex_EXE
Задача сводится – как к одному контроллеру подключить 4 трёх цветных светодиода с градацией яркости каждого кристалла по 4 ступеням.
Контроллер, например, PIC16F628A, но из за малого количества выводов его хватит только на 2 таких светодиода, если использовать PIC16F873A - то 4 светодиода. У контроллера зарезервировано 5 выводов на память и шину управления.

Для управления такой градацией яркости каждого кристалла, что лучше использовать ШИМ или какое-нибудь другое решение?

Добавлено: Сб июн 13, 2009 12:59:08
Настя
Alex_EXE - чтобы не тратить время, задаю вопрос - вы хорошо
понимаете какая должна быть схема под ваши задачи?

Подсказка которую я вам дала и вторая подсказка
ARV в фразе "матрица типа R-2R" вам о чем ниб говорит?
Вы хоть поняли что вам предложили?

Даю дополнительную подсказку по вашей тематике
http://www.radiokot.ru/circuit/light/run/23/
это как минимум надо сделать.

Сначала статика. Затем цветность. Затем яркость.
В заключении включите динамику.

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

Судя по вашему подходу, проект займет непотребно много
времени. Хотя, для кого-то и год не срок. Без обид.

Управление. Что понимается под "шиной" управления?
Для заливки последовательности кадров с ПК
достаточно одной цифровой линии.

Добавлено: Сб июн 13, 2009 14:09:28
Krik99
to Настя если вы считаете что управлять RGB светодиодом через ШИМ это плохой вариант, вот неплохой пример подобного устройства http://www.evilmadscientist.com/article.php/meggyjr

Добавлено: Сб июн 13, 2009 14:25:01
Настя
Krik99 писал(а):to Настя если вы считаете что управлять RGB светодиодом через ШИМ это плохой вариант, вот неплохой пример подобного устройства http://www.evilmadscientist.com/article.php/meggyjr


неплохой - это сколько?
Krik99 - будем считать что кукольное представление вам удалось.
А для тех кто не понял, говорю - по ссылке нет ни схемы,
ни явного указания на ШИМ или Pulse-width modulation (PWM),
ни исходников. Типа смотрите "система Витязь". )))

Добавлено: Сб июн 13, 2009 14:48:32
Krik99
Настя писал(а):А для тех кто не понял, говорю - по ссылке нет ни схемы,

Если не влом читать и иметь достаточное знание английского, то все ссылки можно найти в статье.

Добавлено: Сб июн 13, 2009 15:08:28
Alex_EXE
Настя писал(а):Подсказка которую я вам дала и вторая подсказка
ARV в фразе "матрица типа R-2R" вам о чем ниб говорит?
Вы хоть поняли что вам предложили?

Это отлично понятно, но я пока собираю идеи - чтобы выбрать наилучший подход, ШИМ пока более предпочтительный

Настя писал(а):Отдельно надо продумать формат записи кадров, который бы
учитывал пиксельный адрес светодиода в кадре
и его состояние (яркость и цветность).

Судя по вашему подходу, проект займет непотребно много
времени. Хотя, для кого-то и год не срок. Без обид.

Управление. Что понимается под "шиной" управления?
Для заливки последовательности кадров с ПК
достаточно одной цифровой линии.

Была разработана своя 3-х линейная шина и написана программа для ПК.
Данный проект был задуман в прошлом году и уже всё продумано, но для схемы которую я нарисовал (данная реализация работает, но она не моя)