You are on page 1of 8

UNIVERSIDAD TCNICA DEL NORTE FICA

SISTEMAS MICROPROCESADOS

Ing. Gerardo Collaguazo. Integrantes: Tabita Quilumbaquin Edwin Ruiz

Fecha: 21 de junio de 2012

1. TEMA: MANEJO DE TECLADO MATRICIAL CON DECODIFICADOR 2. OBJETIVOS 2.1 OBJETIVO GENERAL:
Realizar una aplicacin con el teclado matricial de 4 x 4 usando decodificador mmc74922

2.2 OBJETIVOS ESPECFICOS:


Conocer el funcionamiento del teclado matricial, as como su modo de trabajar con el decodificador mmc74922. Usar las interrupciones del micro controlador para conocer la posicin de la tecla pulsada

3. Descripcin
Utilizando un teclado y el decodificador de teclado, (el decodificador de tecla lanza una seal cuando una tecla se presiona, esa seal voy a enviar a la interrupcin externa 1 ,2 o 3, una vez que recibo la seal externa). Leer el puerto para ver que tecla se presiono.

4. MARCO TERICO

Los teclados matriciales son ensamblado en una matriz que pueden ser de 4x3 o 4x4, (con 16 tecla, configuradas en 4 filas y 4 columnas). Cuando no se ha oprimido ninguna tecla, es decir todas las teclas abiertas, no hay ninguna conexin entre filas y columnas.

Cuando se oprime una tecla se hace conexin entre la fila y la columna de la tecla. COMO SABER SI UNA TECLA SE OPRIMIO?

Para conocer la tecla que se ha oprimido utilizamos la siguiente relacin: TECLA=4xRi +Cj Donde: Tecla=la tecla oprimida en binario Ri=numero de rengln escaneado. Cj=numero de columna donde se encontr la tecla.

DECODIFICADOR DE TECLADO MATRICIAL


Muchos teclados comerciales ya traen incluido su decodificador, que escanean el teclado y si, una tecla es presionada, regresa un nmero que identifica la tecla. Otra alternativa es adaptar al teclado matricial por separado un chip decodificador, para este propsito en la prctica se utilizara el decodificador MM74C922

El decodificador mostrado tiene 8 entradas; las 4 entradas X son conectadas a las 4 columnas del teclado y las 4 entradas Y son conectadas a los 4 renglones. Cuando se oprime una tecla el cdigo de 4 bits de la tecla (con 16 teclas, los cdigos estn entre 0000 y1111 en binario) aparecer en las 4 lneas de salida y la lnea de dato disponible (DA) se pone en BAJO. Si se conecta a una lnea de interrupcin el microprocesador ser interrumpido cuando se oprima alguna tecla. La Rutina de Servicio de la Interrupcin, entonces lee los 4 bits y procesa el dato. El chip del decodificador se encarga de eliminar el rebote de las teclas, lo que libera al programador de esta responsabilidad, esto es una ventaja al usar un chip decodificador.

CARACTERSTICAS DEL DECODIFICADOR 74C922


Transforma automticamente el cdigo de la tecla presionada en un nmero de 4 bits (0000 1111). El chip tiene 4 entradas para X1.X4 y 4 salidas Y1..Y4 que se conectan a las X1..X4 y Y1..Y4 del teclado matricial y 4 salidas de datos A, B, C, D que identifican la tecla presionada. Tiene su propio circuito de deteccin, incluyendo resistencias de pull up para las filas. Pero necesita aadir un capacitor externo a la entrada OSC para la frecuencia de bsqueda o utilizar un reloj externo con este propsito.

INTERRUPCIONES:
Las interrupciones son desviaciones del flujo de control del programa originadas ascronamente por diversos sucesos que no se hallan bajo la supervisin de las instrucciones. Dichos sucesos pueden ser externos al sistema, como la generacin de un flanco o nivel activo en un pin del micro controlador, o bien internos, como el desbordamiento de un contador. El comportamiento del micro controlador ante la interrupcin es similar al de la instruccin CALL de llamada a subrutina. En ambos casos se detiene la ejecucin del programa en curso, se salva la direccin actual del PC en la Pila y se carga el PC con una direccin, que en el caso de CALL viene acompaando a la propia instruccin, y en el caso de una interrupcin es una direccin reservada de la memoria de cdigo, llamada Vector de interrupcin

