You are on page 1of 7

INSTITUTO TECNOLGICO DE CELAYA

MATERIA:
MICROCONTROLADORES

EQUIPO: 6
FECHA
DE
ENTREGA:
NO. PRACTICA: 5
INTEGRANTE 1: RIVERA AVILA DIEGO.
INTEGRANTE 2: GONZALEZ HERNANDEZ GERARDO.

GRUPO

29/MAYO/2015

REPORTE DE PRCTICA
INSTRUCCIONES
Realizar un contador de 0 a 999 ascendente con la activacin del puerto
RA0, descendente con la activacin del puerto RA1 mostrndolo en un
display multiplexado con un retardo de tiempo de 13 ms entre cada
display, dicho programa se realizara por medio de la programacin de un
microcontrolador modelo PIC16F84A con un cristal de 4 MHz y 2
capacitores de 22 Pf para establecer la frecuencia de trabajo del mismo,
3 transistores del tipo NPN, la programacin se realizara con lenguaje
ensamblador por medio del software MPLAB IDE. A continuacin en la
imagen No. 1 se muestra la disposicin de los pines en un
microcontrolador de este modelo. Ver imagen No. 1.

Imagen No.1. Disposicin de los pines en PIC16F84A.

Los puertos quedan configurados como se indica en la tabla No.1. Nos


referimos a la disposicin E/S. Ver tabla No. 1.
Tabla No. 1. Configuracin de puertos para entradas y salidas del
PICF1684A.
ENTRADAS

SALIDAS

CRISTAL

CAPACITORES

ALIMENTACIN

RA1

RB0/INT

OSC1/CLKIN

OSC1/CLKIN

VSS (-)

(DESCENDER)
RA0
(ASCENDER)

RB1

OSC2/CLKOUT

OSC2/CLKOUT

VDD (+)

RB2
RB3
RB4
RB5
RB6

Las salidas del puerto B (RB6:RB0) irn conectadas a los 3 displays de 7


segmentos de ctodo comn en el siguiente orden:

RB0
RB1
RB2
RB3
RB4
RB5
RB6

-> A
-> B
-> C
-> D
-> E
-> F
-> G

CDIGO
#INCLUDE<P16F84A.INC>

CLRF TRISB
BCF STATUS,RP0 //configuracin
de puertos

UNI EQU 0CH

CLRW

DEC EQU 0DH

CLRF

CEN EQU 0EH


UN

EQU

0FH

DE

EQU 10H

CE

EQU 11H

VAR1 EQU 12H

UNI
CLRF

DEC

CLRF

CEN

CLRF

UN

CLRF

DC

VAR2 EQU 13H

CLRF
en los displays

ORG 00H

INICIO

CE //mostrar ceros

MOVF UNI,W

BSF STATUS,RP0

CALL DPY

MOVLW b'00000011'

MOVWF PORTB

MOVWF TRISA

BSF PORTA,2

CALL TIEMPO

INCF DEC,1

BCF PORTA,2

RETURN

MOVF DEC,W

CLRF DEC

CALL DISPLAY

MOVF CEN,W

MOVWF PORTB

SUBLW 09H

BSF PORTA,3

BTFSC STATUS,Z

CALL TIEMPO

GOTO $+D'3'

BCF PORTA,3

INCF CEN,1

MOVF CEN,W

RETURN //rutina de incremento

CALL DPY

CLRF CEN

MOVWF PORTB

RETURN // rutina para el


muestreo en los displays

BSF PORTB,7

DECR
PORTA,1

CALL TIEMPO

BTFSC

BCF PORTB,7

GOTO $-D'1'

BTFSC PORTA,0

MOVF UNI,W

CALL INCR

SUBLW 00H

BTFSC PORTA,1 //puerto RB7,


RB0, RB1 como salidas para los
transistores.

BTFSC STATUS,Z

CALL DECR //rutina


muestreo de los valores.

DECF UNI,1

GOTO INICIO
INCR

BTFSC PORTA,0
GOTO $-D'1'
MOVF UNI,W
SUBLW 09H
BTFSC STATUS,Z
GOTO $+D'3'
INCF UNI,1
RETURN
CLRF UNI
MOVF DEC,W
SUBLW 09H
BTFSC STATUS,Z
GOTO $+D'3'

para

el

GOTO $+D'3'

RETURN
MOVLW 09H
MOVWF UNI
MOVF DEC,W
SUBLW 00H
BTFSC STATUS,Z
GOTO $+D'3'
DECF DEC,1
RETURN
MOVLW 09H
MOVWF DEC
MOVF CEN,W
SUBLW 00H
BTFSC STATUS,Z

GOTO $+D'3'

DECFSZ

DECF CEN,1

GOTO $-D'6'

RETURN

RETURN

MOVLW 09H

DPY

MOVWF CEN
RETURN

VAR1,1

//rutina

ADDWF PCL,F
de

TABLA RETLW 3FH

decremento

RETLW 06H
RETLW 5BH
RETLW 4FH

TIEMPO

MOVLW D'13'

RETLW 66H

MOVWF VAR1

RETLW 6DH

MOVLW D'255'

RETLW 7DH

MOVWF VAR2

RETLW 07H

NOP
DECFSZ
GOTO $-D'2'

RETLW 7FH
VAR2,1

RETLW 67H // rutina de


tiempo
END

Simulacin
La simulacin del contador se realiz mediante el uso del software
PROTEUS, a continuacin se muestran algunas ilustraciones de que nos
presentan parte de la simulacin para mayor seguridad en resultados
satisfactorios. En las ilustraciones se podrn observar solo algunos o
algn display prendido esto es por el cambio rpido que entre cada uno.
En la ilustracin 1 se muestra que el contador inicia correctamente. Ver
ilustracin 1.

Ilustracin 1. Inicio del contador.

En la ilustracin 2 se muestra el contador con un valor ascendente. Ver


ilustracin 2.

Ilustracin 2. Contador con valor ascendente. (En realidad es un 13


pero el tiempo entre display no dejo captar el 1).

En la ilustracin 3 se muestra el contador descendente. Ver ilustracin 3.

Ilustracin 3. Contador descendente.

RESULTADOS

Tras armar el circuito nos dimos cuenta de que el trabajo de


programacin y simulacin estaban correctos ya que cumpli
con los resultados que se esperaban como son, el retardo que
se program y el ascendente/descendente con los puertos
especificados.

Conclusiones
RIVERA VILA DIEGO
Resulta interesante el trabajo con displays multiplexados por el tiempo
que hay que controlar para poder apreciar los datos que estamos
arrojando, se tuvieron problemas con algunos valores resistivos que se
localizaban en la base del emisor pero su solucin fue rpida
permitindonos satisfactorios resultados.
GONZLEZ HERNNDEZ GERARDO
Me pareci una buena prctica, un tema interesante y que nos permito
ver la importancia del tiempo en este tipo de configuraciones, se
tuvieron algunos errores al armar como transistores mal colocados que
nos generaba errores mostrndonos cualquier cosa en los displays pero
tras la correccin se pudo obtener un buen resultado.