Плейер световых эффектов - помогите стать лучше

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Serzh2000 »

ЖАЛЬ :(
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

Мой уютный бложик... заходите!
Реклама
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Serzh2000 »

а осенью плеер световых эффектов 3 будет?
если да , то можно добавить, как в первом, V0-VZ шарики где показывает число соответствующее переменной
надоело бумажками и калькулятором пользоваться...
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

Serzh2000 писал(а):а осенью плеер световых эффектов 3 будет?
3? нет, не будет. планирую только довести до ума вторую версию.
Serzh2000 писал(а): то можно добавить, как в первом, V0-VZ шарики где показывает число соответствующее переменной
надоело бумажками и калькулятором пользоваться...
это не о плейере, а об отладчике речь :) я планирую улучшить симулятор, чтобы можно было видеть и переменные, и состояние всего остального. это, скорее всего, осенью и начну делать.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

выкладываю новую версию симулятора: https://cloud.mail.ru/public/999v%2FRYUpR6bGR

что в ней особенного:
- добавил окно Watch (глазик) для наблюдения за переменными и т.п.
- добавил закладку Debug в окне настроек - там можно регулировать способ отображения в окне Watch
- исправил несколько ошибок в работе, которые проявлялись при некоторых условиях
- добавил поддержку всех команд DIGISCRIPT второго поколения (т.е. матричные)

попутно выяснил, что некоторые функции в прошивке для МК работают не правильно, но прошивкой пока не занимался. прошивку буду исправлять после того, как получу, наконец, свои МК из Китая...

на всякий случай поясняю, как все работает.

Изображение
это закладка настроек отладки
сверху вниз:
1. показывать десятичные значения
2. показывать цвет "шариком", а не только числом
3. ограничитель числа показываемых пикселов (если их 100 - забодаешься просматривать в окне)
4. показывать "системные" параметры
5. <задел на будущее>

вот так примерно выглядит окно, когда все включено
Изображение
числовое значение цвета всегда в 16-ичном формате

информация в Watch появляется только после включения режима отладки скрипта, т.е. при нажатии на "жучка". появляются там сведения трех категорий: синим - состояние переменных скрипта, черным - состояние пикселов, красным - вспомогательные вещи (системные), которые в обычной жизни редко кому могут быть полезны. в окне Watch цвет можно выводить, как раньше, цветным кружочком, а можно только числом. все остальные значения выводятся по умолчанию в HEX, но можно добавить и вывод десятичного значения (выводится в скобках рядом с 16-ричным). по мере исполнения скрипта в Watch автоматически добавляются задействованные переменные, т.е. переменные, которые вы не изменили скриптом, не видны.

когда активирован матричный режим рисования, то в строчке Matrix mode появляется номер текущей строки или столбца, соответственно ROW или COL. Loop level показывает "вложенность" циклов - превышать вложенность более 4 недопустимо.

Пикселы в этом окне - это "внутренние", т.е. еще не выведенные наружу пикселы.

ну, вот как-то так... :)
Вложения
Screenshot_1.png
(37.74 КБ) 873 скачивания
Screenshot_10.png
(15.62 КБ) 919 скачиваний
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

На первый взгляд просто шикарно.
Еще бы вот это исправили[uquote="Dimon456",url="/forum/viewtopic.php?p=3636350#p3636350"]При добавлении и последующем удалении а потом повторном добавлении шарика предыдущее число в шарике не сохраняется, оно на единицу больше.
А так бы возможность редактирования порядкового номера шарика.[/uquote]
СпойлерИзображение
Если в Options -> Debug -> поставить Set limit of pixel count to число больше количества шариков, то окно Watch отображается не корректно.
СпойлерИзображение
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

Добавлено after 32 minutes 46 seconds:
ну, вот и исправил: https://cloud.mail.ru/public/999v%2FRYUpR6bGR

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

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

В последней версии по чему-то не работает этот скрипт, в первой версии этот скрипт работал
Спойлер

Код: Выделить всё

CLR
V0=FF
RGC
RPT
GB=V0
V0-10
WT=20
LV0>00
INF

В реальном устройстве мне так и не удалось заставить в файле PLAY.CFG

Код: Выделить всё

INIT=30
CNT=30
работать на 30 светодиодов, только заработало поместив эти две строчки в начало нулевого файла 0.sc.
На счет INIT=30 не уверен, вобще нужно или нет?
Через терминал INIT=30 не влияет на параметр TP, только CNT=30 изменяет этот параметр.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

Цветовая модель HSV.
PI управляет параметром H.
PB видимо управляет параметром V.?
Как управлять параметром S?
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

