informe teclado matricial.doc
TRANSCRIPT
microcontroladoresIng
Integrantes:OmysSemestre:
SextoFecha de entrega: TEMATECLADO MATRICIAL CONTENIDOOBJETIVOS. 2
DESCRIPCIN... 2
INTRODUCCIN. 3
MARCO TERICO.. 4PROCEDIMIENTO.. 5a) Materiales...... 5b) Cdigo lenguaje ensamblador.. 6c) Simulacin.. 9CONCLUCIONES 9RECOMENDACIONES.. 10BIBLIOGRAFIA. 10 OBJETIVOS
Objetivo General Disear, compilar y simular el circuito mediante la utilizacin de los softwares de microcontroladores PIC, para as poder resolver el problema planteado en la prueba. Objetivos Especficos Visualizar el valor o smbolo correspondiente a cada una de las teclas.
Implementar y demostrar a travs de circuitos funcionales las capacidades bsicas de los Microcontroladores, desarrollando una solucin acertada para cada problema planteado. DESCRIPCIN
En el siguiente proyecto utilizaremos una pantalla LCD 16x2, y un teclado matricial 3x4, conectados segn el diagrama esquemtico de la figura mpstrada de la simulacin.
El objetivo de este proyecto ser visualizar el valor o smbolo correspondiente a cada una de las teclas. INTRODUCCIN
Como propuesta de aplicacin prctica utilizando microcontroladores se plantea entonces el desarrollo de un proyecto utilizando lenguaje ensamblador, este es un lenguaje de programacin de bajo nivel para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables.
Implementa una representacin simblica de los cdigos de mquina binarios y otras constantes necesarias para programar una arquitectura dada de CPU y constituye la representacin ms directa del cdigo mquina especfico para cada arquitectura legible por un programador. Esta representacin es usualmente definida por el fabricante de hardware, y est basada en los mnemnicos que simbolizan los pasos de procesamiento (las instrucciones), los registros del procesador, las posiciones de memoria y otras caractersticas del lenguaje. Un lenguaje ensamblador es por lo tanto especfico de cierta arquitectura de computador fsica (o virtual). Esto est en contraste con la mayora de los lenguajes de programacin de alto nivel, que idealmente son portables. Pero por facilidad de herramientas escogimos ISIS que permite disear el plano elctrico del circuito que se desea realizar con componentes muy variados, desde simples resistencias, hasta alguno que otro microprocesador o microcontrolador, incluyendo fuentes de alimentacin, generadores de seales y muchos otros componentes con prestaciones diferentes. Los diseos realizados en ISIS pueden ser simulados en tiempo real, mediante el mdulo VSM, asociado directamente con ISIS. MARCO TERICO Teclado Matricial: Para introducir datos de forma manual en un microcontrolador, nada mejor que un teclado matricial para este fin. Los teclados matriciales ms comunes son de 3 columnas por 4 filas, y de 4 columnas por 4 filas, como los mostrados en la figura:
El principio de funcionamiento de un teclado matricial es muy sencillo.
Bsicamente cuando pulsamos un botn en el teclado, estamos uniendo una fila con una columna.
Por ejemplo, al presionar la tecla 1, estaremos conectando la columna 1 con la fila 1; si pulsamos la tecla 4, estaremos conectando nuevamente la columna 1, esta vez con la fila 2; si pulsamos la tecla 9, entonces estaremos conectando la columna 3 con la fila 3.
Existen diversas formas de conectar e interpretar el funcionamiento de un teclado matricial. En el diagrama de la figura 7.3 se puede apreciar un teclado matricial 3x4 conectado a los pines del puerto B, los cuales se han distribuido y configurado de la siguiente manera:
PROCEDIMIENTODisear un programa en el PIC 16F877A que lea el teclado matricial siguiente:
Materiales
Cdigo lenguaje ensambladoradcon1=7
trisb=%11110000
trisa=0
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTD
DEFINE LCD_RSBIT 0
define LCD_RWREG PORTD
DEFINE LCD_RWBIT 1
DEFINE LCD_EREG PORTD
DEFINE LCD_EBIT 2
FILA_A VAR PORTB.0
FILA_B VAR PORTB.1
FILA_C VAR PORTB.2
FILA_D VAR PORTB.3
COL_1 VAR PORTB.4
COL_2 VAR PORTB.5
COL_3 VAR PORTB.6
COL_4 VAR PORTB.7
DATO VAR WORD
TECLA VAR WORD
TECLA1 VAR WORD
OPERADOR1 VAR WORD
OPERADOR2 VAR WORD
OPERANDO VAR WORD
INICIO:
GOSUB TECLADO
PAUSE 300
GOTO INICIO
TECLADO:
LOW FILA_A
LOW FILA_B
LOW FILA_C
LOW FILA_D
HIGH FILA_A
IF(COL_1=1 AND COL_2=0 AND COL_3=0 AND COL_4=0)THEN
IF(OPERADOR1