Académique Documents
Professionnel Documents
Culture Documents
p=16F628A
;Utilizado PIC16F628A
T1
;Tempo d
T2
;Tempo d
e uso do temporizador
e uso do temporizador
endc
aos registradores
.32
EQU
D'01'
EQU
D'10'
D'230'
H'0000'
inicio
H'0004'
este endereo
retfie
;Retorna de interrupo
inicio:
;---------------------------------- CONFIGURAO DOS PORTA E PORTB---------------------------------------------------------
BANKSEL
CMCON
o CMCON
movlw
H'07'
movwf
CMCON
radores do PORTA)
BANKSEL
TRISA
gistrador TRISA
movlw
H'3F'
movwf
TRISA
entrada)
movlw
H'01'
movwf
TRISB
sada exceto RB0, configurado como entrada)
BANKSEL
PORTA
o PORTA
movlw
H'FF'
movwf
PORTA
movwf
PORTB
;W = b'00000111' (0x07)
;CMCON = H'07' (desliga os compa
; Seleo do banco 1 referente ao re
;W = B'00111111'(0x3F)
;TRISA = H'3F' (todos os bits so
;W = B'00000001' (0x01)
;TRISB = H'01' (todos os bits so
; Retorna ao banco 0 referente a
;W = B'11111111' (0xFF)
;inicia em HIGH
;inicia em HIGH
DISPLAY
clrf
clrf
SEGS
MINS
clrf
HORAS
FLAGS
PRHH
PRMM
SPLAY
NS
RAS
clrf
GS = 00000000 binario)
clrf
as
clrf
ados
movlw
movwf
movwf
movwf
btfss
goto
movf
movwf
movf
movwf
movlw
movwf
d'5'
HORAS
MINS
SEGS
FLAGS, 2
Pause
PRHH, W
HORAS
PRMM, W
MINS
d'59'
SEGS
;REPEAT ATIVO?
MostraHora
Frame
goto
nop
Despejar
bcf
PORTA, 7
;Desliga os 5v de sada do pino RB
7, que aciona o NF do rel do motor do alapo
goto
Principal
Pause:
bcf
btfss
goto
goto
FLAGS,0
BotProg
Progr
Pause
;Desliga o temporizador
;Boto Prog Pressionado?
Progr:
btfss
call
nop
btfss
call
nop
btfss
call
nop
btfss
goto
nop
btfss
goto
goto
BotMais
Soma
BotMenos
Subtrai
BotSelect
MudaCampo
BotProg
Progr
FLAGS,0
Pause
Principal
btfsc
goto
incf
btfsc
goto
return
incf
goto
FLAGS,4
$+5
HORAS
BotMais
$-1
Soma:
Subtrai:
btfsc
goto
decf
btfsc
goto
return
decf
goto
MINS
$-4
FLAGS,4
$+5
HORAS
BotMenos
$-1
MINS
$-4
MudaCampo:
btfss FLAGS,4
bsf
FLAGS,4
bcf
FLAGS,4
btfsc BotSelect
goto
$-1
return
Despejar:
;
;
;
;
;
bsf
movf
movwf
decfsz
movf
movlw
movlw
movwf
decfsz
call
return
FLAGS, 1
; Despejo on
PRTD, w
TOP
TOP
TFRAME,W
T2
d'2'
T2
T2
Delay1S
Delay1S:
decfsz T2
call
Frame
Frame:
2 ms (1/32 de 1
movlw
movwf
movlw
movwf
decfsz
goto
decfsz
goto
goto
goto
decfsz
goto
decfsz
goto
decfsz
goto
goto
movlw
movwf
movlw
movwf
call
return
MostraHora:
return
end