![](https://habrastorage.org/webt/70/yi/j8/70yij8q1c1vujwf5wfat5rtuqno.jpeg)
В продолжение прошлой статьи на тему DisplayPort-LVDS, решил написать о своей новой разработке контроллера HDMI-LVDS на чипе TSUMV59 от MStar. Контроллер имеет много интересного на борту, например, аналоговый выход звука, ИК порт, кнопки управления и даже OSD меню.
Основные требования к плате контроллера
- наличие OSD меню;
- наличие USB для прошивки/проигрывания файлов;
- выход аналогового или цифрового звука;
- два канала LVDS (с возможностью переключения и использования одного);
- двухпиксельный режим работы конвертера;
- поддержка матриц разной битности, в идеале от 6 до 10;
- рабочее напряжение конвертера 12В;
- рабочее напряжение панели 3,3В, 5В, 12В;
- управление яркостью/включением подсветки: 3,3В.
Требования к конструктиву
- геометрические размеры платы должны быть удобны для встраивания и максимально соответствовать плате «AHL-14.3»;
- включение/выключение, регулировка яркости кнопками на плате.
Реализация
До этого проекта мы активно использовали контроллер HDMI-LVDS «AHL-14.3», но он аппаратный и не хватало функционала OSD и звука, поэтому пришлось задуматься на счет нового устройства. Для начала я заказал плату на чипе TSUMV29, протестировал и сделал универсальную плату для TSUMV29 и TSUMV59. Для этого понадобилось изучить несколько схемотехнических решений на данном чипе (на них делают шасси для телевизоров) и прозвонить имеющуюся плату. Основное отличие TSUMV29 от TSUMV59 в том, что более новая модель позволяет использовать USB не только для прошивки, но и для проигрывания мультимедиа файлов. Также чипы имеют немного разные питания.
На входе контроллер поддерживает такие интерфейсы, как HDMI и VGA, Разрешение FullHD. На выходе одно- и двухканальный LVDS + звук 2 канала по 3W.
Что получилось после первой итерации
![](https://habrastorage.org/webt/n9/aj/db/n9ajdbstlkxgghju06sqdlkowss.jpeg)
Рис.1. Внешний вид платы контроллера на TSUMV59 (первая итерация v1)
Плата сверху слева – это внешний EEPROM, я его пробовал подкидывать для тестов. Нижняя светлая платка – это DC/DC. На всех схемах для этого питания (1V3) используется LDO, но мне жутко не понравился его нагрев и было решено поменять его на ST1S10 (а в последствии на AP3418). В целом плата завелась сразу. Загрузчик заливается программатором на SPI Flash, затем плату можно прошивать через USB.
![](https://habrastorage.org/webt/70/yi/j8/70yij8q1c1vujwf5wfat5rtuqno.jpeg)
Рис.2. Внешний вид платы контроллера на TSUMV59 (первая итерация v2)
На этой версии тоже, стоит LDO (U2). Так как обе платы делались одновременно под разные шлейфы матриц – ошибки у них одинаковые. Также, в отличие от версии v1, на плате v2 выведен VGA, ИК-порт, выход на колонки, присутствуют некоторые настройки по питанию (DIP переключатели) и др…
![](https://habrastorage.org/webt/pe/7c/43/pe7c43xzryfqhlr_zify2pog4gq.jpeg)
Рис.3. Работа платы контроллера на TSUMV59 (первая итерация v2)
Тестил на этом мультике. Теперь я наизусть знаю песенку «Котики, вперед!».
Релизная версия
![](https://habrastorage.org/webt/ni/0p/tc/ni0ptcy6noakey0pwyj6jqdypjs.png)
Рис.4. Релизная версия платы контроллера на TSUMV59
В итоге, после очередного витка доработок, была рождена текущая релизная версия. У нее есть все необходимые для управления кнопки, разъем для подключения клавиатуры и многое другое.
![](https://habrastorage.org/webt/qy/dd/-d/qydd-dfgckfq9rslpoijixwvwj4.jpeg)
Рис.5. Релизная версия платы контроллера на TSUMV59
К сожалению, в данные момент, не имею на руках ни одной спаянной платы последней версии, так как первая спаянная партия очень быстро разошлась.
Прошивка и OSD меню
Для тех, кто не знает откуда берутся прошивки, я расскажу. Под эту схематику есть набор прошивок под разные матрицы. Китайцы клепают похожие платы в различных вариантах. Прошивок очень много, у меня их около 3Гб. Достаточно знать разрешение и размер матрицы, а также количество каналов LVDS чтобы подобрать необходимую прошивку. Из нескольких десятков матриц у меня так и не заработала только одна, что, в принципе, совсем не плохо.
Фотографии меню контроллера приведены ниже.
![](https://habrastorage.org/webt/q6/rd/u1/q6rdu1z3un6yfobcduk_jnqr9aw.jpeg)
Рис.6. Фото меню
![](https://habrastorage.org/webt/gl/eo/li/gleoliywzr8ynmehplj7jvbytkk.jpeg)
Рис.7. Фото плеера
Выводы
Получилась отличная разработка, которую можно использовать в своих проектах. Теперь не нужно подстраиваться под заданные габариты покупных плат, а можно развести свою в нужные габариты и с необходимыми интерфейсами.
Если у кого-то нет времени/желания заниматься разработкой, то рекомендую готовые платы с Ali, так как чип очень хорошо показал себя. Нагрев на fullHD приемлемый даже без радиатора.
Моя мечта встроить таких два контроллера и матрицами по 7 дюймов в подголовники авто, чтобы детям было чем развлекаться на заднем сидении.
Преимущества разработки
- универсальность;
- присутствует звук;
- наличие OSD меню;
- простота в настройке.
Недостатки разработки
- плата на 4-х слоях;
- нельзя доработать/изменить прошивку.
Спасибо за внимание!
Комментарии (19)
Shtucer
30.07.2019 19:03Я очень хочу такую штуку. У меня есть померший планшет от NEC, в нем есть матрица, по внешнему виду — рабочая (ни трещин, ни чего такого). Мечтаю поженить её с одной из своих малинок. Присматриваюсь к разработкам всем известного поставщика разной степени экзотичности электроники, но останавливает скудость данных о совместимости таких контроллеров с матрицами. Какие тут могут быть подводные камни и какие есть решения для обхода оных? И, конечно же, я с интересом присматриваюсь к экземплярам из ваших статей. Где? Когда? Сколько стоит? А мне подойдёт?
buksttabu
31.07.2019 13:41+1Не знаю, есть ли у вашей матрицы интерфейс LVDS, но наверняка есть подходящие скалеры, на том же Али например
Сколько стоит?
В пределах 50$
the_bat Автор
30.07.2019 19:12СЛУЧАЙНО отклонил комментарий)
Комментарий пользователя ramzes2 к публикации «HDMI-LVDS. Разработка на TSUMV59 от MStar» ожидает вашего одобрения:
А исходников прошивок для MStar чипов у вас случайно нет?the_bat Автор
30.07.2019 19:13Отвечаю) Нет, исходников, к сожалению нет.
Был проект на реалтек RTD2662, вот для него мы пилили исходники.pvvv
31.07.2019 14:08раз пилили, может сможете подсказать:
в процессе раскуривания даташита так пока и не понял, можно ли всю вот эту вот зачёркнутую красоту
поотключать совсем, заодно с синхронизацией и из аналогового VGA -> TTL, получить просто АЦП 3 х 8бит х 210МГц.
а вообще идеально было бы что-нибудь готовое, вроде FL2000 только в обратную сторону, но по такой же цене :)the_bat Автор
31.07.2019 15:50+1не могу точно сказать. Мы пилили свое меню, заставку, обрабатывали GPIO, формировали EDID. На входе было только два HDMI.
ionicman
31.07.2019 11:17+1А вопрос такой — сложно сделать такой вариант, но с управлением и дата-трансфером через цифровой интерфейс?
Например с одной стороны LVDS, а с другой I2C или SPI?
С командами типа:
- установить / считать параметры: яркость, контраст, параметры матрицы
- включить / отключить подсветку
- включить / отключить весь экран (но контроллер в спячку не уводить)
- получить / считать весь экран в формате RGB
- получить / считать кусок экрана в формате RGB по координатам X,Y и размером W,H
- уйти в сон (контроллер)
- проснуться (можно через отдельный вывод)
Вот это было-бы очень удобно для различный поделок.
Может быть что-такое встречали, или хотя-бы на чем можно сделать.the_bat Автор
31.07.2019 15:47+1это на плис)
ionicman
31.07.2019 16:57Почему на плис? Специализированного ничего нет?
the_bat Автор
31.07.2019 17:09Мы делали проект на реалтеке, там было
установить / считать параметры: яркость, контраст
включить / отключить подсветку
включить / отключить весь экран (но контроллер в спячку не уводить)
уйти в сон (контроллер)
проснуться (можно через отдельный вывод)
А вот с этми вопрос
установить / считать параметры: параметры матрицы
получить / считать весь экран в формате RGB
получить / считать кусок экрана в формате RGB по координатам X,Y и размером W,H
Как это сделать? Нужно парсить всю картинку в реалтайм, резать, сохранять. Я не знаю как это сразу так сделать.
ScriptKiddo
31.07.2019 15:46+1Прочитал в datasheet к TSUMV59 что есть поддержка до 1080p. Не в курсе, есть похожие чипы на 1440p?
zedroid
Это только из-за плеера?
PH800480T013-IHC08 — работает сразу на HDMI, А его можно подключить сразу к USB плееру.
the_bat Автор
Нет, конечно основное — это поддержка разных матриц и работа с HDMI