Ejercicios 06 subrutinas con LCD

1,912 views
1,743 views

Published on

Transformación de millas a metros

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,912
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
206
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ejercicios 06 subrutinas con LCD

  1. 1. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 1 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información EJERCICIO DE UTILIZACIÓN DE SUBRUTINAS PARA DISPLAYS DE CRISTAL LÍQUIDO (LCD) ENUNCIADO DEL EJERCICIO: Adecuar el programa de la transformación de millas a metros para mostrar el resultado en un LCD de 80 caracteres, que tiene el formato de 4 líneas con 20 caracteres cada una. El valor de las millas también debe ser ingresado mediante un teclado telefónico. FUNCIONAMIENTO DE LOS DISPLAYS DE CRISTAL LÍQUIDO Los LCD tienen en su estructura un controlador con los demás circuitos que permiten mostrar en matrices de puntos: caracteres alfanuméricos, símbolos de puntuación y caracteres japoneses; pudiendo el usuario crear hasta 8 símbolos propios.
  2. 2. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 2 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información La transferencia de la información desde un sistema microprocesado hacia la RAM de Datos del LCD (DDRAM), que tiene una capacidad de 80 bytes, se realiza utilizando buses de 8 bits o de 4 bits, que define el usuario al inicio del funcionamiento. Por la capacidad de almacenamiento que tiene la DDRAM se pueden transferir al controlador los códigos de hasta 80 caracteres, pero en el LCD se muestran solo los que permite el formato: • 16 caracteres en una línea (formato de 16x1) • 32 caracteres en dos líneas (formato de 16x2) • 64 caracteres en cuatro líneas (formato de 16x4) • 40 caracteres en dos líneas (formato de 20x2) • 80 caracteres en cuatro líneas (formato de 20x4) • 80 caracteres en dos líneas (formato de 40x2)
  3. 3. SISTEMAS MICROPROCESADOS: Ing. Jaime E. Velarde – Departamento de de Información Las direcciones de la DDRAM varían de acuerdo al formato: Los terminales de conexión del LCD, incluyendo los luz posterior o backlight, son SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 3 Departamento de Electrónica, Telecomunicaciones y Redes e la DDRAM que utiliza para almacenar los códigos de acuerdo al formato: Para displays de una línea Para displays de dos líneas Para displays de cuatro líneas Los terminales de conexión del LCD, incluyendo los dos que posee para on: Bus de Datos Polarización Líneas de Control Backlight Contraste Subrutinas para Displays de Cristal Líquido Electrónica, Telecomunicaciones y Redes lmacenar los códigos son de 7 bits y para alimentar a la Bus de Datos Polarización Líneas de Control Backlight Contraste Para el Bus de 4 Bits
  4. 4. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 4 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información Los Comando o Instrucciones para controlar al LCD son: Al conectar el LCD a un microcontrolador ATmega164P se puede realizar en las dos alternativas: • Con bus de 8 bits donde se necesitan 11 líneas, por ejemplo las 8 líneas del Pórtico C para el bus y 3 líneas del Pórtico D para control. • Mientras que, con un bus de 4 bits solo se necesitan 7 líneas; se puede utilizar el Pórtico C tanto para el bus como para control, quedando una línea libre.
  5. 5. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 5 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información Para la escritura de un comando en el LCD y la correspondiente confirmación con un bus de 8 bits, la secuencia de las señales de control y del bus es: En cambio, con un bus de 4 bits es: Para la escritura de un dato en el LCD la secuencias de las señales solo cambia RS = 0; pero la confirmación sigue igual, porque son comandos de lectura de la Bandera de Ocupado (BUSY FLAG). Bus de 4Bus de 8
  6. 6. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 6 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información Secuencia de comandos para que el funcionamiento del LCD sea con bus de 8 bits. Secuencia de comandos para que el funcionamiento del LCD sea con bus de 4 bits.
  7. 7. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 7 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información ANÁLISIS DE LA SOLUCIÓN: El uso del LCD permite a los microcontroladores presentar los resultados de forma más amigable al usuario, ya no son solamente dígitos los que se pueden mostrar, sino que se pueden ver: letras, signos de puntuación, algunas letras griegas y hasta símbolos definidos por el usuario. Además libera al microcontrolador de realizar el refresco como lo hace cuando se utilizan displays de LEDs de 7 segmentos. Con estas premisas el programa debe contemplar las siguientes tareas: • Inicialización del LCD para trabajar con bus de 8 bits. • Escribir en el LCD el texto de un mensaje informativo que especifique lo que realiza el programa, incluyendo espacios donde se muestre el dato de entrada y el resultado. • Ingreso de hasta tres dígitos para el dato de entrada mediante el teclado, en el espacio de la pantalla que se reservó. • Calcular el resultado a base del dato ingresado. • Escribir el resultado, en el espacio de la pantalla que se reservó. • Esperar por cualquier tecla, que permite regresar a la etapa donde se escribe todo el texto en la pantalla. Las ventajas al usar LCD, son mejor aprovechadas si se desarrolla la solución mediante un programa principal y subrutinas; en especial las necesarias para manejar el display y el teclado que se acoplan al microcontrolador. Estas últimas se codifican dentro un archivo secundario que se incluye al final del programa principal y que se denomina “SUB8B80CH.ASM”; de tal forma de poder utilizarlas en la solución de otros problemas.
  8. 8. SISTEMAS MICROPROCESADOS: Subrutinas para Displays de Cristal Líquido Página 8 Ing. Jaime E. Velarde – Departamento de Electrónica, Telecomunicaciones y Redes de Información SUBRUTINAS PARA EL LCD DE 80 CARACTERES CON UN BUS DE 8 BITS ETIQUETA DESCRIPCIÓN LCDRST Configura el funcionamiento del LCD para que trabaje con un bus de 8 bits y muestre el curso que se desplaza hacia la derecha WRTCMD Escribe un comando contenido en el registro AUX1 ONCUR Enciende el cursor OFFCUR Apaga el cursor TITCHR Parpadea el caracter y no se muestra el cursor TITCUR Parpadea el caracter y se muestra el cursor POSCUR Mueve el cursor a la posición indicada en el registro AUX1 WRTDIG Escribe el dígito hexadecimal contenido en el registro AUX1, el cursor avanza una posición WRTBYT Escribe los dígitos hexadecimales contenidos en el registro AUX1, el cursor avanza dos posiciones WRTCHR Escribe un caracter contenido en el registro AUX1, el cursor avanza una posición WRTLIN Escribe en una línea 20 caracteres contenidos en la tabla apuntada por el Puntero Z, el cursor queda al inicio de la siguiente línea WRTMSJ Escribe las cuatro líneas con los 80 caracteres contenidos en la tabla apuntada por el Puntero Z, el cursor queda al inicio del display WRTNUM Escribe el número hexadecimal, de hasta 10 dígitos, contenido en BUFFER a partir de la posición indicada por el valor del registro AUX1. Sin mostrar los ceros de la izquierda INPUT Ingreso de un número decimal de hasta 10 dígitos que se muestran desde la posición asignada en el registro AUX1 y el número máximo de dígitos se establece en el registro AUX2. La tecla asignada como S_CLR borra el último dígito ingresado y la tecla S_IGUAL termina la subrutina. Los dígitos ingresados se encuentran en las localidades superiores del BUFFER TECLAS Decodificación de un teclado de 4x4 teclas, existen dos posibilidades de asignación de las teclas mediante TBLKB UNSEG Deja pasar un segundo antes de continuar

×