Sei sulla pagina 1di 10

microcontroladores

Ing

Integrantes:

Omys

Semestre:

Sexto

Fecha de entrega:

2
 TEMA

TECLADO MATRICIAL

 CONTENIDO

OBJETIVOS……………………………………………………………………………………. 2

DESCRIPCIÓN…………………………………………………………………………….….. 2

INTRODUCCIÓN……………………………………………………………………………. 3

MARCO TEÓRICO………………………………………………………………………….. 4

PROCEDIMIENTO.…………………………………………………………………………. 5

a) Materiales……………………………………………………………….…..... 5
b) Código lenguaje ensamblador.…………………………………………. 6

c) Simulación……………………….………………………………………………. 9

CONCLUCIONES…………………………………………………………………………… 9

RECOMENDACIONES…………………………………………………………………….. 10

BIBLIOGRAFIA….…………………………………………………………………………… 10

2
 OBJETIVOS

 Objetivo General

 Diseñar, compilar y simular el circuito mediante la utilización de los


software’s de microcontroladores PIC, para así poder resolver el
problema planteado en la prueba.

 Objetivos Específicos

 Visualizar el valor o símbolo correspondiente a cada una de las teclas.

 Implementar y demostrar a través de circuitos funcionales las

capacidades básicas de los Microcontroladores, desarrollando una

solución acertada para cada problema planteado.

 DESCRIPCIÓN

En el siguiente proyecto utilizaremos una pantalla LCD 16x2, y un teclado matricial


3x4, conectados según el diagrama esquemático de la figura mpstrada de la
simulación.

2
El objetivo de este proyecto será visualizar el valor o símbolo correspondiente a
cada una de las teclas.

 INTRODUCCIÓN

Como propuesta de aplicación práctica utilizando microcontroladores se plantea entonces


el desarrollo de un proyecto utilizando lenguaje ensamblador, este es un lenguaje de
programación de bajo nivel para los computadores, microprocesadores,
microcontroladores y otros circuitos integrados programables.

Implementa una representación simbólica de los códigos de máquina binarios y otras


constantes necesarias para programar una arquitectura dada de CPU y constituye la
representación más directa del código máquina específico para cada arquitectura legible
por un programador.

Esta representación es usualmente definida por el fabricante de hardware, y está basada


en los mnemónicos que simbolizan los pasos de procesamiento (las instrucciones), los
registros del procesador, las posiciones de memoria y otras características del lenguaje. Un
lenguaje ensamblador es por lo tanto específico de cierta arquitectura de computador
física (o virtual).

Esto está en contraste con la mayoría de los lenguajes de programación de alto nivel, que
idealmente son portables. Pero por facilidad de herramientas escogimos ISIS que permite
diseñar el plano eléctrico del circuito que se desea realizar con componentes muy
variados, desde simples resistencias, hasta alguno que otro microprocesador o
microcontrolador, incluyendo fuentes de alimentación, generadores de señales y muchos

2
otros componentes con prestaciones diferentes. Los diseños realizados en ISIS pueden ser
simulados en tiempo real, mediante el módulo VSM, asociado directamente con ISIS.

 MARCO TEÓRICO
 Teclado Matricial:

Para introducir datos de forma manual en un microcontrolador, nada mejor que un


teclado matricial para este fin. Los teclados matriciales más 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.


Básicamente cuando pulsamos un botón 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:

2
 PROCEDIMIENTO

Diseñar un programa en el PIC 16F877A que lea el teclado matricial siguiente:

 Materiales

2
 Código lenguaje ensamblador

