Está en la página 1de 25

Display de Cristal Liquido

(LCD)

MG. ING. JAVIER CAMILO POMA PALACIOS

Pampas - 2017
Display de Cristal Liquido
El mdulo LCD es de bajo consumo, perifrico de
salida de visualizacin, flexible, eficaz y
econmico, siendo los microcontroladores los
dispositivos ms adecuados para optimizar sus
prestaciones y control. Mdulo de contraste
variable y un excitador de LCD CMOS basado en
el microcontrolador HD44780 de Hitachi. El
microcontrolador genera caracteres desde una
ROM o RAM. Todas sus funciones son
controladas por comandos y el mdulo es
fcilmente conectado a un microcontrolador .

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Display de Cristal Liquido
Caractersticas
LCD de dos lneas de 20 caracteres de 5 x
7 o 5x10 pixeles y cursor.
192 tipos de caracteres ASCII generados
desde la ROM (tamao 5x7 pixeles).
Ocho caracteres generados por el usuario
en la RAM (CGRAM).
Memoria RAM de datos para visualizar de
hasta 80 bytes (DDRAM).
Capacidad de interface de 4 o 8 bits con
el microprocesador.
MG. JAVIER CAMILO POMA PALACIOS _ 2017
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Display de Cristal Liquido

Caractersticas
Entre los comandos tenemos: Borrar
pantalla, Cursor en posicin 0, Pantalla o
Cursor encendido/apagado, Parpadeo de
caracter, Desplazamiento de cursor, y
Desplazamiento de pantalla.
Incluye circuito oscilador y Reset
automtico cuando se conecta la
alimentacin.
Alimentacin de +5 VDC.

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Display de Cristal Liquido
Aspecto fsico y asignacin de pines

Columna 1
Columna 2

1 16

Fila 1
Fila 2

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Display de Cristal Liquido

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Display de Cristal Liquido
1 16

1 16

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Display de Cristal Liquido
El mdulo dispone de 14 pines de conexin, cuyas funciones son: 8 pines
(D0-D7) reciben los caracteres ASCII a presentar, as como cdigos de
control que regulan los efectos de visualizacin. Tambin el mdulo LCD
enva informacin sobre su estado interno.
Aspecto fsico y asignacin de pines

Pin Smbolo Descripcin


1 Vss Tierra de alimentacin GND.
2 Vdd Alimentacin de 5 V.
3 Vo Contraste del cristal liquido.
Seleccin del registro de control/registro de datos:
4 RS RS=0 Seleccin registro de control
RS=1 Seleccin registro de datos
Seal de lectura/escritura:
5 R/W R/W=0 Escritura (Write)
R/W=1 Lectura (Read)
Habilitacin del modulo:
6 E E=0 Mdulo desconectado
E=1 Mdulo conectado
7-14 D0-D7 Bus de datos bidireccional.
15 A nodo Sirven para activar la luz interna de la
16 C Ctodo pantalla
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Programacin de LCD en C
El compilador CCS, y en general cualquier
compilador, incorpora un fichero (driver) para
manejar fcilmente un LCD.
El archivo es nuestro caso es flex_lcd.c y debe
llamarse con un #INCLUDE.
Este archivo tiene varias funciones ya definidas.

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Programacin de LCD en C
Comandos del LCD
lcd_init();
Es la primera funcin que debe ser llamada.
Borra la pantalla LCD y lo configura en formato de 4 bits,
con dos lneas y con caracteres de 5x8 puntos, modo
encendido, cursor apagado y sin parpadeo.
Configura el LCD con un autoincremento del puntero de
direcciones y sin desplazamiento del display real.

lcd_gotoxy (x,y);
Indica la posicin de acceso al LCD. Por ejemplo:
lcd_gotoxy(1,2) indica 1ra columna y 2da fila.

lcd_getc (x,y);
Lee el carcter de la posicin (x,y).
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Display de Cristal Liquido
Numeracin en LCD para el comando lcd_gotoxy(x,y)

Columna 1
Columna 2
Columna 3

Columna 16
1 16

