GESTION DE UN LCD USANDO CCS COMPILER (PICC)

GESTION DE UN LCD USANDO CCS COMPILER (PICC) La mayoría de displays de cristal líquido se usan con controlador del tipo HD44780, con un número de líneas variable y una cantidad de caracteres también variable, por ejemplo, en la figura 1 se observa un LCD de 2 líneas de 16 caracteres cada una, con el cual se realizan muchas de las aplicaciones de tipo académico. Figura 1. LCD Típico de 16 x 2 El bus de datos es de 8 bits, aunque también existe la posibilidad de trabajar con 4 bits (con un número menor de caracteres). El compilador C incluye un fichero (archivo lcd.c en la carpeta drivers) al instalarse, el cual contiene las funciones básicas necesarias para manejar el LCD en lenguaje C con solo incluir este fichero (#include) al inicio del programa. Este archivo dispone de algunas funciones como:  lcd_init(); Es la primera función que debe ser llamada. Borra el LCD y lo configura en el formato de 4bits, con 2 líneas y con caracteres de 5 x 8 puntos, en modo de encendido, cursor apagado y sin parpadeo. Configura el LCD con un autoincremento del puntero de direcciones y sin desplazamiento del display real.  lcd_gotoxy(byte x, byte y); Indica la posición de acceso al LCD. Por ejemplo, (1,1) indica la primera posición de la primera línea y (1,2) indica la primera posición de la segunda línea.  lcd_getc(byte x, byte y); Lee el carácter de la posición (x,y).  lcd_putc(char s); S es una variable de tipo char. Esta función escribe la variable en la posición correspondiente. Se pueden usar caracteres de escape como: • • • \f : Limpia el LCD. \n : Lleva el cursor hacia l

58 downloads 95 Views 138KB Size

Recommend Stories


Stufe a Pellet CONSOLE LCD - LCD CONSOLE CONSOLE LCD - LCD-KONSOLE CONSOLA LCD - CONSOLA LCD
Stufe a Pellet CONSOLE LCD - LCD CONSOLE CONSOLE LCD - LCD-KONSOLE CONSOLA LCD - CONSOLA LCD ISTRUZIONI PER L'USO USER INSTRUCTIONS MODE D'EMPLOI GE

CONOCIENDO Y USANDO UN PROCESADOR DE TEXTO
2 CONOCIENDO Y USANDO UN PROCESADOR DE TEXTO Saber usar un procesador de texto como el Word, nos permite escribir o transcribir un texto. Al finaliza

AX-LCD Axxess LCD screen 2000-up
Installation instructions for AX-LCD AX-LCD TABLE OF CONTENTS Connections to be made..................................... 3 Using the LCD screen....

RELOJ DE ESCRITORIO LCD
Cat. No. 63-729 MANUAL DEL PROPIETARIO Favor de leer antes de usar este aparato. RELOJ DE ESCRITORIO LCD con pantalla Jumbo 1 CARACTERISTICAS Su

Story Transcript

GESTION DE UN LCD USANDO CCS COMPILER (PICC) La mayoría de displays de cristal líquido se usan con controlador del tipo HD44780, con un número de líneas variable y una cantidad de caracteres también variable, por ejemplo, en la figura 1 se observa un LCD de 2 líneas de 16 caracteres cada una, con el cual se realizan muchas de las aplicaciones de tipo académico.

Figura 1. LCD Típico de 16 x 2

El bus de datos es de 8 bits, aunque también existe la posibilidad de trabajar con 4 bits (con un número menor de caracteres). El compilador C incluye un fichero (archivo lcd.c en la carpeta drivers) al instalarse, el cual contiene las funciones básicas necesarias para manejar el LCD en lenguaje C con solo incluir este fichero (#include) al inicio del programa. Este archivo dispone de algunas funciones como:  lcd_init(); Es la primera función que debe ser llamada. Borra el LCD y lo configura en el formato de 4bits, con 2 líneas y con caracteres de 5 x 8 puntos, en modo de encendido, cursor apagado y sin parpadeo. Configura el LCD con un autoincremento del puntero de direcciones y sin desplazamiento del display real.  lcd_gotoxy(byte x, byte y); Indica la posición de acceso al LCD. Por ejemplo, (1,1) indica la primera posición de la primera línea y (1,2) indica la primera posición de la segunda línea.  lcd_getc(byte x, byte y); Lee el carácter de la posición (x,y).  lcd_putc(char s); S es una variable de tipo char. Esta función escribe la variable en la posición correspondiente. Se pueden usar caracteres de escape como: • • •

\f : Limpia el LCD. \n : Lleva el cursor hacia la posición (1,2). \b : Retrocede el cursor una posición.

El compilador de C ofrece una función más versátil para trabajar con el LCD: printf (string) printf (cstring, values…) printf (fname, cstring, values…) String es una cadena ó un arreglo (array) de caracteres, values es una lista de variables separadas por comas y fname es una función. El formato es %nt, donde n es opcional y puede ser: 1-9: para especificar cuantos caracteres se deben especificar. 01-09: para indicar la cantidad de ceros a la izquierda. 1.1-9.9: para coma flotante. t puede indicar: c s u d Lu Ld x X Lx LX f g e w

carácter cadena o carácter entero sin signo entero con signo entero largo sin signo entero largo con signo entero Hexadecimal minúsculas entero Hexadecimal mayúscula entero largo Hexadecimal minúscula entero largo Hexadecimal mayúscula flotante truncado flotante con redondeo flotante en formato exponencial entero sin signos con decimales insertados. La 1ª cifra indicada el total, la 2ª el número de decimales.

A continuación se observan una serie de ejemplos de aplicación con la salida en pantalla de la variable Valor en los algunos formatos: Formato %03u %u %2u %5 %d %x %X %4X %3.1w

Valor = 0x12 018 18 18 18 18 12 12 0012 1.8

Valor = 0xFE 254 254 * 254 -2 fe FE 00FE 25.4

En el programa en lenguaje C una instrucción válida para desplegar un mensaje en el LCD es: printf (lcd_putc, “n= %u”, Valor); El driver LCD.c está pensando para trabajar con el PORTD o el PORTB. Por defecto, utiliza el PORTD a menos que se le indique lo contrario mediante: #define use_portb_lcd TRUE, se pone o quita el comentario modificando el archivo que se encuentra en la carpeta drivers dentro de la carpeta PICC donde queda instalado el programa. Por defecto este driver utiliza siete terminales de comunicación entre el LCD y el PIC. En la figura 2 se observa parte del archivo LCD.c donde se encuentran definidas las conexiones utilizadas y la posibilidad de cambiar el puerto usado (subrayado en azul).

Figura 2. Segmento de código del driver LCD.c dado por el fabricante del compilador PICC

También se puede trabajar con otros puertos, por ejemplo con el PORTC, ó con pines diferentes a los que se han predefinido para los puertos B ó D. Para este procedimiento es necesario realizar varias modificaciones del archivo LCD.c como se muestra en el archivo EjemploLCD y los archivos lcd_modificado_lewin y lcd_modificado_lewin2. GESTION DE UN LCD USANDO CCS COMPILER (PICC) En este compilador es posible manejar un LCD gráfico con una controladora KS0108 (Ver figura 3).

Figura 3. LCD Gráfico común de fondo azul.

El compilador de C también maneja sus propios drivers para controlar este tipo de dispositivos. Particularmente existen 3 archivos que se encuentran en la carpeta de instalación del programa y son: GLCD.c, GRAPHICS.c y uno más específico que es HDM64GS12.c. Cada uno de estos define en su código la forma en que debe ser conectado el microcontrolador a ellos (Ver Figura 4).

Figura 4. Segmento de código del archivo GLCD.c para ver la distribución de pines.

Las funciones definidas son: glcd_init(mode); Debe ser la primera función en usarse o invocarse. Mode puede ser ON u OFF, si es ON, enciende el LCD. glcd_pixel(x, y, color); Establece el color del pixel. Puede activarse o desactivarse (color ON u OFF). glcd_fillScreen(color); Rellena el LCD de un color determinado. Puede activarse o desactivarse (color ON u OFF). glcd_line(x1,y1,x2,y2,color) Dibuja una línea del punto (x1,y1) al punto (x2,y2) con el color dado. desactivarse (color ON u OFF).

Puede activarse o

glcd_rect(x1,y1,x2,y2,fill,color) Dibuja un rectángulo entre en punto (x1,y1) extremo superior izquierdo al punto (x2,y2) extremo inferior derecho. Fill indica si es o no rellenado en su interior. Puede activarse o desactivarse (color ON u OFF).

glcd_bar(x1,y1,x2,y2,width,color) Dibuja una barra (linea amplia) del primer punto (x1,y1) al Segundo (x2,y2). Width es la cantidad de pixeles de ancho. El color puede activarse o desactivarse (ON/OFF). glcd_circle(x,y,radius,fill,color) Dibuja un circulo con centro en (x,y) y radio radius. Puede ser o no rellenado en su interior. El color puede activarse o desactivarse (ON/OFF). glcd_text57(x,y,textptr,size,color) Escribe el texto indicado por textptr. Se inicia su despliegue en las coordenadas (x,y) y se puede escalar el tamaño 7x5 por defecto (size = 1). El color puede activarse o desactivarse (ON/OFF).

En el archivo glcd_pic compilando el programa picCCS_006 se puede comprobar una forma de usar este tipo de dispositivos.

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.