Você está na página 1de 9

UNIVERSIDAD TCNICA DEL NORTE FICA

SISTEMAS MICROPROCESADOS

Ing. Gerardo Collaguazo. Integrantes: Tabita Quilumbaquin Edwin Ruiz

Fecha: 07 de junio de 2012

1. TEMA: MANEJO DE LA LCD 16x2 2. OBJETIVOS 2.1 OBJETIVO GENERAL:


Realizar el programa para poder visualizar un mensaje por medio de la pantalla LCD.

2.2 OBJETIVOS ESPECFICOS:


Conocer el funcionamiento de los pines de la pantalla LCD. Configurar los pines de control y de datos de la pantalla LCD.

3. Descripcin
1.En la prctica se trabajara con una LCD de 16x2, con la finalidad de mostrar un texto en la pantalla, usando un bus de 8 bits. El envi de datos se realizara a travs del puerto b del MC, mientras que el control se realizara a travs del puerto c, con lo siguiente: Pin C0 a Rs Pin C1 a rw Pin C6 a E 2. Realizar un dezplazamiento a 4 bits

4. MARCO TERICO Pantalla LCD.


Una pantalla de cristal liquido o LCD es una pantalla delgada y plana formada por un determinado nmero de pixeles monocromos (para este caso), colocados delante de una fuente luminosa. Una de las principales caractersticas de las pantallas LCD es su bajo consumo de energa elctrica en comparacin con los displays. Existen varias presentaciones de una pantalla LCD por ejemplo de 2 lneas por 8 caracteres,2x16, 2x20, 4x20, 4x40, etc. Sin backlight (14 pines) o con backlight (16 pines, iluminado de pantalla), el LCD ms popular es el 2x16, 2 lneas de 16 caracteres cada una.

CARACTERSTICAS DE LA PANTALLA LCD


Desplazamiento de los caracteres a la izquierda y a la derecha. Memoria de 40 caracteres por lnea en los de 16 por 2. Movimiento del cursor y cambio de su aspecto. Conexin para el usuario usando 4 u 8 bits. Permite que el usuario pueda programar 8 caracteres.

IMAGEN 1 TUTORIAL AVR

Descripcin de los pines.

IMAGEN 2 HOJA DE DATOS LCD

Control de la pantalla LCD. Para inicializar la pantalla LCD tenemos que seguir una serie de instrucciones las cuales como se puede apreciar en el cdigo son las siguientes que se encuentran representadas en la tabla.

IMAGEN 3 COLLAGUAZO, GERARDO, SISTEMAS BASADOS EN MICROPROCESADOREs

5. FLIJOGRAMA Flujo grama 1

Flujo grama 2

INICIO

CONF DEL PORT D COMO SALIDA CONF, LCD

CONFIG. LOS PINES DE LA LCD

LIMPIAR PANTALLA

ESCRIBIR LCD
"HOLA",'*',"MUNDO

DEZPLAZAR

FIN

6. DISEO
- Lista de componentes: Pantalla LCD 16x2. Micro controlador atmega 324p. Potencimetro de 1k ohmio. Cables. Protobooar Fuente de 5 v

7. ESQUEMA COMPLETO

NOTA: NO ESTN ESPECIFICADOS LOS PINES DE ALIMENTACIN DEL MICROCONTROLADOR

8. PROGRAMA:
.include"m324pdef.inc" ;definiciones variables .def temp=r16 .def dato_lcd= r17 ;programa principal .org 0x00 ldi temp,HIGH(RAMEND); INICIO PUTTERO DE LA RAM out SPH,temp ldi temp, LOW(RAMEND) out SPL,temp rcall config_port rcall init_lcd ; LLAMADA A CONFIGURA PUERTOS ; LLAMADA A INICIALIZACION LCD

rcall clr_lcd ;LLAMADA A RESET DEL LCD rcall r_50ms ldi ZH,HIGH(msj_1*2); PUNTERO PARA EL MENSAJE ldi ZL,LOW(MSJ_1*2) rcall envia_msj ;LLAMADA A VISUALIZACION DE L MENSAJE fin: nop rjmp fin; ;configuracion de puertos ;lcd pb0-pb7

;pc0 rs, pc1 r/w, pc6 e config_port: ldi temp,0xff out ddrc,temp ;pin de control rs, rw, e. ldi temp,0xff out ddrb,temp ;pines de dato ;configuracion lcd init_lcd: ldi dato_lcd,0b00111100 ;2 lineas dysplay,bus de datos de 8 bits y visualizacion de 5x10 rcall envia_cmd rcall r_15u ldi dato_lcd,0b00001111 ;pantalla encendida, cursor encendido, intermitencia del cursor encendido. rcall envia_cmd rcall r_15u ldi dato_lcd,0b00000001;borrar pantalla y retorna el cursor a la direccion 0 rcall envia_cmd rcall r_15u ldi dato_lcd,0b00000110 ;modo incremental del cursor, no dezplazamiento de texto rcall envia_cmd ret ;envia instruccion a la lcd ;entrada r17 = dato - lcd ;pc0 - rs, pc1-rw, pc6-e ;rs=0,rw=0,e=1, envia_cmd: ldi temp,0 out portc,temp nop sbi portc,6 nop out portb,dato_lcd rcall r_15u cbi portc,6 nop ret ;________________________ ;envia dato a lcd ;pc0-rs,pc1-rw,pc6-e ;rs=1,rw=0,e=1 envia_data: ldi temp,0 out portc,temp nop sbi portc,6 nop sbi portc,0 nop out portb,dato_lcd rcall r_15u cbi portc,6 ;e=0 cbi portc,0 ;rs=0 nop ret ;envia mensaje a lcd envia_msj: lpm dato_lcd,z+ cpi dato_lcd,'*' ;carga dato ;indicadro de cambio

;rs=0,rw=0,e=0 ;e=1 ;envia palabra de control ;e=0

;rs-0,rw=0,e=0 ;e=1 ;rs=0 ;envia caracter

breq sec_line cpi dato_lcd,0 breq fin_msj rcall envia_data rjmp envia_msj sec_line: ldi dato_lcd,0b11000000 rcall envia_cmd rjmp envia_msj fin_msj: ret clr_lcd: push temp in temp,SREG push temp ldi dato_lcd,$01 rcall envia_cmd pop temp out SREG,R16 pop temp ret ;retar5do de 15us ;ningun registro modificado r_15u: nop nop nop nop nop nop nop nop nop nop ret r_50ms: push r16 in r16,SREG push r16 push r18 ldi r18,60 lazo0_r_50ms: ldi r16,$ff lazo1_r_50ms: dec r16 brne lazo1_r_50ms dec r18 brne lazo0_r_50ms pop r18 pop r16 out SREG,r16 pop r16 ret ;tabla msj_1:

;indicador de fin de mensaje

;limpio

.db "HOLA",'*',"MUNDO",0

9. CONCLUSIONES
Con la conexin a 8 bits del bus de datos de la pantalla se facilito la programacin de la misma, puesto que enviamos los 8 bits de datos en paralelo. Para poder configurar el funcionamiento de la LCD, se necesita enviar por los puertos del MC la seal adecuada, ya sea que necesitemos desplazamiento de texto, 8 bits de datos, una sola lnea de visualizacin, etc.

10. BIBLIOGRAFA
Collaguazo, Gerardo, Sistemas Basados En Microprocesadores Tutorial avr, biblioteca personal.

Você também pode gostar