You are on page 1of 2

#include "p16f877.

inc"
list P=16f877
CONT EQU 0x70
BCD_H EQU 0x71
BCD_L EQU 0x72
SSeg_H EQU 0x73
SSeg_L EQU 0x74
ORG 0
goto INICIO
org 0X04
bcf PIR1,TMR2IF
btfsc CONT,0
goto MDH
MDL movf SSeg_L,W
movwf PORTB
incf CONT,F
retfie
;
MDH movf SSeg_H,W
movwf PORTB
clrf CONT
retfie
INICIO clrf CONT
clrf PORTB
clrf TMR0
clrf TMR2
clrf TMR2
movlw 0x1C
movwf T2CON
clrf PIR1
BANKSEL TRISB
movlw .249
movwf PR2
clrf TRISB
movlw 0x28
movwf OPTION_REG
movlw 0x02
movwf PIE1
BANKSEL PORTB
movlw 0xC0
movwf INTCON
CICLO movf TMR0,W
xorlw .100
btfsc STATUS,Z
clrf TMR0
movf TMR0,W
call Bin2BCD
;
movf BCD_H,W
call BCD_7Seg
movwf SSeg_H
;
movf BCD_L,W
call BCD_7Seg
movwf SSeg_L
bsf SSeg_L,7
;
goto CICLO
Bin2BCD clrf BCD_H
movwf BCD_L
R_TEN movlw .10
subwf BCD_L,W
btfss STATUS,C
goto FIN_B2B
movwf BCD_L
incf BCD_H,F
goto R_TEN
FIN_B2B return
BCD_7Seg
addwf PCL,F
retlw 0x3F ;0
retlw 0x06 ;1
retlw 0x5B ;2
retlw 0x4F ;3
retlw 0x66 ;4
retlw 0x6E ;5
retlw 0x7E ;6
retlw 0x07 ;7
retlw 0x7F ;8
retlw 0x67 ;9
retlw 0x01 ;8
retlw 0x04 ;9
end

You might also like