Gráfico equivalente al controlador LCD HD44780

4

El controlador LCD Hitachi HD44780 es un controlador LCD de modo de carácter extremadamente común. Aunque creo que ahora está descontinuado, los controladores compatibles se utilizan en muchas pantallas LCD de nivel comercial y de aficionados que están disponibles de manera muy amplia y económica. Las instrucciones de interconexión también están ampliamente disponibles.

Me gustaría saber qué podría ser un controlador equivalente para pantallas LCD gráficas, como una pantalla de 128x64 píxeles. Algo amplio y económico disponible para el aficionado, con el que es razonable interactuar desde una MCU, ya sea en paralelo o en serie.

Las posibilidades incluyen el KS0108 (paralelo) y ST7565 (serial), pero ninguno parece ser tan popular como el HD44780.

    
pregunta Mark

6 respuestas

2

Los controladores SED y KS son los controladores gráficos LCD más comunes. Para tamaños de LCD más pequeños, a menudo incluyen los controladores, la memoria y el controlador, por lo que un solo chip puede hacer todo. Son lo suficientemente populares como para ser clonados por otros fabricantes, por lo que los conjuntos de comandos para algunos chips se relacionan muy estrechamente con uno de estos dos.

    
respondido por el Adam Davis
4

Lo maravilloso de los estándares es que hay muchos de ellos.

Lo más cercano a un estándar es, desafortunadamente, para los paneles LCD que tienen controladores pero no controladores. IIRC, una interfaz típica tendrá señales de polaridad de fase, reloj de cuadro, reloj de línea, reloj de datos y 4 bits de datos. Cada línea de píxeles debe cronometrar en suficientes grupos de cuatro píxeles para llenar el ancho de la pantalla (se ignorarán los bits adicionales), lo que hace que el reloj de datos sea alto y bajo para cada grupo. La unidad de la línea de reloj de alta y baja para estroboscopio la línea. La primera línea de cada fotograma debe tener el reloj del fotograma alto y la señal de polaridad de fase debe alternar cada fotograma.

Las señales del reloj de línea, y las derivadas de ellas, deben enviarse a una velocidad uniforme. Sin embargo, la sincronización precisa de las señales del reloj de datos no importa siempre que todos los relojes pasen para que una línea suceda dentro de la ventana adecuada. Si no tiene DMA, puede ser posible mantener a una pequeña pantalla feliz y aún tener tiempo para hacer otra cosa, pero refrescar la pantalla será una molestia. Sin embargo, si tiene DMA, y puede administrar un CPLD pequeño para manejar algunos aspectos del tiempo, implementar la visualización de esa manera puede ser muy gratificante. Hice un panel de visualización como ese y logré un rendimiento de actualización de pantalla superior a todo lo que podría haber hecho con un controlador de pantalla convencional. Incluso logré una escala de grises de 4 niveles ejecutando la pantalla a 100 cuadros / segundo y, cada tres cuadros, manejando la pantalla dos veces usando un búfer y una vez con otro.

    
respondido por el supercat
3

Para las pantallas LCD de caracteres, el HD44780 (o uno de sus equivalentes) está en todas partes.

Para LCD gráficos hay muchos chips. Para pantallas pequeñas (teléfonos celulares más antiguos) hay muchos chips Philips / NXP con interfaz I2C. A menudo se utilizan como SOG (silicio sobre vidrio) integrado con la pantalla LCD. La interfaz es a menudo un cable flexible o una tira de cebra. No muy amigable para los aficionados, pero muy barato en la producción en masa.

Para pantallas de 128x64, el KS0108 es común. Las pantallas ligeramente más grandes pueden tener, por ejemplo, un controlador SED o T6963. Debe haber muchos otros que no conozco.

Los microcontroladores recientes pueden tener un controlador GLCD integrado, por lo que pueden usar LCD sin controlador. Esos son más baratos y las actualizaciones de la pantalla pueden ser más rápidas.

=============================

(agregado 2016-06-24)

Para una pantalla BW pequeña y simple, las pantallas de estilo de Nokia 5510 (¿o es 5110?) 84 * 48 píxeles son muy baratas, pero la calidad suele ser mala y parece que hay al menos 2 versiones del controlador.

    
respondido por el Wouter van Ooijen
2

Una actualización común del HD44780 que he visto es la ST7920 . Este controlador de pantalla conducirá un LCD monocromo de 128x64. (Con frecuencia se vende como un módulo "12864 LCD", con un pinout compatible con las pantallas HD44780 típicas).

De forma predeterminada, utiliza una fuente ASCII 16x8 incorporada, que ofrece una pantalla de texto de 16x4 con letras claras extremadamente grandes, y puede controlarse utilizando un conjunto de comandos compatible con HD44780. En este modo, es en gran medida un reemplazo directo para una pantalla HD44780. Sin embargo, agrega una serie de nuevas características:

  1. Puede manejarse utilizando un modo compatible con SPI, así como los modos paralelos estándar de 8 bits y 4 bits. El conjunto de comandos es idéntico en todos los modos.

  2. Junto con la fuente ASCII 16x8 mencionada anteriormente, también contiene una fuente china 16x16 de tamaño considerable, a la que se puede acceder escribiendo pares de alto ASCII en la pantalla (compatible con la codificación GB o Big5, según el modelo) . Si bien la mayoría de estos caracteres solo son útiles para los usuarios chinos, hay una serie de caracteres y símbolos de uso general disponibles.

  3. Contiene una serie de comandos "extendidos" a los que se puede acceder mediante codificaciones que no son utilizadas por el HD44780. Entre estos se encuentra un comando para colocar la pantalla en un modo gráfico, en cuyo punto puede escribir un mapa de bits directamente en la pantalla.

respondido por el duskwuff
1

Encontré este controlador BV4512 a través de Google. Parece ser bastante fácil de controlar a través de I2C.

    
respondido por el Adam Lawrence
1

Si está interesado en utilizar una pantalla HD44780, tengo un breve PIC18 hd44780 tutorial aquí .

En cuanto a un LCD gráfico, consulte este LCD de 128x64 en SparkFun: enlace . Parece ser bastante popular y utiliza la interfaz paralela KS0108B.

    
respondido por el Nate

Lea otras preguntas en las etiquetas