Технический форум по робототехнике.
elmot писал(а):- что-бы такое красивое сделать?
elmot писал(а): - какую схему перемены цветов забубенить?
TedBeer писал(а):elmot писал(а):- что-бы такое красивое сделать?
http://wiki.tedbeer.net/pages/diy/img/m ... -pro-4.gif
TedBeer писал(а):Управление WS2812 используя DMA, код доступен на гитхабе.
Angel71 писал(а):я примерно на такой облизываюсь
144 диода на метр, 4метра 102$.
если новогоднее, то много чего красивого можно сделать. как вариант что-то на подобии такого шара
http://radiokot.ru/circuit/light/run/45/
хотя самое простое и быстрое - это намотать на цилиндр (и не нужно будет ленту резать).
Angel71 писал(а):5050 со встроенным ws2811 брал по 13.8$
elmot писал(а):Еще засада, что это F0, а прогать приходится по 1-проводному интерфейсу, используя DMA. Бит-банга нету, так что на 1 бит, уходящий в ленту, в памяти тратится 3 байта. Очень неэкономненько, памяти едва хватает на 60 диодов.
Dmitry__ писал(а):Как в памяти может тратиться 3 байт на один бит в ленту, если это надо делать в цикле.
TedBeer писал(а):Dmitry__ писал(а):Как в памяти может тратиться 3 байт на один бит в ленту, если это надо делать в цикле.
Ключевое слово было DMA.
У ленты своеобразный нестандартный интерфейс. Для управления идет поток данных частотой 800кГц. Чтобы поменять конкретный бит, надо в очень точный момент (точность измеряется долями микросекунд) нужно дернуть уровень. И вот попасть в этот точный момент не так просто. Любая задержка/опережение приведет в результате к смене не того бита. Как результат "уедут" цвета всей ленты.
Чтобы избежать этого используют прямой доступ, который тупо читает и пересылает данные. Т.к. дма работает на более высокой частоте, то чтобы "нарисовать" один бит потока ленты надо прочитать -дцать бит памяти.
------------------.......... Тут вот каждый символ - это бит в памяти, а на выходе получится 1 бит на более низкой частоте.