Например TDA7294

Форум РадиоКот • Просмотр темы - Не могу найти документацию по RGB-LED модулю P4
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Вт май 11, 2021 17:01:27

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Ср апр 14, 2021 19:26:29 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
Купил на али вот такой модуль. У меня уже был опыт работы с монохромным P10, думал, что здесь так же просто. А оказалось все не так. Распиновку обнаружил и появилась уйма вопросов: судя по данным из интернетов, дисплей делится на две половинки, а каждая из них — на 2⁴=16 блоков (в отличие от монохромных, где было одно целое и 4 блока). Не нашел даже схемы, в каком порядке загораются пиксели. Я уж молчу о временных диаграммах! В найденных даташитах есть лишь физические данные, ничего о подробном описании протокола и особенностей адресации нет.
В общем, меня как будто бы в гугле забанили: на запросы "P4 led module protocol" и "p4 led module pinout" вылезает всякий разнообразный абдуриновский бред. А я хочу при помощи DMA по таймеру дрыгать ногами, отправляя 6 битов данных за раз. (жаль, конечно, что так через одно место китайцы все сделали, лучше бы напаяли 100500 сдвиговых регистров, чтобы по SPI можно было за один присест отправить данные на весь экран целиком).

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пт апр 16, 2021 02:22:40 
Мучитель микросхем

Карма: 9
Рейтинг сообщений: 124
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 476
Рейтинг сообщения: 0
P10, P4 и т.д. это всего лишь сокращение от pitch 10 mm, pitch 4 mm и т.д. Искать способы коммуникации со светодиодной панелью исходя из расстояния между светодиодами - смело. Но, видимо, не очень эффективно :rofl:
Возможно, если внимательно осмотреть плату Вашего модуля, на ней будет написано что-то вроде hub75e или hub75f - это название интерфейса. Его-то и нужно было просить у гугла ;) На монохромную панельку не похоже, наверное, потому что у неё hub12 написано на плате ;)


Вернуться наверх
 

JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/cwc

Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Вс апр 18, 2021 22:12:31 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
На панели ничего, что могло бы натолкнуть на протокол, не написано. Мне подсказали в ЖЖ, что скорей всего, у нее HUB75E.
Попробовал, набросал пробный код. Однако, вместо того, чтобы получить вертикальные линии, вижу вот такую жесть!

Схему панели в интернете найти не смог. Я вообще не понимаю, что происходит! Может, нужно поставить буферные мосфеты и дергать управляющие электроды пятью вольтами, а не 3.3В? Или же китаец подсунул фуфло?

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Вс апр 18, 2021 23:35:37 
Мучитель микросхем

Карма: 9
Рейтинг сообщений: 124
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 476
Рейтинг сообщения: 0
Ваш пробный код сложночитаем, имхо нет смысла разбираться с ним, намного проще рассказать Вам, как должно быть :)
Первая попавшаяся мне в гуглокартинках фоточка интерфейсного разъёма:
https://4.bp.blogspot.com/-P3auvkuEEO4/ ... necotr.jpg
Делать ннада так:
1) ставим на R1R2G1G2B1B2 интересующий нас цвет. Для начала, к примеру, 0xFFFFFF upd: сорри, размечтался чот ;) 111111, конечно же :)
2) подаём стробирующий импульс на CLK. Таким образом мы фиксируем цвет первой точки в строке (полустроке, четвертьстроке, и т.д. - в зависимости от организации матрицы)
3) повторяем пп 1, 2 необходимое количество раз (опять же, зависит от организации матрицы)
4) ставим на выводах ABCDE разъёма адрес (порядковый номер) строки. Тут опять же могут быть варианты, зависящие от организации матрицы.
5) подаём стробирующий импульс на LAT
6) ...
7) профит!
По поводу "буферных мосфетов" и согласования уровней - у Вас повторяющаяся картина, хоть и не та, которой Вы ждёте, очевидно :) Следовательно, с большой вероятностью, ошибка в логике. Я бы для Вашей матрицы сделал примерно так: записывал бы 128 пикселей в строку (это 2 строки физически на Вашей матрице получатся), затем подавал бы адреса по порядку 0, 1, 2 и т.д. до 16. И смотрел бы, что выходит. если заливка хоть в каком-то виде начнёт получаться - пол-экрана по вертикали зальётся, или с каким-нибудь чередованием белые/чёрные полосы - выставлял бы разные цвета для различных строк, так выяснил бы порядок расположения строк на дисплее. Ну, и т.д., метод тыка - самый могучий метод в мире :)
А, про пункт 0 чуть не забыл - подать питание, прижать OE к земле... ;)


Вернуться наверх
 
Вебинар «Экосистема MEAN WELL. Решения для любых задач электропитания» (20.05.2021)