Dimon456 писал(а):На счет INIT=30 не уверен, вобще нужно или нет?
Через терминал INIT=30 не влияет на параметр TP, только CNT=30 изменяет этот параметр.
пожалуйста, не путайте терминальные команды и команды скрипта, а так же команды конфигурационного файла! в документации все детально описано - это РАЗНЫЕ команды с РАЗНОЙ областью применимости. ни одной терминальной команды не должно быть в скрипте или в конфигурационном файле! любые эффекты от их появления в "не том месте" - недокументированы, не комментируются и не обсуждаются.
Dimon456 писал(а):Цветовая модель HSV.
PI управляет параметром H.
PB видимо управляет параметром V.?
Как управлять параметром S?
нет на все три вопроса/предположения.
цветовая модель - RGB.
команда PI введена только для возможности одним байтом управлять цветом. это сделано по двум причинам: во-первых, была мысль отказаться от RGB-модели и ограничиться только 256-градусной моделью HSV (от идеи отказался после того, как в этой теме сказали "надо ВСЕ цвета"), а во-вторых, получение обычной последовательной "радуги" без индексного цвета совсем не простая задача - хотите увидеть скрипт для этого? ;)
PB определяет яркость RGB-цвета
Параметр S не используется в скрипте, при обращении к цвету по индексу принимается равным максимуму 100%.

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

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

И все таки посмотрите в последней версии программы ваш скрипт w5.sc (не работает), в первой версии программы скрипт работает
Спойлер

Код: Выделить всё

волна яркости
CLR PF=FE PB=00 VF=RD VF%20
RGC
RPT
  V0=08
  RPT
    VB*02
    VB+01
    PB=VB
    BM=TP
    WT=VF
    SLB
  LV0
  V0=06
  RPT
    VB/02
    PB=VB
    BM=TP
    WT=VF
    SLB
  LV0
INF
ARV писал(а):пожалуйста, не путайте терминальные команды и команды скрипта
Поясню:
имею мк Атмега168, по умолчанию число светиков равно 64.
Основное - лента всего 30 светиков.
1. Работаем в терминальной программе
INIT=30 не изменяет параметр TP, он по прежнему равен ТР=64,
CNT=30 изменяет параметр TP, ТР=30.

2.Работаем с sd-картой, ТР по умолчанию равен 64.
Dimon456 писал(а):В реальном устройстве мне так и не удалось заставить в файле PLAY.CFG

Код: Выделить всё

INIT=30
CNT=30
работать на 30 светодиодов, только заработало поместив эти две строчки в начало нулевого файла 0.sc.
Здесь надо бы доработать, опустить нижний минимум светиков до 15 (ленты идут минимум 15 светиков, это если не разать, значительно удобно будет).
ARV писал(а):во-первых, была мысль отказаться от RGB-модели и ограничиться только 256-градусной моделью HSV (от идеи отказался после того, как в этой теме сказали "надо ВСЕ цвета")
HSV модель задается двумя байтами 255*255, даже считать не буду сколько там цветов получается, все равно этот светодиод не отобразит и столько цветов.
ARV писал(а):а во-вторых, получение обычной последовательной "радуги" без индексного цвета совсем не простая задача - хотите увидеть скрипт для этого?
Если можно, я только светики приобрел, только начал что-то эксперементировать на реальном железе.
ARV писал(а):описанные ограничения совершенно не существенны при создании световых эффектов, для чего предназначен плейер.
Хорошо, ладно.
Я пытался получить белый цвет

Код: Выделить всё

CLR 
PI=FF
PB=FF	попытка по управлять яркостью 0-FF, яркость меняется
PM=01
PNT
PI=FF замена на PC=FFFFFF, привело к изменению на белый цвет, но PB отказался изменять яркость.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

PI=FF - это красный. PI=00 тоже красный, разница между ними - один HSV-"градус" (ну то есть 1/256 часть цветового круга).
PB не может не воздействовать на яркость, т.к. при выводе в светоидод каждая составляющая цвета RGB умножается на это значение и выводится старшая часть. В симуляторе "внутренний" цвет, естественно, не меняется, но значение яркости хранится для каждого пиксела.

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

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

скрипт "радуги" с применением индексного цвета выглядит так:

Код: Выделить всё

CLR GB=FF
RPT
   GI=V0
   WT=10
   V0-01
INF
без применения индексных цветов так (может, можно и короче, но я не придумал, хотя не сильно и старался):

Код: Выделить всё

CLR
GB=FF
V0=FF RED
V1=00 GREEN
V2=00 BLUE
VF=05 STEP
RPT
   RPT
      V3=TP
      GC=V0V1V2
      PNT
      V1+VF
      V0-VF
   LV1!FF
   RPT
      V3=TP
      GC=V0V1V2
      PNT
      V2+VF
      V1-VF
   LV2!FF
   RPT
      V3=TP
      GC=V0V1V2
      PNT
      V0+VF
      V2-VF
   LV0!FF
INF
есть разница, да? ;)

правда, второй скрипт двигает радугу "в другую" сторону... но это не принципиально

Добавлено after 8 minutes 32 seconds:
да, на счет яркости: в симуляторе уже при яркости 3F белый превращается в едва различимый серый... а другие цвета, скорее всего, вообще не будут заметны. конечно, это и от яркости монитора зависит - у меня вот так получается.

