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

ARQUITECTURA DE MICROCONTROLADORES

GUA DE LABORATORIO

Experiencia: 2
Ttulo: Programacin del Microcontrolador PIC16F84A
Objetivos:
- Comprender la gestin de las operaciones de entrada/salida en el PIC
16F84A.
- Escribir aplicaciones para el PIC 16F84A que interacten con dispositivos
externos a travs de sus puertos de entrada/salida.
- Realizar retardos mediante el uso del temporizador WATCHDOG y la
instruccin SLEEP.

Marco Terico:

El microcontrolador PIC16F84a posee dos puertos de entrada/salida cuyos terminales se
pueden configurar individualmente. Los registros de configuracin de los puertos son TRISA
para el puerto A de 5 bits, y TRISB para el puerto B que es de 8 bits. En total son 13 lneas
de entrada/salida digitales.
Cuando un bit del registro TRIS es puesto a 0, el bit correspondiente del registro PORT
asociado ser configurado como de salida. Por otra parte, si un bit del registro TRIS es
puesto a 1 el bit que le corresponde en el puerto asociado ser de entrada.
Para enviar un dato hacia el exterior o controlar un dispositivo conectado en un puerto del
microcontrolador, se debe escribir en el mismo. Por otra parte, para recibir un dato por un
puerto, se debe leer el mismo.
Algunas instrucciones que permite escribir en un puerto son:

MOVWF puerto; que coloca un dato de 8 bits en un puerto.
BSF puerto,bit; que pone a nivel alto (1 lgico) el terminal del puerto indicado por bit.
BCF puerto,bit; que coloca a nivel bajo (0 lgico) el terminal del puerto indicado por bit.

Algunas instrucciones que permite leer un puerto son:

MOVF puerto,0; toma el valor presente en el puerto y lo coloca en el registro de trabajo W.
BTFSS puerto,bit; permite ver el estado de un bit del puerto y saltar si es de nivel alto (1
lgico).
BTFSC puerto,bit; permite ver el estado de un bit del puerto y saltar si es de nivel bajo (0
lgico).

MATERIALES

1 protoboard
1 pic16f84a
1 cristal de cuarzo de 4 MHz
2 condensadores de 22pF
1 condensador de 100 nF
8 resistencias de 220 ohms
3 resistencias de 1kohms
8 leds
1 fuente de poder cc.
1 multmetro digital
1 programador pickit2 o equivalente.
1 computador con el software mplab y pickit2 instalados.

ACTIVIDADES

Actividad 1

1. Escriba el siguiente programa en MPLAB ensmblelo y grbelo en el
microcontrolador.

LIST P=16F84A
RADIX HEX
__CONFIG 3FFD
INCLUDE <P16F84A.INC>

BSF STATUS,RP0
CLRF TRISB
MOVLW 8D
MOVWF OPTION_REG
BCF STATUS,RP0
CLRF PORTB
INICIO
BSF PORTB,0
SLEEP
BCF PORTB,0
SLEEP
GOTO INICIO
END

2. Monte el circuito de la figura, colocando el microcontrolador previamente grabado.


3. Energice el circuito con +5V.
4. Observe el funcionamiento del circuito. Qu sucede con los leds? Qu cambios
observa al presionar cada uno de los pulsadores? Comente.
5. Retire la energa del circuito.

Actividad 2

1. Modifique el programa para que el microcontrolador encienda el led conectado a
RB0 cuando presione el pulsador conectado a RA0 y lo apague al presionar el que
est conectado a RA1.
2. Ensamble y grabe el programa en el microcontrolador.
3. Energice el circuito y realice las pruebas correspondientes.
4. Registre lo observado y comente.
5. Retire la energa del circuito.

Actividad 3

1. Realice las modificaciones necesarias al programa para que cuando el pulsador
conectado a RA0 no este presionado los leds se enciendan y apaguen de izquierda
a derecha (RB0 a RB7) y cuando lo mantenga presionado se enciendan y apaguen
de derecha a izquierda (RB7 a RB0).
2. Ensamble y grabe el programa en el microcontrolador.
3. Energice el circuito y realice las pruebas correspondientes.
4. Registre lo observado y comente.
5. Retire la energa del circuito.

INFORME FINAL

Redacte un informe que contenga todas sus observaciones, programas con instrucciones
debidamente comentadas, y las conclusiones finales de la experiencia.

Вам также может понравиться