lcd
DESCRIPTION
manejo de la LCD 16F877ATRANSCRIPT
![Page 1: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/1.jpg)
PROGRAMACION EN MICROCONTROLADOR PIC
RAMIREZ BARRERA ROBERT STWARD
![Page 2: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/2.jpg)
LIQUID CRYSTAL DISPLAY
• Características:
2 líneas x 16 caracteres cada una.
Microcontrolador Hitachi HD 44780
![Page 3: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/3.jpg)
MEMORIA DEL LCD
• DDRAM
Es el área de memoria RAM interna del LCD donde se envían los caracteres (en
código ASCII de 8 bits) que se quieren visualizar en la pantalla. Su capacidad
es de 80bytes (se pueden poner hasta 80 caracteres, pero sólo se visualizan
unos pocos).
![Page 4: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/4.jpg)
• CGROM
Es un área de memoria ROM interna del LCD donde está definido todo el juego
de caracteres que el display puede mostrar (números, caracteres latinos,
griegos, caracteres Cómo gobernar un display LCD alfanumérico basado en el
controlador HD44780 japoneses “Kanji” y otros). Tiene almacenados hasta 160
caracteres de 5×7 puntos (para números, caracteres latinos y Kanji) y 32 de
5×10 puntos (para caracteres griegos y otros).
![Page 5: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/5.jpg)
• CGRAM
Es el área de memoria RAM interna del LCD donde el usuario puede definir sus
propios caracteres o gráficos. El tamaño de la CGRAM es de 64 bytes lo que
permite crear hasta 8 caracteres de 5×7 puntos o 4 de 5×10. Los caracteres
son en realidad de 5×8 puntos, pero las fuentes están definidas en 5×7.
![Page 6: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/6.jpg)
MANEJO DEL LCD EN CCS COMPILER
• Librería : lcd.c
• Declaración de Pines para el LCD
![Page 7: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/7.jpg)
FUNCIONES PARA EL LCD
• Lcd_init() : inicializa la configuración de la lcd
• lcd_putc(c) : Mostrará c en la siguiente posición de la pantalla LCD. A continuación
tienen un significado especial:
\f Clear display
\n Go to start of second line
\b Move back one position
• lcd_gotoxy(x, y) : Establece la posición de escritura en la pantalla LCD (upper left is
1,1)
• lcd_send_byte(int cmd, int var) : Funcion para definer nuevos caracteres en la
CGRAM.
![Page 8: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/8.jpg)
NUEVOS CARACTERES EN LA CGRAM
• lcd_send_byte(int cmd, int var) :
cmd = 0 >> INGRESAR DIRECCION, var = ADDRESS
cmd = 1 >> INGRESAR DATOS, var = datos
![Page 9: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/9.jpg)
• Definir nuevos caracteres:
• Mostrar el carácter:
![Page 10: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/10.jpg)
TECLADO MATRICIAL
• Características
Model: 16KeyPad
![Page 11: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/11.jpg)
MANEJO DEL TECLADO MATRICIAL EN CCS COMPILER
• Librería : Keypad.c (Cuando se agregan nuevas librerías estas deben estar en
la carpeta donde se creo el proyecto)
• Configuración de los Pines:
![Page 12: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/12.jpg)
FUNCIONES PARA EL TECLADO MATRICIAL
• kbd_init() : inicializa la configuración del teclado matricial.
• kbd_getc(c) : retorna el valor de la Tecla presionada o si no/0, esta funcion
puede ser llamada frecuentemente para no perder el valor de una teclada
presionada.
![Page 13: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/13.jpg)
GLCD
• Características:
KS0108 Graphics LCD library
• 128x64 pixel
![Page 14: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/14.jpg)
MANEJO DE GLCD EN CCS COMPILER
• Librerías:
HDM64GS12.c , graphics.c
![Page 15: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/15.jpg)
• Librería: graphics.c
Funciones para mostrar datos en la glcd
• Librería: HDM64GS12.c
Configuración de pines:
![Page 16: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/16.jpg)
FUNCIONES PARA GLCD
• glcd_init() : inicia la glcd
• glcd_pixel(x, y, color) : Establece el color del pixel
• glcd_fillscreen(color) : rellena el glcd de un color determinado puede
activarse o desactivarse
• glcd_line(x1,y1,x2,y2,color) : dibuja un rectángulo con un vértice en (x1,y1)
y el otro en (x2,y2). Puede ser rellenado o no y puede activarse un color o
no.
![Page 17: Lcd](https://reader034.vdocuments.co/reader034/viewer/2022042603/563db819550346aa9a90879d/html5/thumbnails/17.jpg)
• glcd_rect(x1,y1,x2,y2,fill,color) : dibuja un rectángulo con un vértice en (x1,y1) y el
otro en (x2n,y2). Puede ser rellenado o no y puede activarse un color o no.
• glcd_bar(x1,y1,x2,y2,width,color) : Dibuja una barra desde el primer punto al
segundo; se puede definir el numero del rango de pixeles y puede activarse el color
o no.
• glcd_circle(x, y, radius, fill, color) : dibuja un circulo con centro en (x, y) y con
el radio especificado; puede rellenarse o no y puede activarse el color o no.
• glcd_text57(x, y, textptr, size, color) : Escribe el texto empezando en (x, y); y los
caracteres son de 5x7 pixeles se puede escalar el tamaño y puede activarse el
color o no.