DMD_STM32 - версия библиотеки DMD для СТМ32Дуино

FoxJone
Offline
Зарегистрирован: 19.04.2019

Это мы про версию v0.6.3 говорим?

Потому что я там этого параметра не нашел ни поиском, ни даже глазами пробежал класс ДМД...

b707
Offline
Зарегистрирован: 26.05.2017

FoxJone пишет:

Это мы про версию v0.6.3 говорим?

Потому что я там этого параметра не нашел ни поиском, ни даже глазами пробежал класс ДМД...

строка 221 файла DMD_STM32a.h

FoxJone
Offline
Зарегистрирован: 19.04.2019

Я, лошара, оказывается не ту версию ковырял! (фейспалм.жипег)

Сегодня я первый раз вижу и пробую 063...

b707
Offline
Зарегистрирован: 26.05.2017

FoxJone пишет:

Я, лошара, оказывается не ту версию ковырял! (фейспалм.жипег)

Сегодня я первый раз вижу и пробую 063...

это параметр точно был и раньше :) Но может быть не был вынесен в базовый класс :)

FoxJone
Offline
Зарегистрирован: 19.04.2019

Все, побежали 2 марикуе в разные стороны и с разными скоростями. Правда пришлось в библиотеке продублировать дравмарикуе и степмарикуе.

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

b707
Offline
Зарегистрирован: 26.05.2017

FoxJone пишет:

Все, побежали 2 марикуе в разные стороны и с разными скоростями. Правда пришлось в библиотеке продублировать дравмарикуе и степмарикуе.

кривизна сплошная. сорри

 

b707
Offline
Зарегистрирован: 26.05.2017

Проект закрыт.

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Развиваться дальше не будет?

b707
Offline
Зарегистрирован: 26.05.2017

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

Посмотрел на ваши часы - надо на есп32 переходить

jdigreze
Offline
Зарегистрирован: 14.01.2018

b707 пишет:
Посмотрел на ваши часы - надо на есп32 переходить

Готов поделиться своими наработками под есп32.

P.S. Все руки не доходят вписать поддержку SM16188...

FoxJone
Offline
Зарегистрирован: 19.04.2019

b707 пишет:
Посмотрел на ваши часы - надо на есп32 переходить

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

А по поводу часов весь проект могу повторить одним скрином 

Вот тебе и полноцвет, вот тебе и вайвай, вот и часы, вот и управление хоть с ноута, хоть со смарта (иос и андроид - при том интерфейс намного повеселее). И лично я такой контроллер последний раз покупал по 270 рублей - опитом)

ЗЫ. В описании там набрехали, кстати, похоже просто копипастили с другого товара. Вот от производителя:

Support Module

Support HUB75port full color module, support normal and ICN2038 IC

Scan mode

Support static to 1/32S

Control range

640*32、320*64

 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

HUIDA какая-то. 

b707
Offline
Зарегистрирован: 26.05.2017

Евгений, привет!
Ты прав, в плане роста мне самому этот проект очень многое дал. Огромное спасибо тебе за помощь и толчки в нужном направлении. Без них я бы бросил давно :)

Если есть еще идеи по развитию - пиши( в почту), подумаем.
Но хочется двигаться дальше...

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Зря Вы говорите что нет спроса.
Очень универсальное решение, просто народ не понял еще ))

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Этот контроллер может получать данные с внешних устройств? Может парсить данные от API сервисов?

b707
Offline
Зарегистрирован: 26.05.2017

Antsanv пишет:

Очень универсальное решение....

ага, универсальное :)

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

p.efremov
Offline
Зарегистрирован: 14.03.2018

Доброго времени.

Подскажите - как связаться?

Есть пару вопросов по поводу библиотеки :)

 

FoxJone
Offline
Зарегистрирован: 19.04.2019

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

Ну и если у вас действительно массовый интерес, то готовые контроллеры в серии у меня есть)

p.efremov
Offline
Зарегистрирован: 14.03.2018

Если это мало кому интересно - решил не засорять ветку.

Вопрос такой - есть странная панель 128*64.

Название K716-128x64-32S-v3.2

Я думал все просто - выбрали шаблон 64*64 S32, указали подряд 2 модуля и получили работающую панель. (До этого панели 128*64 были как физически 2 последовательные панели 64*64 S32)

Но дисплей молчит как партизан.

Есть готовый контроллер на STM (С переключением логики 3.3в \ 5в) - все варианты перепробовал - тишина.

Есть готовые контроллеры на Arduino (Использовал с панелями 64*32 но 16s) - думал ну хоть помехи будут, все равно тишина.

Сейчас откопал плату для Raspberry от амперки - попробую завести на ней, но не думаю что получится что-то.

Что самое интересное - это какие то нонейм микросхемы на ней.

Буффер вроде стандартный 74HC245C

А вот сдвиговые регистры непонятные - FM 6353B SK07623.

И не пойму в какую сторону копнуть.

Еще странно что распиновка HUB75E не нанесена на плате, но для китайцев это обычное дело. 

 

b707
Offline
Зарегистрирован: 26.05.2017

p.efremov,
очень странно то, что панель никак не реагирует. При неверном типе сканирования на экране должен быть цветной мусор вместо картинки, но хоть какие-то пиксели светится должны.
То, что панель черная, намекает на аппаратные проблемы. Вы уверены, что она вообще работает?

FoxJone
Offline
Зарегистрирован: 19.04.2019

FM 6353B достаточно специфичный китайский чип, его даже и не всякий стандартный контроллер понимает (хотя новые то все поддерживают).  Если вам нужна  панель для какого то проекта, то проще заменить на что то более традиционное. А если горит зажечь именно эту - пробуйте, если получится, расскажите нам, пожалуйста.

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

b707
Offline
Зарегистрирован: 26.05.2017

7-миполосный эквалайзер на чипе BA3834 с выводом на RGB матрицу 64х32 под управлением кода из этой ветки

https://youtu.be/TIF4SOA6obA

На ПК проигрывается рекламный видеоролик покупного эквалайзера DMS 307, звук отправляется на вход чипа 7-миполосного фильтра ba3834 и результат выводится на матрицу под экраном

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

 

Жена сказала - "первая стоящая вещь, которую ты сделал на этих матрицах" :)

p.efremov
Offline
Зарегистрирован: 14.03.2018

Доброго всем времени.

Нашлась еще одна панель 128*64 Unilumin

Тут странности продолжаются - у него всего 3 линии АВС (D и E отсутствуют = GND)

Пробовал в библиотеке выставить mux_cnt - 3 - не работает.

Панель при этом хотя бы моргает, значит до нее доходит что-то. Что уже радует.

Что можно посмотреть?

Скан у нее 32, микросхемы - 2038S

p.efremov
Offline
Зарегистрирован: 14.03.2018

Сообщение задвоилось

p.efremov
Offline
Зарегистрирован: 14.03.2018

b707 пишет:
p.efremov,
очень странно то, что панель никак не реагирует. При неверном типе сканирования на экране должен быть цветной мусор вместо картинки, но хоть какие-то пиксели светится должны.
То, что панель черная, намекает на аппаратные проблемы. Вы уверены, что она вообще работает?

Видимо по аналогии с 6126A надо инициализировать.
Купил контроллер HD D15, обе панели работают.

Я начал уставать уже от чтения и изучения.
Помоги, пожалуйста. Не бесплатно.
Напиши, если не сложно на p.efremov@plc36.ru.

b707
Offline
Зарегистрирован: 26.05.2017

p.efremov пишет:
Я начал уставать уже от чтения и изучения. Помоги, пожалуйста. Не бесплатно. Напиши, если не сложно на p.efremov@plc36.ru.

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

Я с таким контроллером дела пока не имел, поэтому мой код ни при каких настройках работать с этой матрицей не будет

p.efremov
Offline
Зарегистрирован: 14.03.2018

b707 пишет:

p.efremov пишет:
Я начал уставать уже от чтения и изучения. Помоги, пожалуйста. Не бесплатно. Напиши, если не сложно на p.efremov@plc36.ru.

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


Я могу отправить панель. Удалённо не вариант?

b707
Offline
Зарегистрирован: 26.05.2017

а вы где территориально?

p.efremov
Offline
Зарегистрирован: 14.03.2018

b707 пишет:

а вы где территориально?


Россия, Воронеж

b707
Offline
Зарегистрирован: 26.05.2017

Ок, я вечером напишу на почту

b707
Offline
Зарегистрирован: 26.05.2017

p.efremov пишет:

Нашлась еще одна панель 128*64 Unilumin

Тут странности продолжаются - у него всего 3 линии АВС (D и E отсутствуют = GND)

Скан у нее 32, микросхемы - 2038S

Запустили с p.efremov панель 128*64 Unilumin на версии 0.6.3 c минимальным добавлением кода из PxMatrix. Оказалось, Ммультиплекс управляется сдвиговым регистром, пин А - Clock, B - Enable, C - Data.

Так что может будет и еще одно обновление :)

halabala
Offline
Зарегистрирован: 11.11.2021

Дмитрий, а с такими панельками возможно подружить -  P4,75 1R1G 16S   ??

 

b707
Offline
Зарегистрирован: 26.05.2017

halabala пишет:

Дмитрий, а с такими панельками возможно подружить -  P4,75 1R1G 16S   ??

1R1G - это двухцветная красно-зеленая? вроде после появления RGB они потеряли актуальность

FoxJone
Offline
Зарегистрирован: 19.04.2019

Если 16S, то это RGB. Там наверное очепятка...

halabala
Offline
Зарегистрирован: 11.11.2021

Да, двухцветная. Я ограничен в выборе, так что для меня пока актуальны. 64x32. Возможно?

halabala
Offline
Зарегистрирован: 11.11.2021

Точно RG

halabala
Offline
Зарегистрирован: 11.11.2021

b707 пишет:

halabala пишет:

Дмитрий, а с такими панельками возможно подружить -  P4,75 1R1G 16S   ??

1R1G - это двухцветная красно-зеленая? вроде после появления RGB они потеряли актуальность

Есть небольшой проект. Как с Вами можно связаться?

b707
Offline
Зарегистрирован: 26.05.2017

halabala пишет:

 Как с Вами можно связаться?

dd собака jwee.ru

b707
Offline
Зарегистрирован: 26.05.2017

Переделываю тайминги класса DMD_RGB... Показалось полезным сделать управление пином OE во всей библиотеке единообразно - через PWM Таймера3.  Оно и сейчас так во всех режимах, кроме RGB 4битцвет, а в этом последнем - через ногодрыг.

Появится возможность управлять яркостью RGB матрицы не заданием более "тусклых" или "ярких" цветов (как это сделано во всех аналогичных либах  типа RGBMatrixPanel) - а как в монохроме, просто скважностью PWM сигнала. Отпадает необходимость пересчитывать цвета при изменении яркости.

Из минусов - появится проблема совместимости по пинам со старыми версиями. PWM задает более жесткие требования к выбору пина для OE - он должен быть одним из выходов Таймера3 ( PA6,PA7,PB0 PB1 ). То есть если у вас уже сделана плата для работы с RGB, где ОЕ выбран не из этих пинов - с новыми версиями библиотеки эта плата работать не будет.

Если есть возражения - пишите.

 

FoxJone
Offline
Зарегистрирован: 19.04.2019

Возражений нет.

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

Дмитрий, если не трудно, шепни на ушко какие в таком случае пины надо мне пользовать? С меня контроллер. Ушко знаешь :)

b707
Offline
Зарегистрирован: 26.05.2017

FoxJone пишет:

если не трудно, шепни на ушко какие в таком случае пины надо мне пользовать?

хорошо, отпишусь. Но не сразу сейчас, я сам еще не определился с окончательным дизайном.

jdigreze
Offline
Зарегистрирован: 14.01.2018

b707 пишет:

Если есть возражения - пишите.

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

b707
Offline
Зарегистрирован: 26.05.2017

Обновление - версия v0.6.8

  https://github.com/board707/DMD_STM32/tree/dev-V2

   Изменения:

  Как писал ранее -  Переделал контроль яркости для RGB панелей через ШИМ, синхронизированный с основным циклом сканирования матриц. Теперь управление яркостью делается одинаково для всех типов матриц, посддерживаемых библиотекой, - через функцию

1dmd.setBrightness(br);  // br - brightness (0-255)

Как следствие - для пина ОЕ теперь можно использовать только выходы Таймера 3 - то есть пины PA6,PA7 PB0 PB1

 Так же попытался вычистить все предупреждения компилятора. Еще много мелких изменений и исправлений.

 

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

День добрый.

Тестирую новую версию и есть некорректная работа с кириллицей.

Как я понял с определением длины строки при передаче в функцию.

01utf8_rus(k, (const unsigned char* )text);
02        lenText = strlen(k);
03        for (size_t i = 0; i < lenText; i++) {
04            Serial2.print("i: "); Serial2.println(k[i]);
05        }
06         
07        strWidth = dmd.stringWidth(k, lenText);
08        Serial2.print("strWidth: "); Serial2.println(strWidth);
09        Serial2.print("lenText: "); Serial2.println(lenText);
10        posX = (32*DISPLAYS_ACROSS)-1;
11        posY = (16*DISPLAYS_DOWN - heightFont)/2 - 1;
12        if (posY < 0) posY = y;
13        dmd.drawMarquee(k, lenText, posX, posY);

Допустим text это ЫTR

Выводится только Ы и 2/3 буквы Т

Если пишу dmd.drawMarquee(k, lenText+30, posX, posY);, например, то выводятся все три буквы.

Такая же ситуация с drawMarqueeX (там она сама длину определяет).

С латиницей все корректно работает. В первой версии библиотеки этот код тоже работал нормально с кириллицей.

b707
Offline
Зарегистрирован: 26.05.2017

Antsanv - уточните, какой фонт используете. И, на всякий случай, какая версия библиотеки (указана в заголовке файла SMD_STM32a.h)

Вы показали кусок кода, где выводите строчку посимвольно и параметры strWidth и lentext. Можете показать вывод консоли. что печатается?

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Фонт сам создавал

 DMD_GFX_Font arialcyrex9((uint8_t*)&arialcyr9pt7b,(uint8_t*)&arialcyr9pt8b_rus, 0x80, 13);

Библиотека Обновление - версия v0.6.8

Вот например 22 Декабря 2021, среда. Выводится только 22 Декаб и часть буквы р

11:23:00.884 -> i: 2
11:23:00.884 -> i: 2
11:23:00.884 -> i:  
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i:  
11:23:00.884 -> i: 2
11:23:00.884 -> i: 0
11:23:00.884 -> i: 2
11:23:00.884 -> i: 1
11:23:00.884 -> i: ,
11:23:00.884 -> i:  
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> i: ⸮
11:23:00.884 -> strWidth: 225
11:23:00.884 -> lenText: 22
 
Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Вот ЫTR

11:23:18.179 -> i: ⸮
11:23:18.179 -> i: T
11:23:18.179 -> i: R
11:23:18.179 -> strWidth: 42
11:23:18.179 -> lenText: 3
 
b707
Offline
Зарегистрирован: 26.05.2017

спасибо за инфо. вечером посмотрю и отпишусь.

Еще просьба - можете мне на почту прислать этот фонт?

Antsanv
Antsanv аватар
Offline
Зарегистрирован: 18.12.2018

Отправил фонты.
Если надо, могу весь код выслать.

b707
Offline
Зарегистрирован: 26.05.2017

спасибо, пока не надо