Tipos de interrupciones. o Interrupcin externa en el pin PD2/INT0, PD3/INT1, PB2/INT2 o Cambio de nivel (estado) en los 4 puertos del micro controlador. o Finalizacin del temporizador/contador TMR0, TMR1 y TMR2 o Finalizacin de la conversin A/D. o Envi o recepcin de datos a travs del puerto serial. o Realizacin de PWM. Vectores de interrupciones. Cada interrupcin est identificada por un vector de interrupcin, que es una direccin particular en la memoria flash todos los vectores estn ubicados en posiciones consecutivas de la memoria flash y forman la denominada tabla de vectores de interrupcin. El reset no es una interrupcin, pero su direccin 0x00 tambin se conoce

como vector de reset, por defecto la tabla de vectores de interrupcin estn ubicadas en las primeras posiciones de la memoria como est representada en la figura.

Para entender cmo funciona el mecanismo de las interrupciones en bajo nivel, el contador de programa es un registro que dirige cada una de las instrucciones que ejecuta el CPU. Al dispararse la interrupcin, el hardware guardara en la pila el valor actual del contador de programa y lo actualizara con el valor del vector de interrupcin respectivo. De modo que el CPU pasa a ejecutar el cdigo que se encuentra a partir de esa direccin. Al final del cdigo de la interrupcin debe haber una instruccin de retorno que restaure el contador de programa con el valor que se haba guardado en la pila. Si se llegara a producir el evento excepcional en que se disparen dos o ms interrupciones al mismo tiempo se ejecutaran la interrupcin en orden de prioridad. Tiene mayor prioridad la interrupcin cuyo vector se ubique ms bajo, es decir, entre todas la interrupciones la INT0 tiene siempre las de ganar.

- Lista de componentes:
Micro controlador atmega 324p. Resistencias de 330 Oh Cables. Protobooar Teclado matricial 4x4 Fuente de 5 v Mmc 74hc922

5. ESQUEMA DE CONEXIN.

6. ALGORITMO. 1. 2. 3. 4. 5. Configurar el vector de interrupcin INT2 Configurar la interrupcin en modo ascendente. Verificar si se oprimi alguna tecla Descifrar que tecla se oprimi. Visualizar en un displays 7s

7. CONCLUSIONES. - Con la ayuda del decodificador se logro disminuir el cdigo del programa. - La conexin perfecta del teclado con el decodificador fue esencial para evitar errores luego. - La configuracin del INT2 fue crucial para que el uC logre trabajar. TEMA: MANEJO DE TECLADO MATRICIAL SIN DECODIFICADOR 1. OBJETIVOS 1.1 OBJETIVO GENERAL:
Manejar el teclado matricial sin el uso del decodificador.

1.2 OBJETIVOS ESPECFICOS:


Conocer el funcionamiento del teclado matricial, as como su modo de trabajar sin el decodificador mmc74922. Crear el algoritmo adecuado para la deteccin de la tecla exacta.

2. ESQUEMA DE CONEXIN.

3. ALGORITMO. 1. Configurar los 4 bits bajos del puerto B como salida y los 4 bits altos como entradas. 2. Realizar un desplazamiento de 1L en los 4 bits altos del puerto B 3. Verificar si se oprimi alguna tecla 4. Rastrear reglones para encontrar la columna de las teclas oprimidas 5. Descifrar que tecla se oprimi. 6. Visualizar en un displays 7s 4. CONCLUSIONES: - Sin la utilizacin del decodificador se tuvo que realizar un procedimiento complejo para descifrar la tecla que se oprimi. Una conexin adecuada fue til para la creacin del algoritmo.

5. BIBLIOGRAFA
Collaguazo, Gerardo, Sistemas Basados En Microprocesadores Tutorial avr, Biblioteca personal. Percy Julio Chambi Pacco, Programacin AVR, teclado matricial 4x4.

You might also like