Приглашаем 20 мая на вебинар, посвященный линейке поставок компании MEAN WELL и ее подходу к производству источников питания — как экосистемы продукции и услуг, которая позволяет подобрать оптимальный источник питания для любых задач электропитания. Рассмотрим весь спектр выпускаемой продукции MEAN WELL в области AC/DC-, DC/DC- и DC/AC-преобразователей с подробным разбором интересных и уникальных новинок, их применении и многое другое.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 00:00:03 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
Все ноги настроены в режиме push-pull, логика от ряда к ряду не меняется. Я даже пробовал один и тот же буфер передавать все 16 раз. И все равно картина была абсолютно той же самой! Попробовал поменять режим ШИМ (у меня это режим 2: 0->1, но так стало еще хуже, т.е. явно клоку нужен нарастающий фронт).
Пока что единственное, что приходит на ум — уровни нужно разогнать до пяти вольт. Т.е. поставить буферы, преобразующие уровень.
Отложу пока в долгий ящик. А там, глядишь, напаяю буферы и проверю. Правда, в этом случае характеристики станут еще хуже, вряд ли получится хотя бы 300fps получить на трехбитном цвете…

Добавлено after 2 minutes 38 seconds:
Вот, как у меня настройки выполнены. GPIO:
Код:
static inline void gpio_setup(){
    // Enable clocks to the GPIO subsystems, turn on AFIO clocking to disable SWD/JTAG
    RCC->APB2ENR |= RCC_APB2ENR_IOPAEN | RCC_APB2ENR_IOPBEN | RCC_APB2ENR_IOPCEN | RCC_APB2ENR_AFIOEN;
    // turn off JTAG (PB3/4 is in use)
    AFIO->MAPR = AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
    // turn off USB pullup
    USBPU_OFF();
    // Set led as opendrain output
    GPIOC->CRH = CRH(13, CNF_ODOUTPUT|MODE_SLOW);
    // SCREEN color PINs: PA0..PA5
    GPIOA->CRL = CRL(0, CNF_PPOUTPUT|MODE_FAST) | CRL(1, CNF_PPOUTPUT|MODE_FAST) | CRL(2, CNF_PPOUTPUT|MODE_FAST) |
                 CRL(3, CNF_PPOUTPUT|MODE_FAST) | CRL(4, CNF_PPOUTPUT|MODE_FAST) | CRL(5, CNF_PPOUTPUT|MODE_FAST);
    // USB pullup - opendrain output
    GPIOA->CRH = CRH(15, CNF_PPOUTPUT|MODE_SLOW);
    // A..D, LAT, nOE: PB4..PB9
    GPIOB->CRL = CRL(4, CNF_PPOUTPUT|MODE_FAST) | CRL(5, CNF_PPOUTPUT|MODE_FAST) | CRL(6, CNF_PPOUTPUT|MODE_FAST) | CRL(7, CNF_PPOUTPUT|MODE_FAST);
    GPIOB->CRH = CRH(8, CNF_PPOUTPUT|MODE_FAST) | CRH(9, CNF_PPOUTPUT|MODE_FAST);
}

Таймер с DMA:
Код:
static inline void tim_setup(){
    SET(nOE); // turn off output
    GPIOA->CRL |= CRL(6, CNF_AFPP|MODE_FAST);
    RCC->APB1ENR |= RCC_APB1ENR_TIM3EN;
    // 72MHz & 7ARR = 9MHz
    TIM3->PSC = 20000;
    TIM3->ARR = 7;
    TIM3->CCMR1 = TIM_CCMR1_OC1M; // PWM mode 2 (inactive->active)
    //TIM3->CCMR1 = TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1; // PWM mode 1 (active->inactive)
    TIM3->CCER = TIM_CCER_CC1E; // output 1 enable
    TIM3->DIER = TIM_DIER_UDE; // enable DMA requests
    RCC->AHBENR |= RCC_AHBENR_DMA1EN;
    // memsize 32bit, periphsize 32bit, memincr, mem2periph, full transfer interrupt
    DMA1_Channel3->CCR = DMA_CCR_PSIZE_1 | DMA_CCR_MSIZE_1 | DMA_CCR_MINC | DMA_CCR_DIR | DMA_CCR_TCIE;
    DMA1_Channel3->CMAR = (uint32_t)dmabuf;
    DMA1_Channel3->CPAR = (uint32_t)&GPIOA->BSRR;
    NVIC_EnableIRQ(DMA1_Channel3_IRQn);
}

Ну и передача данных:
Код:
static uint8_t blknum_curr = 0;
void TIM_DMA_transfer(uint8_t blknum){
    TIM3->CR1 = 0; // turn off timer
    transfer_done = 0;
    COLR_port->BSRR = dmabuf[0];
    DMA1_Channel3->CNDTR = SCREEN_WIDTH;
    DMA1_Channel3->CCR |= DMA_CCR_EN; // start DMA
    TIM3->CCR1 = 4; // 50% PWM
    TIM3->CR1 = TIM_CR1_CEN; // turn on timer
    blknum_curr = blknum;
}

