HOME

PRODUCTOS

PROYECTOS

TUTORIALES

VIDEOS

FREEWARE

PROGRAMAS

FUNCIONES C

EMPRESA

ENGLISH

                   

tutorial: manejo del teclado matricial en ANSI C para el sistema EB88  

 

 

Descripción:

En esta sección, se proporcionan las librerías necesarias para manejar un teclado matricial 4 x 4 para el microcontrolador EB88, en versiones para los compiladores C de HITECH y CCS.

Las funciones están basadas en el diagrama electrónico y la asignación de señales del teclado proporcionados en este vínculo usando el header conector de 8 pines de los sistemas EB88. Si el programador necesita modificar la asignación de señales para adaptarla a otro teclado puede hacerlo cambiando los datos en las funciones.

Se proporcionan las funciones para detectar los valores ASCII al oprimir teclas individuales y también para el manejo de "strings" leídos desde el teclado. Las funciones disponibles para cada compilador son las siguientes:

 

 

                                                 

                   

DIAGRAMA DEL TECLADO Y SU INTERFAZ CON SISTEMA EB88

 

 

 

hitech.jpg (1548 bytes)

FUNCION DESCRIPCION

w=GetBot( )

Espera la opresión de una tecla y regresa de la función con el código ASCII de la tecla oprimida y lo asigna a la variable w. Ver Programa de Prueba 1.

SetBot( )

Recibe caracteres del teclado hexadecimal y los acomoda con formato de string en el arreglo de nombre "bot[ ]". El string acepta 7 caracteres máximo. Pueden escribirse menos de 7 caracteres, terminando con la tecla "F". Ver Programa de Prueba 2. "bot[ ]" es un arreglo global. La función envía ECO al LCD por cada caracter recibido.

WrtBot( )

Escribe en el LCD, iniciando en la posición en donde se encuentre el cursor, el string contenido en el arreglo bot[ ]. Ver Programa de Prueba 2.

 

PROGRAMA DE PRUEBA 1

-Genere una carpeta con el nombre "TECLADO" y almacene allí los siguientes archivos: HITECHKEYTINY.c , KEY33.h. El programa despliega en el LCD cada tecla oprimida en las primeras 8 posiciones.

-La librería KEY33.h, incluye todas las funciones para el control del LCD (ver TEMA MANEJO DEL LCD) y las funciones para manejo del teclado.

-Siga el procedimiento detallado en este vínculo: CREAR UN PROYECTO DENTRO DE MPLAB.PDF

-Abra el proyecto en MPLAB y compile con la opción "build all". El archivo .hex resultante, cárguelo con el programa TINY a EVOLUPIC Bootloader 16F88. Conecte el LCD 16 x 1 y el teclado hexadecimal.

-No olvide posicionar todos los microswitches del sistema EVOLUPIC, en la posición "OFF" de tal manera que no interfieran con las señales de control del LCD.

PROGRAMA DE PRUEBA 2

-En una nueva carpeta almacene los siguientes archivos: HITECHKEY5TINY.c y key33.h. Siga el procedimiento detallado en el programa anterior

-Este programa utiliza las nuevas funciones GetBot( ), SetBot( ) y WrtBot( ), las cuales se encuentran incluídas en la librería key33.h

-El programa incluye funciones para mostrar la información en el LCD (ver TEMA MANEJO DEL LCD).

-Compile el programa, con la opción "Build all" y cárguelo en EVOLUPIC Bootloader 16F88, conectado al LCD 16 x 1 y el teclado hexadecimal.

-No olvide posicionar todos los microswitches del sistema EVOLUPIC, en la posición "OFF" de tal manera que no interfieran con las señales de control del LCD.

-Este programa primeramente escribe en el LCD un "*" y espera que el usuario envíe un string desde el teclado. El string debe ser de un máximo de 7 caracteres. Si es de menos caracteres, debe de terminarse oprimiendo la tecla "F". Una vez que el programa termina de recibir el string, escribe el texto recibido en el segundo renglón del LCD, terminando con un "*".

 

 

ccs.jpg (13855 bytes)

FUNCION DESCRIPCION

w=GetBot( )

Espera la opresión de una tecla y regresa de la función con el código ASCII de la tecla oprimida y lo asigna a la variable w. Ver programa de prueba 1.

SetBot( )

Recibe caracteres del teclado hexadecimal y los acomoda en un string en el arreglo de nombre "bot[ ]". El string acepta 7 caracteres máximo. Pueden escribirse menos de 7 caracteres, terminando con la tecla "F". Ver Programa de Prueba 2. "bot[ ]" es un arreglo global. La función manda ECO al LCD por cada caracter recibido.

WrtBot( )

Escribe en el LCD, iniciando en la posición en donde se encuentre el cursor, el string contenido en el arreglo bot[ ]. Ver Programa de Prueba 2.

 

PROGRAMA DE PRUEBA 1

-Genere una carpeta con el nombre "TECLADO" y almacene allí los siguientes archivos: CCSKEYTINY.c , KEY3.h y 16F88.h . El programa despliega en el LCD cada tecla oprimida en las primeras 8 posiciones.

-La librería KEY3.h, incluye todas las funciones para el control del LCD (ver TEMA MANEJO DEL LCD) y las funciones para manejo del teclado.

-Siga el procedimiento detallado en este vínculo: CREAR UN PROYECTO DENTRO DE MPLAB.PDF

-Abra el proyecto en MPLAB y compile con la opción "build all". El archivo .hex resultante, cárguelo con el programa TINY a EVOLUPIC Bootloader 16F88. Conecte el LCD 16 x 1 y el teclado hexadecimal.

-No olvide posicionar todos los microswitches del sistema EB88, en la posición "OFF" de tal manera que no interfieran con las señales de control del LCD.

PROGRAMA DE PRUEBA 2

-Almacene en su carpeta los siguientes archivos: CCSKEY3TINY.c , KEY3.h y 16F88.h

-La librería KEY3.h, incluye todas las funciones para el control del LCD (ver TEMA MANEJO DEL LCD) y los delays, además de las funciones GetBot( ), SetBot( ) y WrtBot( ) para manejo del teclado.

-Siga los procedimientos detallados en el Programa de Prueba 1.

-Este programa primeramente escribe en el LCD un "*" y espera que el usuario envíe un string desde el teclado. El string debe ser de un máximo de 7 caracteres. Si es de menos caracteres, debe de terminarse oprimiendo la tecla "F". Una vez que el programa termina de recibir el string, en seguida escribe el texto recibido en el segundo renglón del LCD, terminando con un "*".