En el video adjunto se puede ver un proyecto haciendo uso de la misma.
alphaLCDLowPin rev.3 (01-ENE-2011)
Funcionamiento:
// Libreria CCS para el manejo basico de LCDs alfanumericos basados en el chip
// HD44789. Es valida para LCDs de 1 a 4 lineas (cualquier numero de
// caracteres por linea), con caracteres de 5x8 puntos.
// Esta libreria implementa la escritura en el lcd (no permite la lectura)
// en modo 4 bits. de manera que utiliza solo 6 pines (2 de control y 4
// de datos).
// Incorpora una pantalla de test (mostrada al inicializar el LCD,
// se pueden comentar/descomentar las lineas correspondientes para
// desactivarla/activarla.
// Mantiene el control de la posicion del cursor en todo momento,
// por lo que si al LCD se le envia una cadena mayor del numero de caracteres
// por linea que tiene, la cadena continua escribiendose en la linea
// siguiente (en la anterior debido a la organizacion de la memoria del LCD
// se saltaba una linea).
// Definicion de pines utilizados del LCD:
// Conecta el pin RW a masa (unicamente se realizan escrituras).
// El pin VEE (o V0 en algunos casos) se le da tension mediante el cursor de
// un potenciometro conectado entre +5v y 0v para el ajuste de contraste.
// Los pines DB0,DB1,DB2 y DB3 no se utilizan (se pueden dejar al aire).
// Metodos implementados:
// lcd_init (): debe ser llamada antes de utilizar el LCD para inicializarlo.
// por defecto se inicia con lcd on, cursor off, y blink off (modo 1,0,0).
// lcd_gotoxy(x, y): mueve el cursor a la columna(x)/linea(y) deseada,
// (el primer caracter de la primera linea es 1,1).
// lcd_putc(c): Escribe la cadena c en el lcd (al llegar al final de una linea
// continua en la siguiente, si es la ultima recomienza por la primera).
// lcd_clear(): Borra la pantalla del lcd y mueve al cursor a la posicion 1,1
// lcd_clearFrom(int8 x, int8 y, int8 charsToClear): borra desde x e y indicados
// el numero de caracteres indicado en charsToClear.
// lcd_mode(int1 lcdOn,cursorOn,blinkOn): Cambia el modo del lcd entre
// pantalla encendida1 o apagada0 (util para hacer parpadear el lcd),
// cursor0 (linea debajo del caracter) o cursor1, parpadeo1 (cuadro intermitente
// que ocupa todo el caracter) parpadeo0.
// lcd_send_byte(BOOLEAN esComando, int8 n): Manejo avanzado para el envio de
// comandos manuales (normalmente no se usara) esComando=true es enviar
// comando avanzado (ver datasheet) y esComando=false es enviar dato.
// void lcd_DefineChar(int8 charIndex,int8 byte7,int8 byte6,int8 byte5,int8
// byte4,int8 byte3,int8 byte2,int8 byte1,int8 byte0): Crear caracter personal.
// Se pueden definir hasta 8 caracteres personalizados (charIndex[0]..charIndex[7].
// HD44789. Es valida para LCDs de 1 a 4 lineas (cualquier numero de
// caracteres por linea), con caracteres de 5x8 puntos.
// Esta libreria implementa la escritura en el lcd (no permite la lectura)
// en modo 4 bits. de manera que utiliza solo 6 pines (2 de control y 4
// de datos).
// Incorpora una pantalla de test (mostrada al inicializar el LCD,
// se pueden comentar/descomentar las lineas correspondientes para
// desactivarla/activarla.
// Mantiene el control de la posicion del cursor en todo momento,
// por lo que si al LCD se le envia una cadena mayor del numero de caracteres
// por linea que tiene, la cadena continua escribiendose en la linea
// siguiente (en la anterior debido a la organizacion de la memoria del LCD
// se saltaba una linea).
// Definicion de pines utilizados del LCD:
// Conecta el pin RW a masa (unicamente se realizan escrituras).
// El pin VEE (o V0 en algunos casos) se le da tension mediante el cursor de
// un potenciometro conectado entre +5v y 0v para el ajuste de contraste.
// Los pines DB0,DB1,DB2 y DB3 no se utilizan (se pueden dejar al aire).
// Metodos implementados:
// lcd_init (): debe ser llamada antes de utilizar el LCD para inicializarlo.
// por defecto se inicia con lcd on, cursor off, y blink off (modo 1,0,0).
// lcd_gotoxy(x, y): mueve el cursor a la columna(x)/linea(y) deseada,
// (el primer caracter de la primera linea es 1,1).
// lcd_putc(c): Escribe la cadena c en el lcd (al llegar al final de una linea
// continua en la siguiente, si es la ultima recomienza por la primera).
// lcd_clear(): Borra la pantalla del lcd y mueve al cursor a la posicion 1,1
// lcd_clearFrom(int8 x, int8 y, int8 charsToClear): borra desde x e y indicados
// el numero de caracteres indicado en charsToClear.
// lcd_mode(int1 lcdOn,cursorOn,blinkOn): Cambia el modo del lcd entre
// pantalla encendida1 o apagada0 (util para hacer parpadear el lcd),
// cursor0 (linea debajo del caracter) o cursor1, parpadeo1 (cuadro intermitente
// que ocupa todo el caracter) parpadeo0.
// lcd_send_byte(BOOLEAN esComando, int8 n): Manejo avanzado para el envio de
// comandos manuales (normalmente no se usara) esComando=true es enviar
// comando avanzado (ver datasheet) y esComando=false es enviar dato.
// void lcd_DefineChar(int8 charIndex,int8 byte7,int8 byte6,int8 byte5,int8
// byte4,int8 byte3,int8 byte2,int8 byte1,int8 byte0): Crear caracter personal.
// Se pueden definir hasta 8 caracteres personalizados (charIndex[0]..charIndex[7].
Descarga del archivo