WS2812 - это RGB светодиод в корпусе 5050 со встроенным ШИМ-контроллером. Принцип работы такого светодиода прост: на вход Din поступает 24 бита информации о состоянии уровня цвета каждого светодиода в корпусе, после чего последующая информация передается через выход Dout на следующий светодиод.
Как результат, такие светодиоды можно последовательно объединять в ленты, длина которых ограничивается только источником питания и доступной памятью микроконтроллера.
Согласно спецификации, электрические параметры светодиода следующие:
Цвет | Длинна волны (нм) | Интенсивность (мКд) | Ток (мА) | Напряжение (В) |
---|---|---|---|---|
Красный | 620 - 630 | 550 - 700 | 20 | 1,8 - 2,2 |
Зеленый | 515 - 530 | 1100 - 1400 | 20 | 3 - 3,2 |
Синий | 465 - 475 | 200 - 400 | 20 | 3,2 - 3,4 |
Протокол общения со светодиодом достаточно прост: передача логического "0" и логической "1" происходит посредством изменения длительности положительного импульса так, как показано на рисунке.
Типичная схема включения светодиодов выглядит следующим образом:
Предлагаемый контроллер реализуется согласно следующей принципиальной схеме.
Печатная плата, которая реализует изображенную выше принципиальную схему, имеет следующий вид.
Плату необходимо изготовить на листе одностороннего фольгированного стеклотекстолита размером 26 х 38 мм. Типичная ширина дорожек равна 0,6 мм, максимальная 0,8 мм.
Компоненты размещаются в соответствии с принципиальной схемой так, как показано на рисунке ниже.
Объемный рендеринг печатной платы выглядит следующим образом:
Немного о компонентах
Разъем J1 - это micro USB, контактные площадки под него можно переделать в соответствии с разъемом, который будет иметься в наличии. Диод D1 необходим для защиты платы от переполюсовки в случае подключения питания напрямую, не через USB. Этот же диод ограничивает максимальный ток нагрузки. Светодиод D2 используется для индикации состояния контроллера в некоторых режимах роботы. Конденсаторы С1 - С3 ставить не обязательно (т.к. на светодиодных лентах с WS2812 обычно устанавливаются конденсаторы рядом с каждым светодиодом), но желательно.
Контроллер имеет три режима работы:
- Режим выбора количества светодиодов.
- Режим регулирования яркости каждого канала на всех светодиодах одновременно.
- Режим эффектов.
Назначение кнопок:
- S3 и S2 в первом режиме добавляет (+) и уменьшает (-) количество светодиодов соответственно, а во втором режиме увеличивает и уменьшает яркость выбранного канала.
- S1 во втором режиме осуществляет переход от одного канала к другому, а в третьем режиме переключает эффекты.
- Одновременное нажатие S1 и S3 осуществляет переход между режимами.
Во втором режиме при достижении максимального значения яркости на канал будет загораться светодиод D2.
Прошивка для микроконтроллера ATtiny85 написана в среде разработки Arduino IDE 1.6 с установленными платами Digispark, для управления светодиодами использовалась библиотека Adafruit NeoPixel. Прошивать микроконтроллер необходимо с помощью SPI программатора.
После травления и пайки компонентов готовая плата выглядит так:
Печатную плату можно покрыть сверху каким-либо защитным диэлектрическим слоем, например, лаком.
Работа контроллера продемонстрирована на видео.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
U1 | МК AVR 8-бит | ATtiny85 | 1 | Корпус SOP-8 | Поиск в магазине Отрон | |
R1-R4 | Резистор | 10 кОм | 4 | Типоразмер 0805 | Поиск в магазине Отрон | |
R5 | Резистор | 100 Ом | 1 | Типоразмер 0603 | Поиск в магазине Отрон | |
R6 | Резистор | 500 Ом | 1 | Типоразмер 0805 | Поиск в магазине Отрон | |
S1-S3 | Кнопка тактовая | 3 | Поиск в магазине Отрон | |||
D1 | Диод | М7 | 1 | Поиск в магазине Отрон | ||
D2 | Светодиод | 1 | Типоразмер 0805 | Поиск в магазине Отрон | ||
С1-С3 | Конденсатор | 104 | 3 | Типоразмер 0603 | Поиск в магазине Отрон | |
X1 | Вилка штыревая | 1 | Поиск в магазине Отрон | |||
J1 | Разъем | micro USB | 1 | Поиск в магазине Отрон | ||
Скачать список элементов (PDF)
Прикрепленные файлы:
- Печатная плата.dip (47 Кб)
- RGBcontrol.ino (6 Кб)
Комментарии (4) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
Как вариант можно дополнительно сделать скажем выставление очередности светодиодов. Т.е. определение очередности в массиве. Это хорошо если используется 2д или 3д изображение. А если еще добавить связь с компом и возможность записывать свою последовательность которая тебе хочется на данный момент.
Влад кондер по питанию стоит и его для столь малого потребления достаточно(он же не светики питает, а только камень).
Я бы добавил еще по конденсаторчику на кнопку чтобы дребезг сбить(или это в программе учтено програмно)