Anda di halaman 1dari 10

ACTIVIDAD CENTRAL UNIDAD 2

Diseo de productos electrnicos con microcontroladores


Nombre de la actividad: Anlisis estructural y funcional de un
microcontrolador.

Objetivo

Identificar las instrucciones en un cdigo ASM y desarrollar


diagramas de flujo de programas de automatizacin.

Situacin

Se requiere que la llegada de camiones a la empresa sea anunciada con una seal
luminosa que parpadee mientras el vehculo se encuentre en la zona donde el sensor de
presencia est instalado. Se ha adquirido un sistema automatizado con
microcontroladores y usted debe revisar si el cdigo cumple con las caractersticas
solicitadas.

Procedimiento:
1. Revise los contenidos del curso asociados con el anlisis estructural y
funcional de un microcontrolador.

2. Consulte informacin en internet sobre la descripcin de pines de entrada y salida


del PIC PIC16F873.

Temas asociados

Anlisis estructural del un microcontrolador


Funcin global
Lenguaje ASM
Diagramas de flujo

1
Entregas
Para este
anlisis,
utilice la
gua que
aparece a
continuaci
n para
desarrollar
los
siguientes
productos:
1. De
scr
ipc
in
de
los
pin
es
de
ent
rad
a y
sal
ida
util
iza
do
s
par
a
el
sis
te
ma
aut
om
ati
za
do.
2. Co
me
nta
rio
s
de
las
ln
ea
s
de
pro
gra
ma
ci
n
del
c
dig
o
su
mi
nis
tra
do
por
el
pro
ve
ed
or
de
ser
vici
os.
3. Di
agr
am
a
de
fluj
o
del
pro
gra
ma
de
aut
om
ati
za
ci
n.

Una vez
finalizada,
comprima
el archivo
en
formato
.zip o .rar,
dando clic
derecho
al
archivo,
Enviar a,
Carpeta
comprimi
da. Luego
envela a
su
facilitador
a travs
del medio
utilizado
para tal fin
en el
curso.

2
3
bsf STATUS, RP0 Pone en uno el bit RP0 del file
STATUS
bcf TRISA, 0 Pone en cero el bit 0 del file
TRISA(configuramos RPO como
salida)
bsf TRISB, 0 Pone en uno el bit 0 del file TRISB
bcf STATUS,RP0 Pone en cero el bit RP0 del file
STATUS(configuramos RPO como
entrada)
ciclo repetitivo
btfss PORTB,0 salta una instruccin si rb0 contiene
un 0
goto ciclo Retorna a la funcin indicada (ciclo)
parpadeo Declaracin de funcin
bsf PORTA,0 Lleva un uno al puerto A
call retardo Salta a una sub rutina
bcf PORTA,0 Lleva un uno al puerto A
call retardo Salta a la subrutina retardo
goto ciclo Salta a ciclo
retardo

CLRWDT Pone a 0 el temporizador Watchdog


MOVLW D'200' Carga 200 en decimal al acumulador
W
MOVWF loops Mueve una copia del acumulador W
al registro loops
top2 MOVLW D'220' Carga el acumulador con 220 en
decimal
MOVWF loops2 Mueve lo del acumulador al registro
loops2
top CLRWDT Pone a 0 el temporizador Watchdog

4
NOP Esta instruccin no hace nada
durante un ciclo.
Se puede ocupar para realizar
retardos.
NOP Se puede ocupar para realizar
retardos.
NOP Se puede ocupar para realizar
retardos.
NOP Se puede ocupar para realizar
retardos.
NOP Se puede ocupar para realizar
retardos.
NOP Se puede ocupar para realizar
retardos.
DECFSZ loops2,1 Decrementa el registro loops2
Salta a la siguiente instruccin si el
resultado es 0
El resultado de la operacin se coloca
en el destino 1.
GOTO top Salta a top
DECFSZ loops,1 Decrementa el registro loops
Salta a la siguiente instruccin si el
resultado es 0
El resultado de la operacin se coloca
en el destino 1.
GOTO top2 Salta top2
RETLW 0 Regresa de una subrutina. Con el
numero 0 en el acumulador.
END termina

5
3. Diagrama de flujo del programa de automatizacin (cdigo .asm del punto 2)