Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



WS2812B

Сообщений 31 страница 57 из 57

31

а подскажите - существует модель для протеуса на WS2812B?

0

32

Модель существует. Встроена начиная  с версии 8.
http://s8.uploads.ru/t/bXEAK.jpg

0

33

radan
хм. и ведь восьмерку поставил, а сам пользуюсь семеркой.  :tired:
спасибо! :)

0

34

и снова здрассьте. а есть у кого описание на Rainbow 1.21? не могу понять, как вызывать функции Shift_Right и прочие. пытаюсь декларировать подпрограмму - пишет Lable not found
немецкое описание на 1ю версию у меня есть, но и там синтаксис другой...

0

35

Всё есть в хелпе.

0

36

RDW
в хелпе каком? на версию 1 или на ту, что в 2.0.7.9 прошита? они разные

0

37

У тебя в программе есть по кнопке F1 хелп! Нажми и читай!

0

38

Ну или так: https://avrhelp.mcselec.com/index.html? … ainbow.htm Если последняя версия сборки Баскома.

0

39

RDW
в том-то и дело.
у меня 2.7.0.8 и библиотека 1.21, у которой синтаксис

Declare Sub Select_Rainbow(byval Channel As Byte)
Declare Sub SetColor(byval LedNr As Word , Color() as Byte)
Declare Sub Send()

в последней сборке подпрограммы вообще не описываются, сразу операторы. а в немецком мануале от v.1 тоже синтаксис вызова подпрограмм другой. я попробовал схитропопить и вызвать
Declare Sub SHIFT_RIGHT(byval Parametr As не важно ) и прочитал про Lable not found

0

40

RDW написал(а):

У тебя в программе есть по кнопке F1 хелп! Нажми и читай!

кнопка есть! и хэлп есть!! rainbow нет!!!
!
:D

0

41

Всё время забываю, что вы там пиратской кривизной всё пользуетесь...

0

42

IDok
Вот попробуй,точно не помню,но вроде работало.

+1

43

Sergik07
спасибо, вроде оно  :cool:

0

44

хосспади, коллеги! как вы со светотехникой работаете? я уже минут через 10 цветные мультики смотрю.   %-)   протеус конечно облегчает задачу, но не всегда.
ЗЫ это не вопрос, это всхнык. отвечать не обязательно :)
ну а дабы не флудить, теперь вопрос:
есть код, он реализует переливание цветов на 4х светиках. он работает. есть мысли, как его облагородить? а то я сделал тупо в лоб...

Скрытый текст:

Для просмотра скрытого текста - войдите или зарегистрируйтесь.

0

45

IDok написал(а):

хосспади, коллеги! как вы со светотехникой работаете? я уже минут через 10 цветные мультики смотрю.


Наглым образом выцыганил у жены коробку из под крема, плотная молочно-белая пластмасса, внутри светики, очень выручила.

0

46

IDok написал(а):

есть мысли, как его облагородить?
If A > 15 Then Call Swap_Color(0 ,1)
If A > 30 Then Call Swap_Color(0 ,2)
If A > 45 Then Call Swap_Color(0 ,3)

Call Swap_Color(0 ,1)
Call Swap_Color(0 ,2)
Call Swap_Color(0 ,3)

Эти участки повторяются более одного раза.
Можно выделить в подпрограмму.

Это чисто "с моей колокольни"... ;)

0

47

Nord
смысла нет. участки короткие, используются только здесь. громадянить ради этого две подпрограммы....

0

48

IDok написал(а):

смысла нет. участки короткие, используются только здесь. громадянить ради этого две подпрограммы....

А что тогда облагораживать ? ;)

0

49

Nord
если б я знал - чай сам бы ублагородил!  :D

0

50

просто может есть более изящные решения

0

51

IDok написал(а):

просто может есть более изящные решения

Нужно переходить с RGB на HSV.
Вот статья - http://bascom.at.ua/publ/hsv_to_rgb/1-1-0-100
Там ещё кое что можно оптимизировать.

0

52

radan
интересно, буду экспериментировать  :cool:

0

53

radan написал(а):

Нужно переходить с RGB на HSV.
Вот статья - http://bascom.at.ua/publ/hsv_to_rgb/1-1-0-100

Ничего не понял, если "Hue от 0 до 255", то как оно стыкуется с выше написанный "Для любых оттенка H ∈ [0°, 360°)"?
Н - тогда должна быть двухбайтовой переменой.

0

54

Далее, если весь код в итоге свелся к данным/таблицам нелинейностей светодиодов, то проще её использовать напрямую и обработка сведется к примитивному коду и быстрой работе (плюс не придется менять восприятие мира).

0

55

RDW
"Для любых оттенка H ∈ [0°, 360°), насыщенности S ∈ [0, 100], и яркости V ∈ [0, 100]:

(Мне пришлось перестроить все параметры на 256, так удобнее, не нужно проверять на корректность - используем полностью байт)"

RDW написал(а):

если весь код в итоге свелся к данным/таблицам нелинейностей светодиодов

да там же вроде разнообразные вычисления идут, после выборки из таблицы. и как напрямую вбить таблицу нелинейностей? для каждого эффекта составлять дикую ручную матрицу?
тут как я понял, меняем входящие параметры на переменные и их уже крутим\вертим хоть по циклу хоть по генератору. но базара нет - задавать входящие сложнее чем с обычным RGB. надо придумывать как крутить яркость и насыщенность

0

56

IDok написал(а):

как напрямую вбить таблицу нелинейностей?

Вообще тема известная, в инете куча инфы, можно заранее рассчитать так же таблицу нелинейности и всё. Вообще вся суть вычислений сводится как раз к отказу от таблиц, а тут гибрид. По мне нерационально. Если хотелось упростить делание эффектов, то надо пилить движок просто...

0

57

radan написал(а):

Нужно переходить с RGB на HSV.

поэкспериментировал. ну... или это надо применять на больших массивах светодиодов или я лыжи не смазал. банальный переход по цветовому пространству визуально хуже, чем обычный RGB. оттенки проскакивают слишком быстро, а основные цвета наоборот - горят долго. неравномерность в общем. хотя для больших и сложных цветовых схем оно может и лучше будет

0