кто-нибудь работал с этими адресными светодиодами? в теории, есть библиотека Rainbow, но она только для 2.0.7.9
а без нее только через SPI? на портале световых эффектов есть пример с адресуемой лентой, но там другой чип
WS2812B
Сообщений 1 страница 30 из 128
Поделиться12017-07-31 11:12:03
Поделиться22017-07-31 13:09:59
кто-нибудь работал с этими адресными светодиодами? в теории, есть библиотека Rainbow, но она только для 2.0.7.9а без нее только через SPI? на портале световых эффектов есть пример с адресуемой лентой, но там другой чип
А вот это не поможет http://arduino.on.kg/podklyuchenie-adre … -k-Arduino ?
Тоже поглядываю на эту ленту, но руки пока не дошли...
Поделиться32017-07-31 13:21:26
есть библиотека Rainbow
А есть и другой вариант.
Поделиться42017-07-31 13:33:06
Nord
там ардуина, а я в их операторах ни в зуп ногой. ардуиньих примеров-то куча...
max
кроме различных мануалов на немецко-фашистком там нет ничего. в смысле - самой либы нет
Поделиться52017-07-31 13:50:49
Nordтам ардуина, а я в их операторах ни в зуп ногой. ардуиньих примеров-то куча...
Я тоже в ардуинах "ноль", но там даны временнЫе характеристики пакета, за это можно зацепиться.
Поделиться62017-07-31 14:04:14
Nord
да они и в даташите есть, только как их соблюсти такие?
Поделиться72017-07-31 14:15:41
Давно похожая тема возникала: Эффекты на WS2812
Поделиться82017-07-31 14:26:27
RDW
гм. ну раз исходники не выкладываете - то хоть поделитесь как управляли пикселем? а то красивых роликов понавыкладывали а нам страдать 
мне для начала просто наловчиться код в пиксель передавать, без извратов и сложносочиненных эффектов
Поделиться92017-07-31 14:31:54
Nordда они и в даташите есть, только как их соблюсти такие?
Первое, что приходит на ум - таймеры, но, думаю, что это не лучший вариант...
Второе - использовать "эмуляторы" на Ассемблере, вызывая их подпрограммами.
Для "0", "1" и стоп-бита свои...
Его NOP более "стабилен, чем Wait и Delay у Баскома.
Поделиться102017-07-31 15:30:30
в смысле - самой либы нет
Поделиться112017-07-31 16:37:36
max
сенкс!
Поделиться122017-08-01 10:15:33
при попытке скомпилировать код из даташита Баском ругается именно на строки в библиотеке. что-то типа
Error : 222 Line : -112 Illegal character [expected ), got 'e' [((250 * 1e-9) /(1 / _xtal) - 2)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -112 Illegal character [expected ), got 'e' [((1 * 1e-6) /(1 / _xtal) - 8)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -112 Illegal character [expected ), got 'e' [(ShortExpand *(1 / _Xtal)) /(1 * 1e-6)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -112 Illegal character [expected ), got 'e' [(LongExpand *(1 / _Xtal)) /(1 * 1e-6)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Поделиться132017-08-01 11:23:41
В своё время, когда начал эту тему ковырять, то народ в инете делал через SPI. Я в итоге конечно так задрачиваться не стал и сделал всё на выше описанной "RAINBOW". По этому ничего и не выкладывал, в хелпе и так понятно.
Поделиться142017-08-01 11:45:29
RDW
но у Вас 2.0.7.9 или на старой версии работает? если на старой - то что за ошибки оно мне пишет?
ну и хелп на немецком это... мда.
Поделиться152017-08-01 11:51:03
Да, у меня что-то одна из предпоследних версий (2.0.7.9, лицуха).
Отредактировано RDW (2017-08-01 11:51:30)
Поделиться162017-08-01 12:06:09
RDW
ну в этой версии вообще библиотека в комплекте. и, мне так кажется, попроще и попонятней. ладно. буду жадничать и ждать 7.9 на торрентах страны
Поделиться172017-08-01 16:14:40
Illegal character [expected ), got 'e' [((250 * 1e-9) /(1 / _xtal) - 2)]]
Он вам говорит, что найден "нелегальный" символ "е" в следующем выражении. Скорее всего он не понимает 1е-9 и 1е-6.
Насколько я знаю BASCOM не поддерживает такое описание выражений. Нужно каждое действие сделать отдельно и потом всё соединить.
Например:
A=1/_xtal
A=A-2
A=0.000000250/A
Поделиться182017-08-01 17:29:12
sva-don
гм. баском ругается на строку не программы, а библиотеки. таких выражений там не заметил, да и че б Баскому ругаться на либу, для него же и написанную? в библиотеке он подсвечивает строку с оператором End If, хотя это ничего еще не значит
Поделиться192017-08-01 20:10:24
скомпилировать код из даташита Баском ругается
Ошибок нет:
'------------------------------------------------------------------------------- ' rainbow_ws2812_Knightrider.bas ' based on sample from Galahat '------------------------------------------------------------------------------- $Regfile = "m88pdef.dat" $Crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 $lib "Rainbow1.21.lib" $external WS2812b Declare Sub Select_Rainbow(byval Channel As Byte) Declare Sub SetColor(byval LedNr As Word , Color() as Byte) Declare Sub Send() '#Rainbow0 Const Rainbow0_Len = 8 Const Rainbow0_Port = PORTB Const Rainbow0_Pin = PB0 Dim Farbe(3) as Byte ROT alias Farbe (_Base) GRN alias Farbe (_Base +1) BLU alias Farbe (_Base +2) Call Select_Rainbow(0) ROT = 200 : GRN = 200 : BLU = 0 Call SetColor(0, Farbe()) Call Send() End
Поделиться202017-08-01 20:41:03
max
Error : 222 Line : -86 Illegal character [expected ), got 'e' [((250 * 1e-9) /(1 / _xtal) - 2)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -86 Illegal character [expected ), got 'e' [((1 * 1e-6) /(1 / _xtal) - 8)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -86 Illegal character [expected ), got 'e' [(ShortExpand *(1 / _Xtal)) /(1 * 1e-6)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB
Error : 222 Line : -86 Illegal character [expected ), got 'e' [(LongExpand *(1 / _Xtal)) /(1 * 1e-6)]] , in File : C:\PROGRAM FILES (X86)\MCS ELECTRONICS\BASCOM-AVR\LIB\RAINBOW1.21.LIB

Поделиться222017-08-01 22:32:41
возможно - это происки корявых креков)
Поделиться232017-08-02 08:17:24
RDW
запросто. но 90 евро за хобби я платить не готов 
Поделиться242017-08-02 09:28:07
Решение на задержках - http://kaktusa.pl/ws2812b-led-rgb/
Поделиться252017-08-07 17:09:17
sva-don
гм. баском ругается на строку не программы, а библиотеки. таких выражений там не заметил, да и че б Баскому ругаться на либу, для него же и написанную? в библиотеке он подсвечивает строку с оператором End If, хотя это ничего еще не значит
Выражения такие в библиотеке есть! Почти в конце после картинки DRIVER
Заменил выражения в скобках на 0.00000025, 0,000001 и тд. Главное с точкой! Все скомпилировалось (версия 2,0,7,8)
Поделиться262017-08-08 11:10:14
Все скомпилировалось
Ну вот, видите, как всё просто. 
Поделиться272017-08-08 11:26:14
Работает?)
Поделиться282017-08-08 15:05:31
Работает?)
Вроде да. Пытаюсь разобраться с командами.
Пока накатал такую ерунду - 15 лэдов последовательно зажигаются прописанным цветами и сдвигаются к началу.
Как сделать переливание пока не допер(( После DATA переменную не воткнешь(( а в либе, как понимаю, для функции SetTableColor сразу ссылка на "Rainbow_colors:"
И кстати, что дают строки без понятия, но без них не работает, какие бы значения RGB не ставил!
Call Select_rainbow(0)
R = 255 : G = 255 : B = 255
Call Send()
Const Rainbow0_len = 15
Const Rainbow0_port = Portd
Const Rainbow0_pin = Pd1
Dim Color(3) as Byte
R Alias Color(_base) : G Alias Color(_base + 1) : B Alias Color(_base + 2)
dim x as integer
dim y as integer
dim z as byte
Call Select_rainbow(0) 'select Rainbow
R = 0 : G = 255 : B = 0 'define a color
Call Send()
x=1
y=0
z=0
wait x
Do
for z=0 to 6
IF Y>14 THEN Y=0
Call Settablecolor(Y , Z)
Call Send()
WAITMS 50
Y=Y+1
next z
loop
End
Rainbow_colors:
' R , G , B index
Data 255 , 0 , 0 'Red 0
Data 0 , 255 , 0 'Green 1
Data 0 , 0 , 255 'Blue 2
Data 255 , 160 , 0 'Orange 3
Data 255 , 255 , 00 'Yellow 4
Data 190 , 0 , 255 'HotPink 5
Data 255 , 255 , 255 'HotPink 6Поделиться292017-08-08 16:20:15
В настоящем Rainbow философия такая, внутрях создается массив, который равен количество WS-ок. Дальше этим массивом управляешь как вздумается (при помощи Rainbow команд). Получается как буфер. Дальше одной командой это всё выводится.
Здесь если посмотреть похожая картина, надо только привыкать к особенностям либы.
Поделиться302017-08-10 08:43:03
Alexaz
таки да - скомпилировалось! вери биг спасибо 
Похожие темы
| Ох уж эта RAINBOW О_О | Световые эффекты | 2022-06-03 |
| 3D Spectrum Analyzer uses 1280 LEDs | Световые эффекты | 2015-03-25 |
| Покупки на Aliexpress - актуально и дешево | Ищу/продам/куплю/услуги | 2019-12-24 |
| Вопросы-ответы писать только здесь | Часы на газоразрядных лампах | 2024-04-25 |
| Разработки | Часы на газоразрядных лампах | 2024-05-06 |
