Esta es la manera de conectar la LCD generalmente usaremos 4 lineas para los datos (D4-D7) los bits RS,RW , GND VDD y VEE pin al cual ira un potenciómetro para regular el contraste, ademas de los pines bk+ y bk- para el blackligth en las pantallas que traen iluminación LED de fondo.
PROYECTO: Enviar un mensaje a una pantalla LCD conectada al puertoC de microcontrolador.
CCS dispone de una librería para trabajar con pantallas LCD llamada lcd.h la cual llamamos con la
instrucción: #include <lcd.c>
La abrimos como muestra la imagen y dentro encontramos los comandos necesarios para controlarla:
lcd_init() Must be called before any other function.
lcd_putc(c) Will display c on the next position of the LCD.
\a Set cursor position to upper left
\f Clear display, set cursor to upper left
\n Go to start of second line
\b Move back one position
lcd_gotoxy(x,y) Set write position on LCD (upper left is 1,1)
lcd_getc(x,y) Returns character at position x,y on LCD
CONFIGURACION
Nos dice que podemos controlarla de 2 maneras utilizando
a.) acceso por puerto
con este codigo le decimos que utilizaremos un completo.
ejemplo:
#define LCD_DATA_PORT getenv("SFR:PORTC")
b.) acceso por pines
aquí podemos usar los pines de la manera que queramos.
ejemplo:
#define LCD_ENABLE_PIN PIN_C0
#define LCD_RS_PIN PIN_C1
#define LCD_RW_PIN PIN_C2
#define LCD_DATA4 PIN_C4
#define LCD_DATA5 PIN_C5
#define LCD_DATA6 PIN_C6
#define LCD_DATA7 PIN_C7
El codigo queda como sigue:
#include <16F886.h>
#FUSES NOWDT //No Watch Dog Timer
#use delay(crystal=20000000) //reloj de 20Mhz
#define LCD_DATA_PORT getenv("SFR:PORTC") //indicamos lcd conectada a PuertoC
#include <lcd.c> //librería LCD viene con el compilador
void main()
{
lcd_init(); //inilicializar LCD
while(TRUE)
{
lcd_gotoxy(1,1); //ir a la linea 1 posicion 1
printf(lcd_putc,"LCD 16x2"); //mensaje en linea1
delay_ms(50); //retardo de 50ms
lcd_gotoxy(1,2); //ir a la linea 2 posicion 1
printf(lcd_putc,"hacermirobot"); //mensaje linea 2
delay_ms(50); //retardo de 50ms
}
}
Montaje en PROTEUS



No hay comentarios:
Publicar un comentario