Как-то мне захотелось поэкспериментировать с MIPI DSI экранами. Встал вопрос: к чему их подключить? Позже я выбрал решение и спроектировал плату, о чём начал писать статью. Но есть и множество других вариантов. Решил вынести эти данные в отдельную часть.

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

Какие решения доступны? Как рассчитать скорость передачи данных?

Варианты:
  1. Одноплатные компьютеры (готовые или спроектировать свою плату с процессором).
  2. Микроконтроллеры с MIPI DSI интерфейсом.
  3. Микроконтроллеры кроссоверы с MIPI DSI интерфейсом.
  4. ПЛИС (некоторые поддерживают напрямую, схема на резисторах или спец. микросхемы).
  5. Микросхемы преобразования интерфейсов (RGB/HDMI/DP/LVDS… –> МIPI DSI).

1. Одноплатные компьютеры (готовые или спроектировать свою плату с процессором)


Малина.
У версий Zero Малины нет DSI, только CSI для камеры.
У версий 1А+, 1В+, 2, 3, А+, В+, 4 есть DSI выход (2 пары данных и одна тактовая).
Схема.



У Малины 5 и Compute Module 5 2 × 4-lane MIPI camera/display transceivers.

Есть два разъёма. Можно настроить по одному на камеру/экран, либо сделать 2 разъёма одного вида (камера или экран).


У Compute Module 3+, CM4 
1x 4-lane DSI Display Interface (up to 1Gbps per lane)
1x 2-lane DSI Display Interface (up to 1Gbps per lane)

Кроме Малины есть множество других одноплатников. У каждого свой набор интерфейсов.
Интересный вариант – плата на RK3566 (RK3566-2G-16G). Кроме MIPI DSI и HDMI на ней есть EDP.







Для варианта платы с процессором нужно разбираться с Линуксом и писать драйвер экрана.

ESP32-P4.
ESP32-P4 – это высокопроизводительный микроконтроллер (или, скорее, гибрид), который поддерживает большой объем встроенной памяти и обладает хорошими возможностями обработки изображений и голоса. Cостоит из высокопроизводительной системы (High Performance) и системы с низким энергопотреблением (Low Power). Система HP содержит двухъядерный процессор RISC-V и множество периферийных устройств, в то время как система LP содержит маломощный одноядерный процессор RISC-V и различные периферийные устройства, оптимизированные для приложений с низким энергопотреблением.



ESP32-P4 поддерживает MIPI-CSI и MIPI-DSI (2 пары данных, до 1,5 Гбит/с/полоса), что облегчает интеграцию экранов и камер с высоким разрешением (до 1080p). Для обеспечения широкой совместимости ESP32-P4 оснащен параллельными интерфейсами дисплея (до 24 бит/цвет) и камеры.

Кроме того, он оснащен емкостным сенсорным вводом и функциями распознавания речи, что делает его удобным для приложений с человеко-машинным интерфейсом. ESP32-P4 объединяет аппаратные ускорители для различных протоколов кодирования и сжатия мультимедиа, включая поддержку кодирования H.264 с максимальной производительностью 1080p при 30 кадрах в секунду. SoC также включает в себя встроенный аппаратный ускоритель обработки пикселей (PPA) и 2D-DMA, которые идеально подходят для разработки графического интерфейса пользователя.

Есть и плата малиновой формы:



2.Микроконтроллеры с MIPI DSI интерфейсом


Прежде всего вспоминаются микросхемы STM. Есть апнота про DSI host в микросхемах STM32.
DSI Host – это специализированное периферийное устройство для взаимодействия с дисплеями, MIPI DSI. Оно включает в себя специальный видеоинтерфейс, подключенный к LTDC, и универсальный интерфейс APB, который может использоваться для передачи информации на дисплей.

Контроллер LCD-TFT дисплея (LTDC) обеспечивает 24-разрядный параллельный цифровой режим RGB (24 бит/пиксель) и может управлять экранами с разрешением до XGA (1024x768). 
Но максимальное разрешение ограничено доступной пропускной способностью физического канала DSI (lane rate) – 0,5 или 1 Гбит/с:



DSI хост STM32 поддерживает все режимы работы, определенные в спецификации MIPI DSI: командный режим и все варианты видеорежима (пакетный, не пакетный с синхроимпульсами и не пакетный с событиями синхронизации). Поддерживает скорость соединения до 1 Гбит/с или 2 Гбит/с в зависимости от модели.

Вероятно, есть ещё какие-то микроконтроллеры с MIPI DSI других производителей.

3. Микроконтроллеры кроссоверы с MIPI DSI интерфейсом


IMXRT1170, i.MX-RT1160 и другие.
На Хабре была статья про такие мк.
Имеют 2 пары данных с частотами до 1,5 ГГц на пару (bit rate clock).
Поддерживают командный и видео режимы.



4. ПЛИС


Интерфейс MIPI довольно специфичен. В режиме Low Power уровень сигнала 1,2 В LVCMOS, в режиме HS уровни согласно стандарту SLVS-400.



Варианты подключения MIPI экрана/камеры к ПЛИС:
  1. Напрямую.
  2. Через резисторную схему (< 800 Мбит/с на полосу).
  3. Через специальную микросхему (> 800 Мбит/с на полосу).

ПЛИС, которые напрямую поддерживают MIPI DPHY, в основном включают серии Xilinx UltraScale+ (макс. 1,5 Гбит/с на полосу), Lattice Crosslink (макс. 1,5 Гбит/с/полоса) и Lattice Crosslink NX (макс. 2,5 Гбит/с/полоса). Другие типы FPGA требуют добавления дополнительных схем преобразования уровней для преобразования сигналов в LVDS.
Для скоростей < 800 Мбит/с на линию достаточно резисторной схемы. Резисторы используются для подключения, изоляции, терминации и сдвига уровня, чтобы создать D-PHY из имеющихся в ПЛИС стандартов ввода/вывода (LVCMOS или HSTL для LP режима, LVDS для HS).
Есть апноты от Xillinx (D-PHY Solutions XAPP894) и от ALTERA (AN 754: MIPI D-PHY Solution with Passive Resistor Networks in Intel® Low-Cost FPGAs), в которых описано это решение.

FPGA Compatible D-PHY Transmitter:





Для скоростей > 800 Мбит/с на линию требуется специальная микросхема преобразования уровней, такая как MC20002, MC20901, LT89101L и т. д.;
Application Example MC20001/MC20002:



D-PHY на резисторах используется, например, в проекте MIPI DSI Display Shield/HDMI Adapter.

5. Микросхемы преобразования интерфейсов (RGB/HDMI/DP/LVDS… <–> МIPI DSI)


Есть довольно много разных микросхем. На какие-то есть полный даташит и разные руководства, примеры проектов и другие полезности; для каких-то доступен только краткий документ на пару страниц.

SSD2828.
RGB, SPI –> МIPI DSI
Поддерживает до 4 пар данных, 1 Гбит/с/пару.
Максимум 1920 пикселей на строку экрана (60 кадров/с) или 2560 при частоте 30 кадров/с.
Есть полный даташит, руководства (один, два), примеры проектов, готовые платы и т. д.


SSD2805.
Если нужно запустить экран с командным режимом, то подойдёт эта микросхема.
Остальные перечисленные микросхемы обычно работают с экранами в видеорежиме.
Преобразует RGB + SPI\MCU –> MIPI DSI.
Поддерживает до 700Mбит/с, 2 полосы данных (350Мбит/с/полосу).
Пример работы в связке с ESP32.

Есть и другие микросхемы этого производителя.

Toshiba TC358870XBG.
HDMI –> 2 порта MIPI DSI.
TC358870XBG может передать 7,2 Гбит/с видео с HDMI по двойному каналу DSI (1 Гбит/с на дифф. пару).
До 4K×2K (3840×2160) 30 кадров/с, 24 бит цвет.

По одному каналу DSI максимум 2558 пикселей на строку (24 бит на пиксель) или 3411 пикселей (16 бит на пиксель).

Есть примеры проектов (в том числе на Хабре), готовые платы и т. д.



Микросхемы Lontium.
Есть разные преобразователи интерфейсов MIPI, HDMI, Display Port, LVDS и другие в разные стороны и с разным кол-вом портов, интерфейсов и т. д. (зависит от микросхемы).



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