void dma1_channel3_isr(){
    TIM3->CR1 |= TIM_CR1_OPM; // set one pulse mode to turn off timer after last CLK pulse
    DMA1_Channel3->CCR &= ~DMA_CCR_EN; // stop DMA
    while(TIM3->CNT < 7);
    SET(nOE); // clear main output
    ADDR_port->ODR = (ADDR_port->ODR & ~(ADDR_pin)) | (blknum_curr << ADDR_roll); // set address
    SET(LAT); // activate latch
    DMA1->IFCR = DMA_IFCR_CGIF3;
    transfer_done = 1;
    CLEAR(LAT);
    CLEAR(nOE); // activate main output
}

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Интеллектуальные ключи верхнего плеча семейства PROFET™+2 12V от Infineon

Компания Infineon представила новое семейство защищенных силовых ключей PROFET™+2 12V. Изделия объединяют в себе функции диагностики и различные защиты. Ключи PROFET™+2 12V имеют одно из самых низких в отрасли сопротивлений в открытом состоянии RDS(ON) (от 2,6 мОм) и выпускаются в миниатюрном корпусе TSDSO-14 с шагом выводов 0,65 мм. Благодаря функции ReverseON все семейство соответствует строгим требованиям по защите от обратной полярности питания, впервые реализованной в одном чипе.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 00:04:35 
Мучитель микросхем

Карма: 9
Рейтинг сообщений: 124
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 476
Рейтинг сообщения: 0
не-не-не, не сдаёмся! :) я посмотрел на видос ещё раз - там всё чуть сложнее получается
У Вас кагбэ две матрицы составные. И R1G1B1 - цвет точки на первой матрице, а R2G2B2 - на второй. Т.е. нужно строку делать из 64-х тактов CLK, а если надо один пиксел зажечь - ставить 101010 на R1R2G1G2B1B2. R1G1B1 N-я точка, R2G2B2 - N+64-я. Чуть сумбурно получилось, но я надеюсь, Вы поймёте, о чём я :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 00:18:08 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
Цитата:
И R1G1B1 - цвет точки на первой матрице, а R2G2B2 - на второй.

Нет, первый канал - строка из верхней половины, вторая - из нижней (на 16 строк ниже). Это я уже экспериментальным путем понял.
Иначе столбцы бы вообще не горели.

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

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 00:27:32 
Мучитель микросхем

Карма: 9
Рейтинг сообщений: 124
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 476
Рейтинг сообщения: 0
Нет, первый канал - строка из верхней половины, вторая - из нижней
ну, или так, да. А канал E адреса строк не используется? А он физически на землю притянут? Мошт, наводки какие ловит? По видосу такое ощущение, что 1 CLK лишний, что ли... Надо анализатором вешаться, и смотреть
UPD: чот я нипайму, а где CLK вообще в коде у Вас управляется?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 00:45:25 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
Клок генерируется таймером - TIM3CH1 (ШИМ с заполнением 50%). По событию UEV таймера DMA отправляет очередную порцию данных цвета (через регистр BSRR), а после этого ШИМ-выход генерирует клок.

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Пн апр 19, 2021 23:29:09 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 0
Сейчас посмотрел осциллограмму, блок питания просто ужас что выдает на выходе! Вот, видимо, откуда и появились все эти мусорные точки. Поставил БП послабей (но не такой мусорный), уже почти никаких артефактов.
В общем, нужно тщательно фильтровать питание и таки спаять буфер, чтобы оно не пыталось "кормиться" от МК.

Добавлено after 8 hours 55 minutes 33 seconds:
В общем, решил проблему: распаял на макетке два буфера CD4050, а т.к. они всего лишь шестиканальные, 13-й канал (nOE) инвертировал на мосфете 2N7000 (с удивлением обнаружил, что хоть 7000 — самые поганые по силовым характеристикам, зато у них маленькая емкость затвора и они не заваливают фронты так, как более компактные мосфеты с меньшим Rdson).
Теперь никаких посторонних пикселей не вылезает. Правда, почему-то икран изредка мерцает. Непонятно, как это может быть, когда частота обновления кадров 77 в секунду (а сам кадр состоит из семи последовательных изображений - эдакий ШИМ на восемь уровней).
В ЖЖшке

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти документацию по RGB-LED модулю P4
СообщениеДобавлено: Ср апр 28, 2021 18:39:33 
Держит паяльник хвостом

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 955
Рейтинг сообщения: 2
Сделал на этом модуле игры "змейка" и "тетрис" (пока в преальфа-стадии, надо там еще шрифт помельче нарисовать, чтобы надпись GAME over! Score:... влезала на экран, да и на бета-тестере — дочке — потренировать). Напишу в ЖЖ и выложу видео на тытрубу, как закончу.

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y