You are on page 1of 6

ACTIVIDAD CENTRAL UNIDAD 2

SENA
CURSO VIRTUAL
DISEO DE PRODUCTOS ELECTRONICOS CON MICROCONTROLADORES
(995866)
2015
1. Consulte informacin en internet sobre la descripcin de pines de entrada y salida
del PIC PIC16F873.

ESQUEMA DEL PIC Y CONFIGURACION DE PINES

Los pines de entrada/salida de este microcontrolador estn organizados en tres puertos, el


puerto A con 6 lneas, el puerto B con 8 lneas y el puerto C con 8 lneas. Cada pin de esos
puertos se puede configurar como entrada o como salida independiente programando un par
de registros diseados para tal fin. En ese registro un bit en "0" configura el pin del puerto
correspondiente como salida y un bit en "1" lo configura como entrada. Dichos pines del
microcontrolador tambin pueden cumplir otras funciones especiales, siempre y cuando se
configuren para ello.
DESCRIPCION DE LOS PINES DEL MICROCONTROLADOR

2. Comentarios de las lneas de programacin del cdigo suministrado por el


proveedor de servicios.

COMENTARIOS
List p=PIC16F873 Define el micro a utilizar
Include "P16F873.inc" Ayuda a la mejor distribucion, si esta entre
comillas se trata de un archivo de usuario.
_config 0x3F38 Ajuste de los bits de configuracion.
CBLOCK 0X20 Define un bloque para las constantes
nombradas.
Loops, loops2 Bucle o sentencia que se repetitiva o en
retardo
ENDC Finaliza el bloque de definicin constante.
org 0x00 Es el vector de reset, cada vez que el micro
se inicie lo har desde aqu (ya sea que
conectaron el secuenciador directamente o
que lo encendieron o que algo le haya
ocurrido al micro saltar a este punto

goto Inicio Vector de reset, en el 16f84es una


sentencia de salto incondicional dentro del
mbito de una funcin.o salto de inicio a
mi programa
Inicio movlw 0x07 Option = subrutina de retardo en
milisegundos
movwf CMCON Asignacion de puerto como entrada
bsf STATUS, RP0 Cambio al banco 1
bcf TRISA, 0 Cambio al banco 1
bsf TRISB, 0 Configuramos como entrada
bcf STATUS,RP0 Cambio al banco 1
ciclo Repeticiones
btfss PORTB,0 Pregunta por el bit b del registro f, si dicho
bit est en uno el programa se salta una
lnea y ejecuta la instruccin que all se
encuentre, si el bit estaba en cero no salta
una lnea sino que ejecuta la instruccin
inmediatamente siguiente.
goto ciclo El contador de programa salta a la
direccin ciclo
parpadeo
bsf PORTA,0 Pone en cero el bit b del registro
call retardo Llama una subrutina que est ubicada en la
posicin de memoria o etiqueta retardo
bcf PORTA,0 Pone en cero el bit b del registro
call retardo Llama una subrutina que est ubicada en la
posicin de memoria o etiqueta retardo
goto ciclo El contador de programa salta a la
direccin ciclo
retardo
CLRWDT Reinicia en cero el conteo del temporizador
interno Watchdog Timer, para que no sea
reseteado el microcontrolador.
MOVLW D'200' Carga el registro W con el valor constante
MOVWF loops Mueve el contenido del registro W al
registro
top2 MOVLW D'220' Carga el registro W con el valor constante
MOVWF loops2 Mueve el contenido del registro W al
registro
top CLRWDT Reinicia en cero el conteo del temporizador
interno Watchdog Timer, para que no sea
reseteado el microcontrolador.
NOP No hace nada.
DECFSZ loops2,1 Decrementa en uno el contenido del
registro, si el contenido queda en 00 el
micro salta una lnea del programa, el
resultado obtenido se guarda en el registro
escogido segn el valor del bit .
GOTO top El contador de programa salta a la
direccin
DECFSZ loops,1 Decrementa en uno el contenido del
registro, si el contenido queda en 00 el
micro salta una lnea del programa, el
resultado obtenido se guarda en el registro
escogido segn el valor del bit.
GOTO top2 El contador de programa salta a la
direccin
RETLW 0 Retorno desde una subrutina y
adicionalmente carga el registro con el
valor constante .
END Terminacion del diseo
3. Diagrama de flujo del programa de automatizacin (cdigo .asm del punto 2)

You might also like