Hola amigos del foro, en esta ocasión comparto con ustedes una librería de mi propia creación, esta maneja un GLCD de 160x80 pixeles marca samsung, con controladores LC7981 marca Sanyo, es un GLCD excelente!, lo compre en México, en Republica del Salvador, para los que conozcan.
Les platico un poco acerca de este magnífico GLCD:
* Modo alfanumérico, como si fuera un LCD de 26x10 caracteres, un LCD tamaño monstruo!
* Modo gráfico, con 1600 pixeles, un tamaño de pantalla de 160 pixeles de ancho, por 80 pixeles de alto.
* Backlight electroluminiscente, este detalle no me agrado mucho, si bien la iluminación EL se ve mucho mejor, también es cierto que no es nada sencillo conectarle un circuito de control a la luz de fondo, aún no he conseguido el dichoso circuito que propone el comerciante de estos GLCD, así que agradecería si alguno pudiera hecharme un cable sobre este tema.
* Pantalla touchscreen resistiva de 4 hilos, desgraciadamente no he podido hechar a andar del todo bien este touch, si bien ya lo pude utilizar, lo cierto es que no he podido calibrarlo, por lo que me dibuja donde quiere. También agradecería muchísimo si alguien fuera tan amable de guiarme por el buen camino del touchscreen.
El datasheet de este GLCD lo pueden hallar en:
Datasheet GLCD 160x80Y en la página del comerciante, la cual es:
http://www.infinitumpage.mx/GIOSYS/pagina2680.html pueden ver más información respecto al GLCD, el touchscreen y el backlight
Bueno, ahora pasemos a la librería.
Esta librería la he escrito yo mismo, en CCS, ya que tuve mucho tiempo parado mi GLCD por falta de una, y me di manos a la obra a escribirla, no es la mejor libreria que encontrarán, pero puede serles muy útil, la misma sirve para:
* Impresión de caracteres en modo alfanumerico al mismo estilo de putc("hola mundo"); para escribir en los LCD normales.
* Funciones para dibujar circulos, rectángulos, pixeles, barras y texto en modo gráfico, para estas funciones me apoye en la libreria ya existente para los GLCD de 128x64 que son más comunes.
* Dibujar imagenes completas de 160x80 pixeles, pasadas a monocromático y convertidas en código con el programa Image2Code, busquenlo por que es muy útil.
* Cuenta con un buffer interno que se puede activar en los PIC18, que son los que soportan arreglos de datos muy grandes, en este caso de 1600, y desactivar en el caso de PICs de gama media/baja, con este buffer se puede dibujar internamente a mayor velocidad y al final volcar su contenido en el GLCD para impresiones rápidas.
En fin, a grandes rasgos es lo que hace, a continuación les pongo un video que hice de la misma en funcionamiento:
Les anexo la libreria llamada glcd_160x80.h y el archivo de prueba, llamada main GLCD giosys.c, el cuál está hecho para un PIC16F877A, pero es facilmente transportable a otro pic, todas las funciones de usuario de la librería se encuentran detalladamente explicadas. Saludos y espero que le sirva a alguien.
Enlace rapidshare para descarga de libreria y programa de prueba:
Libreria glcd_160x80 y programa de prueba