adcon1=7
trisb=%11110000 TECLADO:
trisa=0 LOW FILA_A
DEFINE LCD_DREG PORTD LOW FILA_B
DEFINE LCD_DBIT 4 LOW FILA_C
DEFINE LCD_RSREG PORTD LOW FILA_D
DEFINE LCD_RSBIT 0
define LCD_RWREG PORTD HIGH FILA_A
DEFINE LCD_RWBIT 1 IF(COL_1=1 AND COL_2=0 AND COL_3=0 AND
DEFINE LCD_EREG PORTD COL_4=0)THEN
DEFINE LCD_EBIT 2 IF(OPERADOR1 <= 99) THEN
FILA_A VAR PORTB.0 OPERADOR1 = (OPERADOR1*10)+7
FILA_B VAR PORTB.1 LCDOUT $FE,1
FILA_C VAR PORTB.2 LCDOUT $FE,$80,"DEC HEX BIN ",DEC
FILA_D VAR PORTB.3 OPERADOR1
COL_1 VAR PORTB.4 Lcdout $fe,$C0, " 7 7 1",dec OPERADOR1
COL_2 VAR PORTB.5 ENDIF
COL_3 VAR PORTB.6 ENDIF
COL_4 VAR PORTB.7 IF(COL_1=0 AND COL_2=1 AND COL_3=0 AND
DATO VAR WORD COL_4=0)THEN
TECLA VAR WORD IF(OPERADOR1 <= 99) THEN
TECLA1 VAR WORD OPERADOR1 = (OPERADOR1*10)+8
OPERADOR1 VAR WORD LCDOUT $FE,1
OPERADOR2 VAR WORD LCDOUT $FE,$80,"FUN: ",DEC OPERADOR1
OPERANDO VAR WORD ENDIF
ENDIF
INICIO: IF(COL_1=0 AND COL_2=0 AND COL_3=1 AND
GOSUB TECLADO COL_4=0)THEN
PAUSE 300 IF(OPERADOR1 <= 99) THEN
GOTO INICIO OPERADOR1 = (OPERADOR1*10)+9

2
LCDOUT $FE,1 LCDOUT $FE,$0F
LCDOUT $FE,$80,"FUN: ",DEC OPERADOR1 ENDIF
ENDIF IF(OPERADOR1!=0 AND OPERANDO!=0 AND
ENDIF OPERADOR2!=0) THEN
IF(COL_1=0 AND COL_2=0 AND COL_3=0 AND OPERADOR1 =0
COL_4=1)THEN OPERADOR2 = 0
IF(OPERADOR1 <= 99) THEN OPERANDO = 0
OPERADOR1=(OPERADOR1*10)+4 LCDOUT $FE,1
LCDOUT $FE,1 LCDOUT $FE,$0F
LCDOUT $FE,$80,"FUN: ",DEC OPERADOR1 ENDIF
ENDIF
ENDIF IF(OPERADOR1!=0 AND OPERANDO!=0 AND
LOW FILA_A OPERADOR2!=0) THEN
HIGH FILA_D OPERADOR1 =0
IF(COL_1=1 AND COL_2=0 AND COL_3=0 AND OPERADOR2 = 0
COL_4=0)THEN OPERANDO = 0
IF(OPERADOR1!=0 AND OPERANDO!=0 AND LCDOUT $FE,1
OPERADOR2!=0) THEN LCDOUT $FE,$0F
OPERADOR1 =0 ENDIF
OPERADOR2 = 0 ENDIF
OPERANDO = 0 LOW FILA_D
LCDOUT $FE,1 RETURN

 Simulación

2
 CONCLUSIONES

 Se logró aprender las sentencias que se usan en lenguaje C y sus diferentes


formas de uso, lo cual me permitió realizar el proyecto de forma secuencial y
entendible para cualquier usuario, sin importar las veces que se usen estas
funciones lo importante es saber si solucionan el problema que se nos
presenta en cada línea de programación.

 Se construyó satisfactoriamente el programa en lenguaje ensamblador para el


microprocesador, se lo compiló, depuró y ejecutó utilizando los programas de
software sugeridos.

2
 RECOMENDACIONES

 Reducir el número de líneas es bueno para un mejor uso en la memoria del


PIC y evitar un desperdicio de la misma, además se evita redundancias que
podrían confundir a otro programador que vea el informe del proyecto.

 Se recomienda no confiar en un 100% en el simulador de PROTEUS ya que


este presenta falencia sobre todo en lo que tiene que ver con frecuencia
en el simulador.

 Realizar ejercicios previos básicos que nos permiten lograr una comprensión
total de la lógica de funcionamiento de estos dispositivos.

 BIBLIOGRAFIA

 http://share.pdfonline.com/2587290aee28451bb75653e4bd23be15/TraCol_3-27-
IEEE.htm

 http://share.pdfonline.com/6ec265f2d7774752ad2a77d5a17e1f68/Practica_2_Micr
oprocesadores_y_Microcontroladores.htm

Potrebbero piacerti anche