Fila 1
Fila 2

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Programacin de LCD en C
Comandos del LCD
lcd_putc (s);
"s" es una variable de tipo char, ("e", . Esta funcin escribe la
variable en la posicin correspondiente. Si adems se
indica:
\f = se limpia la LCD
\n = el cursor va a la posicin (1,2)
\b = el cursor retrocede una posicin.
El compilador de C ofrece una funcin ms prctica para
trabajar con la LCD:
printf (string);
printf (cstring, vales...)
printf (fname, cstring, vales, ...)
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Programacin de LCD en C
Comandos del LCD

Donde string es una cadena o un arreglo (array)


de caracteres, cstring es una cadena de
caracteres de configuracin de salida, vales es
una lista de variables separadas por comas y
fname es una funcin.
Adicional a esto, el formato a utilizar es %nt,
donde n es opcional y puede ser:
1-9 : para especificar cuntos caracteres se deben
especificar
01-09 : para indicar la cantidad de ceros a la izquierda
1.1-9.9 : para coma flotante.

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Los valores que puede tomar "t"
Comandos del LCD
t Descripcin
c Carcter
S Cadena o carcter
u Entero sin signo
d Entero con signo
Lu Entero largo sin signo
Ld Entero largo con signo
x Entero hexadecimal (minsculas)
X Entero hexadecimal (maysculas)
Lx Entero largo hexadecimal (minsculas)
LX Entero largo hexadecimal (maysculas)
f Flotante con truncado
g Flotante con redondeo
e Flotante en formato exponencial.
Entero sin signo con decimales insertados. La 1a cifra indica el total, la
w
2a el nmero de decimales
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Ejemplos de programacin de LCD
Comandos del LCD
lcd_send_byte(1,"U");
lcd_send_byte(1,0x55);
lcd_send_byte(0,1); //Borra LCD
lcd_putc("Ing. Electronica"); //Aqui sin tilde
lcd_putc("\f");
lcd_putc("\n");
printf (fname, cstring, vales, ...)
printf(lcd_putc,"%c",tabNum[i]);
printf(lcd_putc, "\fV= %01.2fVoltios", p);
printf(lcd_putc, "\nTEMP: %2.1f ", T);
printf(lcd_putc, "\P= %4.2f atm ", PRES_atm);
MG. JAVIER CAMILO POMA PALACIOS _ 2017
Creador de caracteres para LCD
Adems de los caracteres estndar
que tiene grabado en su ROM el
LCD, se puede programar y
visualizar 8 caracteres programados
en la CGRAM del mdulo LCD.
Para crear un carcter, pulse sobre
los cuadros pequeos en la ventana
del programa Custom Char Gen,
dibujado el carcter, pulse sobre el
botn Generar Cdigo.

Esta herramienta nos ayuda a crear


en forma visual caracteres
personalizados para usarlos en
LCD. Cada carcter del LCD est
formada por 40 puntos, 8
horizontales y 5 verticales.

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Creador de caracteres para LCD
Aqu se muestra parte del programa en C de CCS para 2 caracteres ( y ),
los cuales se pueden llamar con la direccin DDRAM 0x8 y 0x9 (o 0x0 y 0x1).

MG. JAVIER CAMILO POMA PALACIOS _ 2017


CGRAM: Diseo de 8 Caracteres
DDRAM CGRAM ADDRES Caracter Patterns Dato
0 1 0 0 0 0 0 0 4 0 0 0 0 0 1 1 0 0 0 C Por ejemplo para crear el carcter
0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 2
0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 4 (que es uno de los 8
0 8 H 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 2
0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 C caracteres), utilizando el programa
0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 Custom Char Gen se tiene los
0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 1 0 0 0 4 8 0 0 0 0 0 0 0 1 0 1 datos como se muestra.
0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 1
0 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 5
0 9 H 0 1 0 0 1 0 1 1 0 0 0 0 1 0 0 1 0 9
0 1 0 0 1 1 0 0 0 0 0 1 1 1 1 1 1 F
0 1 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 8
0 1 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 4
0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 1 0 0 0 0 1 0 1 1 0 1 6
0 A H 0 1 0 1 0 0 1 1 0 0 0 1 1 0 0 1 1 9
0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 1 1 1
0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 1 E
0 1 0 1 0 1 1 0 0 0 0 1 0 0 0 0 1 0
0 1 0 1 0 1 1 1 0 0 0 1 0 0 0 0 1 0
0 1 0 1 1 0 0 0 5 8 0 0 0 0 0 0 1 0 0 2
0 1 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 4
0 1 0 1 1 0 1 0 0 0 0 0 1 1 1 0 0 E
0 B H 0 1 0 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1
0 1 0 1 1 1 0 0 0 0 0 1 0 0 0 1 1 1
0 1 0 1 1 1 0 1 0 0 0 1 0 0 0 1 1 1
0 1 0 1 1 1 1 0 0 0 0 0 1 1 1 0 0 E
0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
0 1 1 0 0 0 0 0 6 0 0 0 0 0 1 1 1 0 0 E
0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 1 1 0 0 0 1 0 0 0 0 1 0 1 1 0 1 6
0 C H 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 1 1 9
0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 1 1 1
0 1 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 1
0 1 1 0 0 1 1 0 0 0 0 1 0 0 0 1 1 1
0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Tabla de caracteres ASCII

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Tabla de caracteres ASCII

MG. JAVIER CAMILO POMA PALACIOS _ 2017


MG. JAVIER CAMILO POMA PALACIOS _ 2017
Microcontrolador con LCD
Ejemplos de aplicacin de mostrar diversos mensajes en un LCD 16x2 o
20x4, utilizando caracteres creados y efectos especiales.

LCD1
LM016LP
VDD

VDD
VSS

VEE

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
E

K
1
2
3
4
5
6

7
8
9
10
11
12
13
14

15

16
D0
D1
D2
D3
RV1 R1
1K
50%

VDD
5k

VDD

C1

15pF R9
10k

X1
4MHz
U1 D9
2 9 C2 1N914
RA0/AN0 OSC1/CLKI
3 10
RA1/AN1 RA6/OSC2/CLKO
4
RA2/AN2/VREF-/CVREF
5
RA3/AN3/VREF+
15pF R10
6 1
RA4/T0CKI/C1OUT/RCV RE3/MCLR/VPP
7
RA5/AN4/SS/LVDIN/C2OUT 10k
11
RC0/T1OSO/T1CKI
12
RC1/T1OSI/CCP2/UOE
D0 21 13
RB0/AN12/INT0/FLT0/SDI/SDA RC2/CCP1
D1 22 15
RB1/AN10/INT1/SCK/SCL RC4/D-/VM
D2 23 16
RB2/AN8/INT2/VMO RC5/D+/VP
D3 24 17
RB3/AN9/CCP2/VPO RC6/TX/CK
25 18
RB4/AN11/KBI0/CSSPP RC7/RX/DT/SDO
26
RB5/KBI1/PGM
27 14
RB6/KBI2/PGC VUSB
28
RB7/KBI3/PGD
PIC18F2550

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Microcontrolador con LCD

Ejemplos de aplicacin de mostrar diversos


mensajes en un LCD 20x4.

Mensajes
Mansajes amplios
Nmeros grandes
Letras grandes
Jugando con la pelota
Pacman bsico

MG. JAVIER CAMILO POMA PALACIOS _ 2017


Ejercicios para los grupos N 4

Los ejercicios deben ser diados e implementados en


hardware con LCD 20x4 PIC18F2550 PIC18F4550.
1. Abecedario en letras grandes (Maysculas y
minsculas).
2. Pacman mejorado.
3. Realizar un tablero de juego, con 5 pulsadores para las
vocales por un lado y otros 5 pulsadores por otro lado
con las figuras de animales que corresponden a las
iniciales de las figuras; si coinciden al ser presionados
2 pulsadores opuestos debe iluminarse luces del auto
fantstico de 8 leds, iluminarse la letra y si fuese
posible el sonido que realiza el animal.

MG. JAVIER CAMILO POMA PALACIOS _ 2017

También podría gustarte