Поддержка светодиодов c пиксельной адресацией WS2812B
Поддержка светодиодов c пиксельной адресацией WS2812B
Можно реализовать поддержку светодиодов c пиксельной адресацией WS2812B ?
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
Поддержка светодиодов c пиксельной адресацией WS2812B
А КАК ????Сергей писал(а):maxst83, можно
Качество — это делать что-либо правильно, даже когда никто не смотрит
- eugeneb
- Лейтенант
- Сообщения: 486
- Зарегистрирован: 15 авг 2016, 11:20
- Откуда: Нижний Новгород
- Имя: Евгений
- Благодарил (а): 1 раз
Поддержка светодиодов c пиксельной адресацией WS2812B
Боюсь из готовых блоков ничего не подойдёт.
Там ведь тайминги хитрые и быстрые.
Попробуйте свой блок на С наваять, чтобы
за один проход FLProg всё поле обновить.
Сколько у вас пикселей?
Там ведь тайминги хитрые и быстрые.
Попробуйте свой блок на С наваять, чтобы
за один проход FLProg всё поле обновить.
Сколько у вас пикселей?
Последний раз редактировалось eugeneb 13 ноя 2016, 18:58, всего редактировалось 1 раз.
С уважением,
Евгений Бобков
Евгений Бобков
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
Поддержка светодиодов c пиксельной адресацией WS2812B
150 LED 5 метров
Качество — это делать что-либо правильно, даже когда никто не смотрит
- eugeneb
- Лейтенант
- Сообщения: 486
- Зарегистрирован: 15 авг 2016, 11:20
- Откуда: Нижний Новгород
- Имя: Евгений
- Благодарил (а): 1 раз
Поддержка светодиодов c пиксельной адресацией WS2812B
Ну, в принципе, не очень много. 3х150=450 байт или
450х8=3600 бит нужно вытолкать за 3600х1,25=4500 мкс.
Можно попробовать на Ардуине через SPI.
Если в FLProge - блоком "Расширитель выходов 74HC595".
Вот здесь есть предложение по работе через SPI:
http://www.getchip.net/posts/119-umnye-svetodiody-ws2812b-neopixels/
Одним байтом передают два бита. В вашем случае
получится массив размером 1800 байт (или
три массива по 600 байт)
Но они отходят от спецификации, поэтому надо пробовать и смотреть, каков период выдачи по SPI,
достаточно ли это для ленты,
и не воспримет ли лента допустим
задержку между байтами за конец передачи.
Добавлено (14.11.2016, 10:18)
---------------------------------------------
Ну вот, я посмотрел осциллографом.
UNO R3
Если выдавать несколько байт за раз по SPI,
биты в пределах байта следуют с частотой 4 МГц (Т=0,25 мкс).
А между байтами - прогал длиной 1 мкс.
Кажется это допустимо.
Так что, можно работать в этом направлении.
450х8=3600 бит нужно вытолкать за 3600х1,25=4500 мкс.
Можно попробовать на Ардуине через SPI.
Если в FLProge - блоком "Расширитель выходов 74HC595".
Вот здесь есть предложение по работе через SPI:
http://www.getchip.net/posts/119-umnye-svetodiody-ws2812b-neopixels/
Одним байтом передают два бита. В вашем случае
получится массив размером 1800 байт (или
три массива по 600 байт)
Но они отходят от спецификации, поэтому надо пробовать и смотреть, каков период выдачи по SPI,
достаточно ли это для ленты,
и не воспримет ли лента допустим
задержку между байтами за конец передачи.
Добавлено (14.11.2016, 10:18)
---------------------------------------------
Ну вот, я посмотрел осциллографом.
UNO R3
Если выдавать несколько байт за раз по SPI,
биты в пределах байта следуют с частотой 4 МГц (Т=0,25 мкс).
А между байтами - прогал длиной 1 мкс.
Кажется это допустимо.
Так что, можно работать в этом направлении.
Последний раз редактировалось eugeneb 13 ноя 2016, 23:35, всего редактировалось 1 раз.
С уважением,
Евгений Бобков
Евгений Бобков
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя