Два P10 RGB дисплея + Arduino uno
- Войдите на сайт для отправки комментариев
Пт, 09/12/2016 - 16:40
Добрый день!
Ищу совета как модифицировать билиотеку Adafruit ( https://github.com/adafruit/RGB-matrix-Panel ) для вывода бегущей строки на 2 или 3 подобных дисплея (p10 rgb).
Согласно инструкции ( https://learn.adafruit.com/32x16-32x32-rgb-led-matrix/connecting-with-ju... ) подключил всё как нужно и всё работает. При подключении второго экрана, бегущая строка просто дублируется на второй экран а не продолжается там.
Кто сталкивался или у кого есть идеи, как это реализовать. Библиотека очень удобна и понятна в использование, но ни слова не нашел про то, как обьединять дисплеи в как бы один.
У двух панелей должны быть разные физические выводы OE.
Создавать экземпляры классов нужно с указанием разных выводов OE.
RGBmatrixPanel_1 matrix(A, B, C, D, CLK, LAT, OE1, false);
RGBmatrixPanel_2 matrix(A, B, C, D, CLK, LAT, OE2, false);
не компилируется такой вариант, ошибка:
p10_matrix_test.ino:27:1: error: 'RGBmatrixPanel_1' does not name a type
RGBmatrixPanel_1 matrix(A, B, C, CLK, LAT, OE1, false);
p10_matrix_test.ino:28:1: error: 'RGBmatrixPanel_2' does not name a type
RGBmatrixPanel_2 matrix(A, B, C, D, CLK, LAT, OE2, false);
RGBmatrixPanel matrix_1(A, B, C, D, CLK, LAT, OE1, false);
RGBmatrixPanel matrix_2(A, B, C, D, CLK, LAT, OE2, false);
Нет.. тут всё дело в библиотеке её надо переписывать , у меня вот 4 панели 32х64 1/16 RGB подключены последовательно в линию 32х256 и к контролееру подключены всего одним шлейфом, так что вывод ОЕ для всех 4 общий. Контроллер заводской на 32 ARM , тут всё дело в нехватке RAM памяти в мелких ардуинах надо как минимум делать на MEGA2560 а лучше сразу делать на DUE но библиотек под DUE не встречал. В примерах RGBmatrixPanel есть вариант 32х64 и он работает но стоит в скетче указать размер 32х128 и картинка разваливается, может какойто итузиаст возьмётсяпеределает библиотеку и выложит на радость пользователей.
может какойто итузиаст возьмётсяпеределает библиотеку и выложит на радость пользователей.
Это не "интузиаст", это - идиот.
128х32 - это уже промышленный масштаб (наружная реклама и пр.), соответственно, за такую разработку НУЖНО брать деньги, а не выкладывать на радость халявщиков, которые хотят забрать себе деньги, предназначенные разработчику.
Да ладно! какой комерческий маштаб ? там всё уже написано надо просто изменить формат на больший, там даже алгоритм неизменится.
А по поводу брать деньги то не все хотят нажится, есть те кто просто так делится своими наработками и безкорыстно помогает другим осваивать программирование, а по вашему это хобби ограничится только помигать светодиодом а остальное надо покупать. так нельзя мыслить.
Вперед и с песней!
Может кто видел описание протокола обмена для подобных rgb матриц в виде pdf или просто файла с описанием протокола обмена и параметров сигнала? киньте ссылку где можно скачать. Саму последовательность я знаю но нужен официальный документ по ним.
Посмотрите, как называется микросхема, и ищите на нее дэйташит.
в этих матрицах все сделано на сдвиговых регистрах, своего буфера и видеопамяти в них нет, поэтому и управлять ими достаточно энергозатратно. чтобы сформировать цвет одного только пикселя необходимо 3 линии в режиме скоростного шим. плюс выбор строки плюс выбор сектора (куска матрицы)
Я не спрашивал как с ними работать!
Как работать с этими матрицами я знаю, ничего сложного там нет.
я же написал по русский что я ищу.
1) мне не надо пдф на чипы.
2)я ищу официальный документ! описание протокола обмена HUB75 с диаграмами сигналов, характеристики сигналов,частоты мкс периодов итд.
http://www.ledcontrolcard.com/download/colorlight/Product-Specification-5A-75-led-card.pdf
Покапавшийсь на просторах интернета и форумах адафрута, меняя значения в коде и прочее, дествительно пришел к выводу что, библиотера написана таким образом, что на Атмеге328Р с 2КБ памятью ничего кроме примера библиотеки работать не будет. Стек и оп. память в какойто мемент "встречаются" и всё зависает.
Получилось запустить, убменьшив буферизацию, но результат картинки на экранах ужасен(
Следующим шагом будет протестировать на 32u4 чипе, или другом с SRAM больше 2КБ (например Leonardo - 2,5КБ).
Лутче сразу на малине - у адафрута и пример есть
Покапавшийсь на просторах интернета и форумах адафрута, меняя значения в коде и прочее, дествительно пришел к выводу что, библиотера написана таким образом, что на Атмеге328Р с 2КБ памятью ничего кроме примера библиотеки работать не будет. Стек и оп. память в какойто мемент "встречаются" и всё зависает.
Получилось запустить, убменьшив буферизацию, но результат картинки на экранах ужасен(
Следующим шагом будет протестировать на 32u4 чипе, или другом с SRAM больше 2КБ (например Leonardo - 2,5КБ).
Ардуиновские либы - они такие, годятся только для примера. Конечно 2К для матрицы 128*32 явно мало. Разве что исключительно символы выводить, тогда хватит. Можете maple на stm попробовать, там 20К и пошустрей раза в 2-3 получится.
Малина у нас в лёгкую крутит экран 1024х768 на матрицах P3 32х64. так что для поигратся с одной двумя матрицами это слишком жирно. Самый оптимальный вариант это TEENSY 3.1 легко крутит видео192х32 и ещё 8к оперативки свободно, можно и 128х64 но только графика влезает, а на TEENSY 3.6 легко идёт видео 128х64 и + графика , и библиотека классная SmartMatrix3 ,так что вот такой расклад, дёшево и сердито.
https://ru.aliexpress.com/af/teensy-3.6.html?ltype=wholesale&d=y&origin=...
5к руб
https://ru.aliexpress.com/item/Teensy-3-1-USB-2-0-keyboard-mouse-teensy-...
2к руб
https://ru.aliexpress.com/item/2016-raspberry-pi-3-b-raspberry-pi-3/3267...
2.5к руб
так что не очень то и жирно и не очень то дешево и сердито
большие лед экраны - это уже коммерция (сильно не домашний бюджет), а на поиграться самый дешевый вариант это мега2560 китайская за 400р, но она тянет только 32х16 (в мало мальской динамике)
Ну тогда вот вариант
https://ru.aliexpress.com/item/New-Orange-Pi-Zero-H2-Quad-Core-Open-source-development-board-beyond-Raspberry-Pi/32760774493.html?scm=1007.13339.60109.0&pvid=7d9bae20-a5a5-49ba-800b-0145bca8d5ef&tpp=1
640р потянет все ваши хотелки.
или вот попроще
https://ru.aliexpress.com/item/Free-Shipping-STM32F103C8T6-ARM-STM32-Min...
всего 110р
Можешь поделиться ссылкой? Я хотел бы посмотреть на этот пример.