Вы находитесь на странице: 1из 7

MICROCONTROLADORES

UNIDAD N1

INFORME DEL TRABAJO 1 UNIDAD

1. Tema:
SUMADORA PIC 16F877A

2. Objetivo:

Disear una sumadora utilizando el PIC 16F877A.

3. Fundamento Terico
Microcontrolador
Es un circuito integrado programable, capaz de ejecutar las rdenes grabadas en
su memoria.
Instrucciones Aritmticas en PIC 16F877A
Aritmtica dentro de los microcontroladores PIC se cuenta con instrucciones
aritmticas tales como ADDWF y ADDLW, SUBWF y SUBWF, para efectuar
operaciones de suma y resta respectivamente e instrucciones tales como RLF y
RRF para realizar operaciones de rotacin a travs del carry con las cuales se
pueden realizar divisiones entre 2 y multiplicaciones por 2 respectivamente, hasta
este punto podramos ver el conjunto de instrucciones un poco limitado, sin
embargo, utilizando tcnicas avanzadas de programacin podemos obtener
operaciones ms complejas.
Instrucciones de Control GOTO k
Esta es la tpica instruccin de salto incondicional a cualquier posicin de la memoria
de programa (que en la mayora de los microprocesadores convencionales se llama
JUMP). La constante literal k es la direccin de destino del salto, es decir la nueva
direccin de memoria de programa a partir de la cual comenzarn a leerse las
instrucciones despus de ejecutar la instruccin GOTO.
Directivas del ensamblador
Las instrucciones que podemos utilizar con un dispositivo son las que proporciona
el fabricante para su producto y que forman parte del llamado "repertorio de
instrucciones". Pero al utilizar un programa ensamblador podemos introducir
adems instrucciones o comando que proporciona el propio ensamblador.

Estos comandos generalmente se utilizan para simplificar la tarea de programar, y


reciben el nombre de directivas.
Por lo tanto las directivas no se traducen directamente a instrucciones
del lenguaje mquina sino que asignan al programa ciertas reas de memoria,
definen smbolos, designan reas de RAM para almacenamiento de datos
temporales, colocan tablas o datos constantes en memoria y permiten referencias
a otros programas.
Las directivas se utilizan como comandos escritos en el cdigo fuente para realizar
un control directo o ahorrar tiempo a la hora de ensamblar. Las directivas de uso
frecuente son:
-

#DEFINE: Declara una cadena de texto como substituto de otra.


END: Indica fin de programa
EQU: Define una constante de ensamble
INCLUDE: Incluye en el programa un archivo con cdigo fuente
ORG: ensambla a partir de la direccin especificada.

Cdigo

BCD

Binary-Coded Decimal (BCD) es un estndar para representar nmeros


decimales en el sistema binario, en donde cada dgito decimal es codificado con
una secuencia de 4 bits. Con esta codificacin especial de los dgitos decimales en
el sistema binario, se pueden realizar operaciones aritmticas como suma, resta,
multiplicacin y divisin de nmeros en representacin decimal, sin perder en los
clculos la precisin ni tener las inexactitudes en que normalmente se incurre con
las conversiones de decimal a binario puro y de binario puro a decimal. La
conversin de los nmeros decimales a BCD y viceversa es muy sencilla, pero los
clculos en BCD se llevan ms tiempo y son algo ms complicados que con
nmeros binarios puros. Se representan de la siguiente forma:

4. Procedimiento
En base al PIC 16F877A, desarrollar un programa en ensamblador que
permita sumar dgitos de dos cifras (0 - 99). El diseo contempla los
siguientes requerimientos:
Funciones:
+ :
C :
= :
ANS:

suma
limpieza
igual
aceptar el resultado final como sumando para una nueva operacin

2. El resultado de la suma debe presentarse en binario.

5. Diagrama de bloques
Alimentacin
7

CONTROL DE
FUNCIONES

Controlador
PIC16F877A

Circuito
Reset

PUERTO C

(Dips)

PUERTO B

INGRESO DE
NMERO EN BINARIO

ESCRITURA DE
RESPUESTA
(Leds)

Circuito
Oscilador 4MHz

6. Tabla de asignacin de variables


No.
Descripcin
1 Registro de Configuracin
2 Configuracin Puerto B: Entrada
3 Configuracin Puerto C: Salida
Almacenamiento
de
informacin
4
temporal para lectura
Almacenamiento
de
informacin
5
temporal para lectura
Almacenamiento
de
informacin
6
temporal para lectura

Registro
TRISB
TRISC

Direccin
2007
86H
87H

Valor
0X3F71
FFH
00H

NUM1

21H

XXH

NUM2

22H

XXH

ANS

23H

XXH

7. Diagrama de flujo

8. Programa

9. Diagrama Electrnico

Ilustracin 1- Simulacin en Proteus 8

Entradas: Puerto B
Pines: 33, 34, 35, 36, 37, 38, 39, 40.

Salidas: Puerto C
Pines: 15, 16, 17, 18, 23, 24, 25, 26.

MICROCONTROLADORES

30/06/16

Mishel Bisarrea

Equipo N 2

Ronald Romero

Docente: Ing. Danny Sotomayor

Tema: SUMADORA PIC 16F877A

10. Conclusiones

Se estableci que se tiene que encerar los registros para garantizar un correcto
funcionamiento del programa y que la presentacin de los datos sea la desea ya que
si no lo haceos los registros se llenan con basura y obtenemos un primer dato
indeseado que afecta a la esttica y veracidad del circuito.
Se identific que al usar instrucciones de salto condicional en vez de utilizar retardos
para obtener los nmeros deseados la estructura del programa tiene mejor fluidez y
es ms factible identificar errores, ya que con la implementacin de saltos el tamao
del cdigo se reduce considerablemente lo que ayuda a una mejor visualizacin del
cdigo como conjunto.
Se adquiri un mayor conocimiento y manejo de las instrucciones que posee el
PIC16F877A lo cual se haca evidente a medida que se buscaba una solucin factible
para cumplir con los requerimientos establecidos en la ejecucin del presen proyecto.

11. Recomendaciones
o El conocimiento previo de la programacin en microprocesadores en ensamblador y
otros lenguajes de alto nivel facilitan el entendimiento y la lgica de programacin,
por lo que es recomendable estudiar un lenguaje ms amigable antes de empezar a
programar en ensamblador.
o Establecer un orden en la secuencia del programa nos ayuda a un mejor entendimiento
y poder identificar errores de una forma ms rpida y eficiente.
o Conocer las instrucciones del PIC16f877A y su sintaxis y la funcin que cumple para
poder realizar una programacin fluida y rpida.

12. Bibliografa

Microchip . 2003. PIC16F877A Data Sheet. U.S.A : Microchip Technology


Inc., 2003.
Microchip. 2012. MPLAX @ IDE. MPLAX @ IDE. [En lnea] Microchip
Technology
S.A,
en:
http://www.microchip.com/pagehandler/enus/family/mplabx/. 1.
Valds, Fernando E. 2005. Microcontroladores: Fundamentos y
Aplicaciones con PIC.Cuba : Astimatycs, 2005.
El Microcontrolador PIC16F877; Resumen de hoja de datos, en:
http://www.utp.edu.co/~eduque/arquitec/PIC16F877.pdf