Добавлено after 13 minutes 50 seconds:
Еще, уважаемые бета-тестеры моего симулятора :) очень прошу вас запускать симулятор с опцией -D и с обязательным открыванием окна "протокола" (Log) - по мере возникновения каких-то странных ситуаций смотрите, что в логе и сообщайте мне - это поможет быстрее находить проблемы.

вот какие команды можно указывать в командной строке:
Параметры командной строки DSM2

1. Имя файла проекта для открытия при старте.
Указывается непосредственно, от других параметров отделяется пробелами.
Если имя файла (путь) содержит пробелы, то оно должно быть заключено в кавычки.
Если имя файла (пути) начинается с символа '-' (минус), то оно тоже должно
заключаться в кавычки.
Если в командной строке присутствует несколько имен файлов, открыт будет последний.

2. -D или -d
Включить режим расширенной (отладочной) информации в протоколе.
Используется разработчиком, в обычной эксплуатации не рекомендуется использовать.

3. -L <file> или -l <file>
Использовать указанный файл шаблона расположения окон/панелей.
Требования к имени файла те же, что и для файла проекта.

4. -N или -n
Сразу создать новый проект с параметрами по умолчанию
Опция игнорируется, если указан открываемый файл проекта.

5. -S <scriptfile> или -s <scriptfile>
Открыть в редакторе скриптов указанный файл.
Требования к имени файла те же, что и для файла проекта.
ошибку с нерабочим скриптом я нашел, сейчас залью исправленную версию симулятора и дам ссылку (интернет не быстрый).

Добавлено after 12 minutes 59 seconds:
Новая ссылка на симулятор: https://cloud.mail.ru/public/999v%2FRYUpR6bGR старая не действует более.
в этой версии исправил ряд прежних ошибок... сделал ли новые - не знаю :) немного переместил кнопки - по-моему, так удобнее

Добавлено after 2 minutes 43 seconds:
еще на вкладке "Other" в настройках добавил галочку Error bell - теперь, если её поставить, то будет звучать системный звук критической ошибки в момент, когда в скрипте "исполняется" команда с ошибкой в синтаксисе - позволяет быстрее находить опечатки в скрипте. сами ошибки выводятся в протокол
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

ARV писал(а):PB не может не воздействовать на яркость, т.к. при выводе в светоидод каждая составляющая цвета RGB умножается на это значение и выводится старшая часть.
Да, действительно работает

Код: Выделить всё

CMD > CLR PNT
CMD > PC=FFFFFF
CMD > PM=01 PNT			светит ярко белый
CMD > PB=01 PM=01 PNT	минимальная яркость, белый, если можно так назвать, на светодиоде все три точки видать
CMD > PB=FF PM=01 PNT	максимальная яркость, ярко белый
CMD > PB=00 PM=01 PNT	выключен, вообще ничего не светится
ARV писал(а):скрипт "радуги" с применением индексного цвета выглядит так:
К сожалению в новой программе скрипт отказался работать, в предыдущей работает.
За то в новой программе заработал ваш скрипт w5.sc.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

да что ж такое-то?! обновил в очередной раз версию - радуга точно работает в обоих вариантах :) надеюсь, ничего другого не сломал.
https://cloud.mail.ru/public/999v%2FRYUpR6bGR
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Serzh2000 »

ПОСЛЕ НАЖАТИЯ НА БУКАШКУ НОМЕРА СТОЛБЦОВ ИЗМЕНИЛИСЬ (ШАРИКИ ИЗМЕНИЛИ НОМЕРА) :shock:

Изображение
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

Serzh2000 писал(а):ПОСЛЕ НАЖАТИЯ НА БУКАШКУ НОМЕРА СТОЛБЦОВ ИЗМЕНИЛИСЬ (ШАРИКИ ИЗМЕНИЛИ НОМЕРА)
я не могу повторить этот ффект :dont_know: как вы его получили?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Serzh2000 »

Изображение Изображение Изображение Изображение Изображение

КАК ТО ТАК :dont_know:

Добавлено after 4 minutes 34 seconds:

Код: Выделить всё

CLR
   GB=FF
   GI=RD
   VF=00
     RPT
      MR=00
      PI=RD
      WT=01
      VF+01
     MSL
     LVF<20
END
    
А ЕСЛИ ТАКОЙ СКРИПТ ТО НОМЕРА ШАРИКОВ ГОРИЗОНТАЛЬНО ПУТАЮТСЯ
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

Вот видео сделал, так сказать для сравнения, сверху лента 50см на 30 светиков, снизу 50см на 15 светиков, скрипты все ваши.
В файлик 0.sc, поместил всего одну строкубыстро можно изменить с 30 на 15, от рандома придется отказаться.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18673
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

Мой уютный бложик... заходите!
Ответить

Вернуться в «AVR»