Мультиплексирование вывода

Тема в разделе "Посоветуйте детальки", создана пользователем NR55RU, 25 фев 2015.

  1. NR55RU

    NR55RU Гик

    Так как я в электронных компонентах не силен, прошу совета.

    В настоящий момент у меня установлено 3 RGB ленты, управляются с помощью PWM через MOSFET. Для управления каждой лентой требуется 3 канала (3 пина), в силу того что Arduino Uno не содержит 9 PWM пинов, управлять всеми 3-мя подсветками нельзя (разве что использовать их в одноцветном режиме, как пока и сделано).
    [​IMG]
    Чего я хочу добиться: Управлять подсветками (до 8 штук) с использованием фиксированного количества пинов.

    Как я это себе представляю чисто теоретически:
    Использовать сдвиговый регистр для выбора подстветки (внешнего PWM генератора).
    Записать данные во внешний генератор PWM для фактического управления.
    Получается что мне будет требоваться генератор PWM с функцией выбора устройства и судя по всему с некоторым последовательным интерфейсом.
    Все это должно мне позволить использовать фиксированное количество пинов для управления любым разумных количеством подсветок, чего собственно я и хочу добиться.

    Отсюда просьба, можете посоветовать детальки, в частности что использовать, внешний PWM генератор какой то или ЦАП или что то еще.
    Просто я вообще не очень знаком с тем какие существуют компоненты, посему и требуется помощь в определении и выборе того что мне надо для решения такой задачи. :)
    Может вообще это мультиплексирование можно организовать как то иначе ?
     
  2. vvr

    vvr Инженерище

    X-Dron нравится это.
  3. ИгорьК

    ИгорьК Гуру

    Имхо, взял бы TLC5940NT.
     
  4. Megakoteyka

    Megakoteyka Оракул Модератор

    Я делал подсветку на т.н. SPI RGB лентах, там на каждую ленту нужна всего одна нога, причем управляется каждый светодиод отдельно. Но такие ленты стоят гораздо дороже.
    А так да, можно не мудрить и попробовать программный ШИМ.
     
  5. NR55RU

    NR55RU Гик

    Это не совсем то. Каждая новая подсветка будет требовать новых выводов. Как я описал выше, меня интересует вариант использования фиксированного количества пинов для любого разумного числа подсветок, в частности до 8 штук. То есть программный вариант тут не решение :)
    Так как я не любитель переделывать схемы каждый раз когда добавляется модуль. Если изначально возможность добавления новых подсветок является требованием, то и нужно искать решение которое решает это требование :)

    О да, огромное спасибо, не знал о наличии подобных дайверов :)
    Нашел у нас в городе только TLC59171 судя по даташиту то что надо, разве что 8 канальный, но поддерживает каскадкность как сдвиговые регистры. И всего 4 пина для управления. :)

    У нас к сожалению таких лент нет, я брал простую RGB с 4-я контактами и все :)
     
  6. Unixon

    Unixon Оракул Модератор

    ATmega48 + ключи на каждые N метров ленты, связь с центром по I2C.
     
  7. NR55RU

    NR55RU Гик

    Чуть чуть не понял.
    Предположим что на ATmega48 я буду использовать только 6 имеющихся ШИМ портов, на управление одной лентой мне надо 3 порта, таким образом один ATmega48 сможет обслужить 2 ленты.
    получается на каждые 2 ленты мне нужен будет отдельный ATmega48, которые будут связанны с головным устройством .. я верно понял или что то не то ? :)
     
  8. ИгорьК

    ИгорьК Гуру

    Почитайте вот эту тему. Может, понравится. Понятно, что там надо будет добавить силовые ключи, но идея там интересная.
     
  9. Unixon

    Unixon Оракул Модератор

    Да, верно поняли. Просто ATmega48 (QFP) это достаточно выгодный вариант. Не самый компактный, но очень ходовой и относительно недорогой. Более дешевые варианты - это только ATtiny24 и ATtiny13, но из них только первый проходит по количеству каналов. BlinkM - это ровно из этой же идеи, только ATtiny45 при меньших ресурсах едва ли не дороже ATmega48.

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

    p.s. Вот хоть в вики выноси их список, честное слово... Народ все равно, упершись рогом, ставит IRF530, которые даже открыть без драйвера на затворе толком не могут.
     
    Последнее редактирование: 26 фев 2015
  10. ИгорьК

    ИгорьК Гуру

    Идея там такая, что идет управление по I2C заранее известными командами. И если это интересно, то размер ресурсов вряд-ли имеет значение - оно уже "законопачено" туда куда положено и какая разница, что оно теоретически может в принципе.
     
  11. Unixon

    Unixon Оракул Модератор

    Так можно изначально более богатое устройство сделать на той же идее. Тут единственный безусловный аргумент у тиньки - компактность.