Контрольная сумма выходного сигнала светодиодной ленты FastLed
Мне интересно, подключал ли кто-нибудь выход своей светодиодной ленты обратно к Arduino, чтобы считать данные и убедиться, что лента работает правильно, что-то вроде функции контрольной суммы.
Я использую библиотеку FastLed, и, похоже, это не было сделано.
Причина, по которой я хочу это сделать, заключается в том, что когда светодиод на полосе ломается, это заставляет все следующие светодиоды сильно мерцать. Мне нужно иметь возможность немедленно выключить светодиодную полосу, если она начнет мерцать, поскольку мое устройство используется в качестве визуального терапевтического средства в школе.
Я использую Arduino Due со светодиодной лентой WS2812B.
@Jorb, 👍4
2 ответа
Я не думаю, что светодиодные ленты поддерживают эту функцию, однако, вероятно, есть снижение напряжения в зависимости от того, сколько светодиодов включено. Так что вы можете проверить напряжение на конце ленты, основываясь на светодиодах, которые включены (предполагая, что вы это сохранили), и сравнить значения.
Посмотрите на время на листе 4 паспорта и на время на листе 3
Низкий бит имеет ширину 400 +/- 150 нс, за которым следует высокий бит шириной 800 +/- 150 нс
Высокий бит имеет ширину 850 +/- 150 нс, за которым следует низкий бит шириной 450 нс.
Чтобы сделать то, что вы предлагаете с контрольной суммой, вам придется сначала отправить контрольную сумму (минимум 3 байта, чтобы подделать данные для дополнительного WS2812B, например) и посмотреть, были ли правильно получены 24 бита, пока в это же время отправляются последние 3 байта.
Due может быть достаточно быстрым для этого. Я не думаю, что 16 МГц Arduino сможет.
Проверка уровня мощности на самом деле невозможна, поскольку во многих лентах питание подается в начало, середину и конец ленты, чтобы обеспечить равномерную яркость и не допустить перегрева дорожек питания ленты из-за избыточного тока.
- Управлять несколькими полосками WS2812B с разным количеством светодиодов.
- Использование аккумуляторов 18650 с повышающим преобразователем 3,7 В в 5 В.
- Нужно ли подключать светодиодную ленту WS2812 «последовательно», если я хочу адресовать каждый светодиод отдельно?
- Устранение неполадок светодиодной ленты WS2812b с кнопкой включения/выключения
- Arduino для запуска и светодиодная лента длиной до 100 м
- FastLED EVERY_N_MILLISECONDS со смещением?
- Arduino Due vs Mega 2560
- Точность часов времени Arduino