Мне было интересно, можно ли подключить 8 отдельных светодиодов RGB, как полоса adafruit . Я видел проект Pumpkin Pi и хотел бы его построить. У меня нет желтых или красных светодиодов, но есть небольшой запас RGB.
Я знаю, что для Arduino я бы использовал резисторы 270 Ом для RGB катодов и управлял каждой яркостью по шкале 0
до 255
.
Есть ли способ сделать это на Raspberry Pi?
Обновить
Так что я изучил это немного больше. Я понял твои парни об использовании TLC5940
светодиодного драйвера.
Так что теперь я снова прошу помощи. Я подумал, 1 длинный вопрос, который в конечном итоге решает это лучше, чем куча разбросанных по стеку обмена. Теперь идет часть проводки. Я использую учебник по монтажу Arduino в качестве начала, так как я над головой. Я также имею в виду данные . По схеме пин 27 or VPRG
меня смущает. Диаграмма Arduino обоснована, поэтому я заземляюсь. , , Как мне правильно подключить это к пи? Я также думаю, мне нужны резисторы тоже ...
Извините, если это звучит действительно глупо, но я настоящий новичок в этом деле. Вы должны научиться ползать, прежде чем ходить.
Что мне нужно сделать, чтобы исправить эту схему соединений ( фризирование )?
Файл проводки fzz можно скачать с Google здесь .
Обновление 2 - после комментария
Принимая во внимание некоторые ответы и комментарии, это будет схема подключения? 330 Ом на анод. 2 кОм для закрепления 20
. Как входы от пи до чипа?
Ответы:
Я вижу две вещи, которые следует рассмотреть в этом вопросе:
Как подключиться и общаться с TLC5940
Как подключить светодиоды к TLC5940 .
Для первой части вам необходимо подключить его к контактам i2c заголовка P1 Raspberry Pi (это контакты 3 (данные) и 5 (часы)). Затем вы можете использовать контакт 1 (3,3 В) для VCC TLC5940 . Рекомендуется от 3 В до 5,5 В для входа в соответствии с таблицей. Вы также можете подключить контакт заземления от P1 (например, контакт 5) к заземлению TLC5940 . И вам потребуется дополнительный GPIO (например, контакт 7) для подключения к сигналу XLAT TLC5940, чтобы зафиксировать значение регистра сдвига.
Затем вам нужно будет настроить Pi для связи i2c: предполагая raspbian, удалить
i2c-bcm2708
из/etc/modprobe.d/raspi-blacklist.conf
, загрузить его,i2c-dev
и вы должны получить/dev/i2c-0
и/dev/i2c-1
(i2c-1
это то, что вам нужно будет использовать для Model B Rev. 2 Pis).Наконец, вам нужно будет использовать транзакцию i2c, чтобы установить значение внутреннего регистра сдвига, а затем подать сигнал XLAT (если используется вывод 7, это GPIO 4).
Я также упустил из виду вывод GSCLK. Вам нужно будет обеспечить тактовый вход, чтобы внутренний счетчик фактически увеличивался, что можно сделать из другой линии GPIO, если он настроен правильно. Я также не думаю, что шина 3,3 В будет обеспечивать достаточный ток для этого применения ( макс . 50 мА ). Если вы перейдете к шине 5 В, вы можете потреблять до ~ 300 мА , но тогда следует использовать логику 5 В для i2c (и GSCLK), что требует дополнительных компонентов.
Во второй части это звучало так, как будто вы справились с каким-то прошлым проектом Arduino, разве я не понял?
источник
Да. Вы будете использовать контакты GPIO в режиме ШИМ для управления каждой шкалой яркости. Пример проводки от wiring.org.co . Утилита GPIO и руководства от Gordons Project - еще одно место для начала
редактировать
Как отметил Алекс Чемберлен , только один вывод GPIO поддерживает ШИМ. Вы можете использовать программное обеспечение для достижения ШИМ на других выводах GPIO. Информация и примеры для C & Python .
Это может быть излишним, так как проект Pumpkin Pi требует только оранжевого света. Если у вас есть запас RGB и время для экспериментов, вы можете подсвечивать один светодиодный индикатор на RGB и смешивать их с другими, чтобы получить третичные цвета. Соотношение красного и зеленого в 2 части будет отображаться как оранжевый. Переключение половины красных светодиодов создаст иллюзию оранжевого, мерцающего желтым. Но это теория цвета ; что я не пробовал.
источник
Что-то вроде TLC5940 - хороший способ управлять несколькими ШИМ-светодиодами
Также проверьте TCA6507 в приложении «Программирование забавных огней» , хотя оно не доступно в DIP.
Изменить: Это нормально, чтобы сохранить контакт VPRG на TLC5940 подключен к земле. Это просто означает, что вы не можете использовать «точечную коррекцию» для компенсации изменений в ваших светодиодах. Если у вас есть несколько светодиодов, и вы хотите перейти на следующий уровень сложности, вы можете использовать коррекцию точек, чтобы они светились равномерно.
Резистор 2 кОм на контакте 20 необходим для установки выходного тока.
Обычные светодиоды обычно 20 мА, так что формула дает 2 К для резистораисточник
Это действительно полезная статья о том, как использовать TLC5940 с AVR: https://sites.google.com/site/artcfox/demystifying-the-tlc5940.
Это очень полезно для изучения процесса написания кода, который работает с TLC5940.
Первая версия примера кода довольно общая. Я работаю над преобразованием всех операторов #define и функций низкого уровня во что-то, что будет работать на Raspberry Pi.
источник