Funciones
Las funciones que utilizaremos de la librería serán:
void LCD_init()
Esta función sirve para inicializar la LCD.
Parámetros de entrada:
- No hay parámetros de entrada
Parámetros de salida:
- No hay parámetros de salida
void LCD_gotoxy(int8 x, int8 y);
Esta función sirve para ir a una posición específica de la LCD:
Parámetros de entrada:
- int8 x: La posición del eje x.
- int8 y: La posición del eje y.
Parámetros de salida
- Sin parámetros de salida.
void LCD_putc(char c);
Esta función sirve para escribir caracteres en la LCD.
Parámetros de entrada:
- char c: El caracter o cadena de caracteres que deseamos escribir.
Parámetros de salida:
- Sin parámetros de salida.
Código de ejemplo
#include <16f887.h> // Modificar con el PIC a utilizar #Fuses HS, NOWDT, NOPROTECT //Modificar por los fusibles adecuados #use delay (clock=12M) //Modificar por la frecuencia de reloj adecuada #include <MLCD.c> //Seleccionar librería adecuada void main(){ lcd_init(); //Inicializa LCD lcd_gotoxy(5,1); //Vamos a la posición 5,1 printf(lcd_putc, "INTESC"); //Imprimimos los caracteres "INTESC" lcd_gotoxy(3,2); //Vamos a la posición 3,2 printf(lcd_putc, "CCS-COMPILER"); //Imprimimos "CCS-COMPILER" while(true){ } //Nos quedamos en un ciclo infinito vacío }
Descarga e instrucciones
Descargar Librerias LCD para PIC C Compiler
Dentro del archivo de descarga encontrarás los siguientes archivos:
- MLCD.c -> Miuva LCD
- MPLCD.c -> Miuva Pro LCD
Ambos deberán de ser copiados en la carpeta:
C:\Program Files (x86)\PICC\Drivers
Posteriormente, para utilizar:
Miuva
Agregamos la siguiente línea:
#include <MLCD.c> //Para Miuva
Miuva Pro
Agregamos la siguiente línea:
#include <MPLCD.c> //Para Miuva Pro
Miuva 16 o Miuva 18
La diferencia de ambas librerías es que en el caso de Miuva, el pin conectado a RW está directamente a tierra mientras que en Miuva Pro este mismo pin está conectado al pin E2 del PIC 18F87J50. Por lo tanto para utilizar la librería en Miuva16 o Miuva 18, dependerá de nuestras conexiones.
Tendremos que cablear nuestra LCD a Miuva16/Miuva18 manualmente, lo recomendable será enviar el pin RW directamente a GND, y utilizar la librería MLCD.c por lo tanto en caso de que ocupemos algún puerto diferente que en Miuva, tendremos que editar el archivo de la librería en la siguiente sección:
// Change these pins to fit your own board. #define LCD_DB4 PIN_D0 #define LCD_DB5 PIN_D1 #define LCD_DB6 PIN_D2 #define LCD_DB7 PIN_D3 #define LCD_RS PIN_D5 //#define LCD_RW PIN_C1 #define LCD_E PIN_D4
En donde ajustaremos los pines a nuestro cableado.
Posteriormente agregaremos la siguiente línea a nuestro código:
#include <MLCD.c>