На Али и в других местах попадаются платы на этих микросхемах и сами чипы отдельно.


Список вариантов не претендует на полноту.
Попадаются и другие платы преобразования интерфейсов, непонятно на основе каких микросхем.


Как рассчитать скорость передачи данных?


Например, нужно запустить экран COM48H4N22ULC. Хотим узнать, какую максимальную скорость передачи данных на пару должна обеспечить микросхема/решение в видеорежиме, чтобы выбрать подходящие.

16,777,216-color, 4.8" TFT display with 720 x RGB(H) x 1280(V) dots
16,777,216 = 2^24 => экран может 24 бита/пиксель.



Из этой таблички берём временнЫе параметры.
Ориентируясь на картинку,


Рассчитаем пиксельную частоту:

PixelClock = (Высота + VSync + VFP + VBP) * (Ширина + HSync + HFP + HBP)*FPS = (1280 + 3 + 6 + 3)*(720 + 15 + 91 + 70) = 69,46 МГц.

Если бы картинка передавалась по RGB интерфейсу, то мы тактировали бы его как раз с такой частотой.

Требуемая скорость передачи данных:

Скорость = PixelClock*24 бита/пиксель = 1,667 Гбит/с.

Такая скорость была бы нужна, если бы мы передавали данные по одной полосе (дифф. паре) данных.

В данном случае 4 пары данных:



Поэтому на одну дифф. пару получаем:

Скорость/4 = 416,7 Мбит/с.

В интерфейсе MIPI DSI данные считываются по фронту и по спаду тактового сигнала (Double Data Rate), поэтому частота сигнала CLKp,n будет в два раза ниже:

416,7 Мбит/с /2 = 208,4 МГц.

Коротко о главном


Существуют разные решения. У каждого свои плюсы и минусы.
У одноплатных компьютеров обычно есть DSI интерфейс 2 или 4 полосы. Нужно писать драйвер для Линукс.

У некоторых микроконтроллеров есть DSI. Обычно 2 полосы.

Можно использовать ПЛИС. Некоторые могут работать с DSI напрямую, какие-то через специальную схему на резисторах или через специальные микросхемы.

Существуют и микросхемы преобразования интерфейсов.

Чтобы верно выбрать решение, стоит оценить скорость передачи данных на полосу.

Пройдите, пожалуйста, опрос. Нам важно ваше мнение! Спасибо!



Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале

Комментарии (38)


  1. MinimumLaw
    18.06.2025 08:51

    Для "домашней автоматизации" MIPI был бы интересен, но... Производители матриц так норовят сделать свой уникальный разъем. С тем же LVDS проще. А чтоб по минимуму зависеть лучше распространенные стандарты (желательно с DDC) типа (e)HDMI или (e)DP.

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


  1. pvvv
    18.06.2025 08:51

    Хватает сенсоров изображений с jpeg энкодером на борту, да и на дисплеях далеко не всегда надо обязательно 140fps отображать. И для первого и для второго с некоторой натяжкой хватило бы и lowpower режима с его 10МБит/с и любого дохлого МК без гигабитных интерфейсов. Но вот некая огороженность и отсутсвие человеческой документации раздражает.


    1. Kopcheniy Автор
      18.06.2025 08:51

      Хватает сенсоров изображений с jpeg энкодером на борту

      Вам хватает или имеется в виду, что их довольно-таки много?

      Да, стандарт закрытый. Но найти что-то полезное можно. Помогает и обратная разработка.

      Например, на экран на картинке у меня не было никакой документации. Но оно работает.)

      Кстати, частота здесь около 60 кадров/с.


      1. pvvv
        18.06.2025 08:51

        Вам хватает или имеется в виду, что их довольно-таки много?

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


      1. vladkorotnev
        18.06.2025 08:51

        Неужто айфоновские экраны никак не описаны в сети? С учётом как их любят китайцы во всякие примочки типа программаторов и боксов для оных же ставить


        1. Kopcheniy Автор
          18.06.2025 08:51

          Этот экран не от Айфона. Подробнее здесь:


    1. Kopcheniy Автор
      18.06.2025 08:51

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

      10 МБит/с мало. Пусть мы хотим 30 кадров/с и 24 бита/цвет.

      10 000 000/30/24=13900. Т е разрешение у экрана выходит всего около 130х100.

      Обычно разрешение хочется гораздо большее, и кадров/с 60 или более.


      1. pvvv
        18.06.2025 08:51

        10 МБит/с мало.

        больше в low power с lvcmos уровнями (которые из говна и палок на чём угодно изобразить можно) вроде не умеет. Для большего нужны отдельные гигабитные трансиверы, которые не везде есть.

        Но довольно большое количество различных дисплеев которые в режиме "фоторамки" отображают статичные картинки которые можно хоть секунду обновлять.

        Да и гонять данные через low power камеры/дисплеи вроде обычно не умеют ну или делают вид что не умеют, это опять же про качество и доступность документации.


        1. Kopcheniy Автор
          18.06.2025 08:51

          качество и доступность документации.

          А если бы документация была доступнее или кто-то показал бы примеры использования камер, экранов, то применяли бы их в своих проектах?

          довольно большое количество различных дисплеев которые в режиме "фоторамки"

          Вы имеете в виду именно с MIPI DSI интерфейсом или экраны вообще? Подбирали что-то под задачу, изучали варианты?

          С памятью кадра мне больше попадались экраны с малым разрешением. А где побольше, там обычно (которые попадались) видеорежим. Может и есть большие с памятью кадра.


          1. pvvv
            18.06.2025 08:51

             применяли бы их в своих проектах?

            Я от какого-то то-ли 4-го то ли 5-го айфона пытался ковырять сенсор, вроде бы 5642. чтобы из него хоть как-то достать пожатую картинку в каком угодно низком разрешении/качестве, но через какой-нибудь "медленный" интерфейс, а не как положено. Но документация в виде каких-то скриншотов pdfa с китайского сайта и замечательные аппноуты омнивижена в виде нескольких страниц портянок вида i2cwrite(0xaabb, 0xcc); для инициализации различных режимов без описаний, одолеть не смог. Подозреваю что за прошедшие лет 10 лучше с документацией не стало, а совсем наоборот.

            Вы имеете в виду именно с MIPI DSI интерфейсом или экраны вообще?

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

            Ну и физически, особенно oled какой-нибудь, с чего бы отдельный пиксель после включения через сколько-то мс вдруг забыл своё значение яркости, что его надо обязательно N раз в секунду обновлять надо следующим кадром.


  1. the_bat
    18.06.2025 08:51

    Хороший обзор получился. Для коммерческих проектов постоянно использую DSI и CSI (ну и, конечно, LVDS). Дисплеи дороговаты, но тонкие и качество картинки хорошее. Камеры, в основном, использую OV5640, ну и распберри.


    1. Kopcheniy Автор
      18.06.2025 08:51

      Благодарю.)

      Вероятно, используете дисплеи не от смартфонов/планшетов, а которые отдельно продают? Продавцы делятся документацией, данными для подключения и запуска или случается делать обратную разработку?

      На экраны-запчасти часто бывают интересные цены.


      1. the_bat
        18.06.2025 08:51

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


  1. dom13
    18.06.2025 08:51

    Это вот отладка на двух SSD2828 для LS055R1SX04 (1440*2560 от полимерного принтера). Делаю, как я его называю полускалер. Суть в выводе статичной картинки для засветки фоторезиста, причем без задействования всяких одноплатников и ПЛИС. Максимум какой-то stm32. На данный момент заливка генерируется stm32f401, и с ним получается 2.5 раз в секунду обновить экран. Дальше в плане задействовать SPI Flash с ее fast read, для генерации видеосигнала для подачи на SSD2828.

    а это стенд для отладки
    а это стенд для отладки


    1. Kopcheniy Автор
      18.06.2025 08:51

      Симпатично.)

      Для такого применения достаточно 2 цвета или 1 бит на цвет (вместо обычных 16...24 бит/цвет). Учитывая, что входной интерфейс RGB и есть возможность объединить биты, можно без проблем генерировать нужный видеосигнал даже простым мк.


      1. dom13
        18.06.2025 08:51

        Именно так, на отладочной плате 8 бит каждого цвета сводятся в один, и то это сделано для отладки, в конечном итоге, все 24 бит сведутся в один сигнал.


    1. Kopcheniy Автор
      18.06.2025 08:51

      LS055R1SX04 (1440*2560 от полимерного принтера)

      Принтер разобрали?) Или отдельно экранчик купили?

      Ранее попадались видео, как люди на таких принтерах платки делают.

      Как вариант сигнал с hmdi взять и преобразовать с помощью Toshiba TC358870XBG, как раз два порта DSI.


      1. dom13
        18.06.2025 08:51

        Купил комплект дисплей + скалер hdmi, дисплей уже без подсветки. Сначала генерировал изображение питон скриптом для проверки засветки. Светодиод 405нм 10 ватт, засветка полторы минуты. Потом думал взять одноплатник, но показалось что дорого выходит. Если получится генерить сигнал флеш памятью, то дальше работа в направлении засветки сразу двух сторон. И основная стоимость тогда будет два дисплея и 4 SSD2828, плюс всякая мелочь, ну корпус.

        TC358870XBG тоже смотрел, но нужен либо одноплатник, либо ПЛИС. Плюс к SSD2828 есть исходники принтера, упомянутые в этой серии статей https://habr.com/ru/articles/520366/ . Если бы не исходники, навряд ли я получил бы результат.


        1. Kopcheniy Автор
          18.06.2025 08:51

          Может отсюда какие-то идеи пригодятся.

          Матрица съедает часть мощности. Ещё, скорее всего, мощность засветки неравномерна по площади матрицы.

          Как-то немного помогал в проекте DLP-проектора с матрицей микрозеркал. Там видеосигнал тоже подавали по RGB интерфейсу, просто одноплатник взяли подешевле -- RPi zero 2.

          TC358870XBG может без ПЛИС и одноплатника использоваться. Например, просто с компа брать сигнал.


          1. dom13
            18.06.2025 08:51

            одноплатник взяли подешевле -- RPi zero 2.

            Я с ними не работал, и думаю буду долго разбираться, чтобы получить источник сигнала 2к для двух дисплеев. Да и в моей концепции тоже дорого. Поясню, есть Quad SPI flash, и их режим работы fast read. Как я понял, можно добиться потока 4 бит при частоте 50 Мгц. То есть, формируем дамп чтобы там были всякие VSYNC, HSYNC и тд. Зашиваем во флеш, запускаем fast read, и просто тактируем флеш, получаем быстрый нужный нам поток. Картинка ведь статична. Нужно больше 4 выводов, берем две флеш. Это теория, еще не проверена. Но если получится, думаю будет самое дешевое решение.

            Например, просто с компа брать сигнал.

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


            1. pvvv
              18.06.2025 08:51

              однобитный 1440*2560 это 460кБ влезет даже во внутреннюю память rp2350, который наружу может на 150МГц DDR, т.е. на 300МГц выплюнуть через HSTX, заодно сигналы синхронизации сформировать.


              1. dom13
                18.06.2025 08:51

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


                1. pvvv
                  18.06.2025 08:51

                  как вариант на попробовать можно ещё ft232h (ft2232h), там в режиме mpsse вроде можно 30МГц непрерывный однобитовый поток с ПК организовать, и заодно gpio дрыгать для hvsync.


                1. lapot2
                  18.06.2025 08:51

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

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


            1. Kopcheniy Автор
              18.06.2025 08:51

              Идея с флешкой интересная. Но это нужно для каждой новой картинки прошивать память. Наверное, не самое удобное в использовании решение. Хотя, может и можно как-то удобно это делать.

              Плюс нужно сделать какой-то преобразователь картинки в нужный формат.

              Ради интереса можете посмотреть, как в проекте, использующем RPi zero, код написан и другое реализовано.


              1. dom13
                18.06.2025 08:51

                Ну предварительно как mass storage на smt32f401, который все равно нужен для инициализации ssd2828 и кольцевого запуска потока с генераторной флеш. В нем мало флеша, но закидываться будут сжатые файлы, которые будут распаковываться в дамп, и записываться на генераторную флеш. Возможно какое то беспроводное решение будет.


    1. osmanpasha
      18.06.2025 08:51

      Очень интересно, я бы почитал подробностей!


      1. dom13
        18.06.2025 08:51

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


        1. Kopcheniy Автор
          18.06.2025 08:51

          Пишите, думаю, людям интересно будет почитать.) Хороший проект.


  1. alexey_public
    18.06.2025 08:51

    Тема действительно интересная для mcu - т.к. позволяет существенно сэкономить выводы. Но как обычно проблема со стоимостью дисплеев, 7 дюймов RGB можно купить за 17 usd на ali в розницу. А вот MIPI - гораздо дороже.


    1. Kopcheniy Автор
      18.06.2025 08:51

      Экраны есть разные. Недостаточно сравнивать их только по диагонали. Нужно принимать во внимание ещё разрешение, тип матрицы, наличие и тип сенсорной панели и др.

      7 дюймов RGB обычно с разрешением 800х480,1024х600,1280х720. Стоимость разная.

      В магазинах запчастей можно найти экраны с/без ёмкостной панели. Цены начинаются примерно от 150 рублей (например, вот первый попавшийся).

      Для примера листаю там же. Дисплей для Meizu MX3 в сборе с тачскрином 400 р. А это уже 5.1" IPS (1080x1800)

      Huawei Honor X7 экран 6.74" IPS (720x1600) 90 Гц 550р

      ...

      На Али можно найти много экранов от смартфонов с ценами около 1000 (больше/меньше)

      Для примера Super AMOLED для Samsung Galaxy S III S3 i9300 i9300i i9305 900р+-

      6,21-дюймовый дисплей для Huawei P Smart 2019 IPS (1080x2340), тоже около 1000 р.

      И т д.

      Как минимум, для экспериментов, это может быть интересно.


      1. alexey_public
        18.06.2025 08:51

        Для экспериментов да, для серии уже нет. Поэтому оно сразу пролетает.

        Тяжело для заказчика обосновать повышение цены на дисплей в два раза :-(

        Выпустили бы их недорогие.


        1. Kopcheniy Автор
          18.06.2025 08:51

          В каждом конкретном случае лучше подходит что-то своё. Может и для DSI/CSI экранов/камер найдётся в серии применение.

          Конечно, есть интересные альтернативы (например, дисплейные модули Двин, экраны с другим интерфейсом и др).

          MIPI DSI экраны тоже используют в коммерческих проектах. В комментариях выше об этом писали.

          Здесь, похоже, тоже был такой проект.

          В вакансии старшего инженера-схемотехника в Яндекс среди прочих ожиданий от специалиста есть "Понимаете структуру и принципы работы популярных коммуникационных интерфейсов: CAN, UART, SPI, I2C, USB, Ethernet, MIPI, PCIe и др."

          Возможно, они тоже используют камеры/экраны в своих проектах.


    1. Kopcheniy Автор
      18.06.2025 08:51

      Для больших разрешений скорее подойдёт процессор, чем мк.
      Не то чтобы выводы прям очень существенно экономятся. Но Мипи DSI сложнее, чем RGB. Зато и разрешения у экранов можно сделать побольше, и ЭМС лучше, при желании можно передать сигнал по кабелю на несколько метров.

      Для RGB нужно 24+clk+hsync+vsync+DE+ DISP = 25...29

      Для MIPI 2x(clk+D0...D3)+rst+te(не обязательно). = 11..12 Если ничего не забыл. Кол-во дифф. пар зависит от разрешения и конкретной модели.


      1. alexey_public
        18.06.2025 08:51

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


  1. Fox_Alex
    18.06.2025 08:51

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


    1. Kopcheniy Автор
      18.06.2025 08:51

      Что интересное делали (если не секрет или можно в лс) ?)

      Под Линукс интересует?


      1. ASergey
        18.06.2025 08:51

        Добрый день!

        Да, под Linux, это, как мне кажется, наиболее распространенная ОСь для дисплейных продуктов. Интересен ваш опыт, раз вы готовы им делиться, такую информацию в систематизированном виде маловато.

        У меня есть старенький MacBook Pro 15 - у него дисплей вроде бы ещё LVDS даже, но хотел в него что-нибудь армовое (а может и рисковое) поставить с большой батарейкой, эдакий долгоиграющий терминал.

        Есть блок Lane assist от машины - две камеры на жёсткой металлической раме и какая-то логика без документации. Было бы интересно его отреверсить. Но это всё мои хотелки, для которых и коплю опыт )

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