Cómo conectar un buffer de cuadro a un monitor LCD a través de DisplayPort o DVI en un sistema integrado

0

Primero me gustaría decir que soy principalmente un ingeniero de software. Si bien he pasado 14 horas investigando esto hasta ahora, me disculpo por adelantado si me olvido de un concepto básico o si uso una terminología incorrecta. ¡Siéntete libre de corregirme si lo hago!

Actualmente estoy trabajando en un generador eléctrico que se ejecuta mediante un microcontrolador principal integrado. En este momento estoy mostrando la interfaz de usuario con un módulo de pantalla simple a través de una conexión en serie, pero eventualmente deberá poder conectarse a un monitor LCD comercial.

La mayoría de los monitores modernos tienen entradas HDMI, DVI y DisplayPort. HDMI requiere una regalía para su uso en un proyecto comercial, por lo que no es una opción.

Avanzando, estoy trabajando bajo un modelo de 4 componentes.

Micro principal --- > Búfer de marco --- > Controlador de pantalla --- > Monitor

Tendré un micro principal que escribe valores RGB de 24 bits en un búfer de cuadros. El controlador de la pantalla luego extraerá un marco de esos valores, los procesará y los enviará a la pantalla.

Escribir los valores del micro al búfer no será un problema. Es desde ese punto que no estoy seguro de cómo proceder. Al buscar en Google para los controladores de pantalla en línea, no puedo encontrar ninguno que salga a DisplayPort o DVI por su cuenta. La mayoría de ellos tiene 24 salidas para cada bit de color, así como algunas otras cosas importantes para una pantalla LCD, como sincronización horizontal y vertical y una salida de reloj. La página 731 en ( enlace ) es un buen ejemplo.

No he podido encontrar una forma de poner ese tipo de salida en un cable DisplayPort o DVI en Internet para que pueda conectarse a una pantalla normal. He encontrado tan poca información que temo que me esté perdiendo algo muy fundamental sobre uno de estos conceptos.

¿Hay algo que me estoy perdiendo, esto no es posible por alguna razón o simplemente no estoy buscando los términos correctos?

Al final del día, realmente solo necesito obtener un marco de valores RGB de una porción de RAM en un monitor normal de 720p, así que si alguien sabe una mejor manera de hacerlo, me encantaría escuchar esas sugerencias también.

    
pregunta khislop

2 respuestas

1

Displayport / DVI / HDMI son prácticamente variaciones de un tema (ese tema es una señalización LVDS muy rápida, piense en Gb / s en cada par), y si el micro no tiene un puerto adecuado directamente, la respuesta habitual es una FPGA pequeño con algo de DDR para mantener el buffer de cuadro interconectado con el micro sobre alguna interfaz adecuada. Esto es un dolor en el culo si no haces FPGA ya que aunque parezca una programación, realmente no lo es.

Sugeriría que el enfoque inteligente para este tipo de cosas es hacer trampa, poner un puerto Ethernet en su máquina y usar una tableta / computadora portátil / teléfono con un navegador web como la interfaz para cualquier cosa que no pueda ejecutar desde un local. Pantalla SPI conducida. Algo con un navegador web probablemente esté más disponible que un monitor y, de todos modos, desea Ethernet para que pueda hacer SNMP para el estado y el control. Los tipos de desarrollo web son diez por centavo en comparación con la gente de VHDL para interfaces de video, y su micro probablemente ya tiene una pila de IP / servidor web / servidor SNMP.

    
respondido por el Dan Mills
0

Esta no es una tarea fácil, especialmente para "un micro principal" no especificado con un "buffer de cuadro". Para que una pantalla comercial funcione, necesitará un CONTROLADOR DE PANTALLA de alguna manera conectado a su "micro principal". El controlador generalmente es una pieza importante de hardware y lleva una IP seria (Propiedad Intelectual). La pantalla se puede incrustar en "un micro", como en muchos SoC, o conectarse externamente.

Ya que su "un micro principal" no tiene el puerto HDMI / eDP / VGA integrado, la solución debe ser con un dispositivo externo. Desafortunadamente, todos los controladores necesitarían una interfaz súper rápida como MIPI sobre unos pocos pares diferenciales, lo que tampoco es probable que se encuentre dentro del pinout de su "un micro principal".

Por lo tanto, quedan dos opciones posibles:

  • para transmitir su buffer de cuadros al puerto USB. El puerto debe tener capacidad para al menos USB2.0 HS y operar en modo host. Luego puede conectar uno de los puentes de USB a video disponibles, UFX6000 IC o similares de los productos DisplayLink. Si su "un micro" no tiene capacidad de host USB2.0 HS, esto no es una opción.

  • para mover su búfer de cuadros a un controlador de pantalla que usa una interfaz SPI rápida (doble o cuádruple), como Serie de chips FTDI FT81X .

OtraalternativaseríaseguirconelantiguoestiloVGAyusarlosdesarrollosVGAdeseriea basados en MCU de Parallax , todavía hay muchas pantallas que toman VGA como entrada. O Google para "VGA display shield" para otras variantes.

En todos los casos se requerirá un gran desarrollo de controladores en el lado de "un micro principal".

    
respondido por el Ale..chenski

Lea otras preguntas en las etiquetas