T
E
RABAJO Y
XPLICACIÓN
;------------------------------------------------------------------------------------------------------------------------------
;Tabla: Esta rutina convierte el código BCD presente en los 4 bits de menos peso del reg. W en su
;equivalente a 7 segmentos. El código 7 segmentos retorna también en el reg. W
Tabla:
addwf PCL,F
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
;------------------------------------------------------------------------------------------------------------------------------
;Delay_10_ms: Esta rutina de temporización tiene por objeto eliminar rebote.
Delay_10_ms:
bcf
movlw b'195'
movwf TMR0
Delay_10_ms_1 btfss
goto
bcf
return
;------------------------------------------------------------------------------------------------------------------------------
Inicio
clrf
bsf
clrf
movlw 0x06
movwf ADCON1
movlw b'00111111'
movwf TRISA
movlw b'00000111'
movwf OPTION_REG ;Preescaler de 256 para el TMR0
bcf
bsf
clrf
call
bsf
movlw 0x09
subwf
btfsc
goto
goto
Ini_0
bcf
clrf
goto
Ini_1
movf
bcf
movwf Contador
D
P
ESARROLLO
ROYECTOS Y
PIC 16F87
X
b'00111111'
b'00000110'
b'01011011'
b'01001111'
b'01100110'
b'01101101'
b'01111101'
b'00000111'
b'01111111'
b'01100111'
INTCON,T0IF ;Desconecta el flag de rebosamiento
;carga el TMR0 con 195
INTCON,T0IF ;Rebasamiento del TMR0 ??
Delay_10_ms_1 ;Todavía no
INTCON,T0IF ;Ahora si, reponer el flag
PORTB
;Borra el Puerto B
STATUS,RP0
;Selecciona banco 1
TRISB
;Puerta B se configura como salida
;Puerta A digital
;Puerta A se configura como entrada
STATUS,RP0
;Selecciona banco 0
STATUS,RP1
;Selecciona banco 2
EEADR
;Selecciona dirección 00 de EEPROM
EE_Read
;Lee byte de la EEPROM
STATUS,RP1
;Selecciona banco 2
EEDATA,W
STATUS,C
;Mayor de 9 ??
Ini_0
;Si, poner a 0 el contador
Ini_1
;No
STATUS,RP1
;Banco 0
Contador
;Poner a 0 el contador
Loop
EEDATA,W
STATUS,RP1
;Banco 0
;Iniciar contador
P
E
ROTOTIPOS
LECTRÓNICOS
;Desplazamiento sobre la tabla
;Dígito 0
;Dígito 1
;Dígito 2
;Dígito 3
;Dígito 4
;Dígito 5
;Dígito 6
;Dígito 7
;Dígito 8
;Dígito 9
2º DPE
65