Los displays consisten en una matriz de módulos de 5×7 puntos LED bicolor. Hay dos modelos, uno de 8 y otro de 11 módulos. Se pretende reciclarlos para poder ser controlados por un Arduino uno o nano, que mediante comunicación serie, se encargaría de mostrar el texto en el display.
Los displays presentan un conector de 6 pines del que tras un poco de ingeniería inversa se van viendo sus funciones.
El Display contiene en primer lugar una serie de inversores tipo 74HC04 que adaptan las señales de entrada
Un demultiplexor 74HC238 se encarga de seleccionar la fila correspondiente de las 7 que contiene cada módulo. La fila correspondiente se selecciona con los pines 2 a 4 del conector. (los puntos de las filas de todos los módulos van seriados, a través de una serie de registros de desplazamiento que se describen más abajo).
Un driver ULN2003A es el encargado de pilotar los transistores MOSFET 10P03L que a su vez encienden cada una de las 7 filas de diodos
Una serie de registros de desplazamiento STPIC6C595 se encargan de almacenar cada uno de los puntos de la fila seleccionada, los registros, van seriados, por lo que todos los puntos de una misma fila lo están también.
Para conectar el arduino se utilizan los pines (salidas digitales) 2 a 7 correspondiendo:
El programa en Arduino, es muy simple, básicamente crea un puerto serie para permanecer a la escucha de cualquier texto (el tamaño del texto está limitado al tamaño del display (6 puntos por cada letra). Luego, el texto es convertido a puntos e insertado en una matriz para mostrarlo en el display. Una rutina se encarga de: 1º- ir seleccionando una a una cada una de las siete filas de puntos (pines 2-4) 2º cargar los registros de desplazamiento con todos los puntos correspondientes a dicha fila (pines 6-7) 3º apagar y encender de nuevo el display para refrescar y mostrar dicha fila. Para mostrar una imagen completa las filas deben refrescarse constantemente.
Uso Hay dos tamaños de displays de 8 y de 11 caracteres. A la hora de cargar el programa en el arduino, es necesario seleccionar de qué display se trata:
//=========================================================================== //=========================== Tipo de display ============================= //=========================================================================== * //Elegir solo uno * #define _PEQUEÑO //8 displays, (7x40 puntos) * //#define _GRANDE //11 displays, (7x55 puntos) * //===========================================================================
Con solo des-comentar la opción correspondiente y cargar el software, al arduino ya está listo para funcionar. Cualquier texto, que se envíe al arduino vía serie, se mostrará en el display. Para utilizar el color verde es necesario comenzar el texto con el carácter “|” (la barra vertical del 2) ej.
"Hola" mostrará "Hola" en color rojo en el display "|Hola" mostrará "Hola" en color verde en el display