📄 201gd331main.dt
字号:
nop
BS CONFLAG,2
JMP MAINL_cun7
MAINL_CUN7:
fmov datapro,cira
BANK 0
JMP MAINL2_RET
MAINL_CUN3:
BC CONFLAG,2
BC CONFLAG,3
MOV TITLE,@0X65
bank 0
INC CIRA
MOV CIRD,@0X3E
IOR IMR
AND A,@0B11111011
IOW IMR
FCALL SEND_BUFF ;通讯
NOP
FCALL R_ACK ; R_DATA;
; BS FSKSR,B358E
BC ISF,2
IOR IMR
OR A,@0B00000100
IOW IMR
BC ISF,2
bank 0
nop
nop
;
;
mainl2_ret:nop
MAINLOOP2:WDTC
JBS CONFLAG,5
JMP MAINLOOP
MAINLLOOP5:JBC CONFLAG1,4
JMP MAINLOOP3
JMP MAINLOOP4
MAINLOOP3: JBC PORT6,0
JMP MAINLOOP4
JBC PORT6,0
JMP MAINLOOP4
CALL VCCDOWN
MOV A,@55
CALL WAIT10MS
JMP MAIN
MAINLOOP4:FMOV A,OV_MINU;
SUB A,@0X05 ;5 minute totle dog
JBC R3,2
JMP HANDEX1
JMP MAINLOOP
MAIN:
HANDOUT:
CLR RTIME ;挂机
MOV A,@0X55
MOV TITLE,A
MOV CIRA,@0X40
MOV A,@0X3E
MOV CIRD,A
CALL SEND_BUFF
CALL R_DATA
HANDO1:
MOV CIRA,@0X40
MOV A,CIRD
SUB A,@0X30 ;30掉电
JBC R3,2
JMP HANDEND
MOV A,R0
SUB A,@0X31 ;31限时等待
JBC R3,2
JMP HANDWAIT
HANDDW: ;MOV A,@0X10
;;MOV R4,A
;INC R4
;MOV A,R0
;MOV CALL_TYPE,A
;CALL SEND_ACK
;CALL R_ACK ;R_DATA
BS CONFLAG,5
JMP MAINLOOP
HANDEND: ;30 ack end
CALL SEND_ACK
CALL R_ACK; R_DATA
handex1:nop
HANDEX: CALL VCCDOWN
JMP MAIN
HANDWAIT:
CALL SEND_ACK
CALL R_ACK ;DATA
BS CONFLAG,5
BS CONFLAG1,4
JMP MAINLOOP
DATASAVE:JBC PORT6,1
JMP MAINLOOP
CALL VCCDOWN
JMP MAIN
ORG 0X800
MINT:
WDTC
; MOV A,@01
; PAGE 3
; CALL WAIT10MS
; PAGE $ / 0X400
MOV A,ISF
JBC R3,2
JMP INTEXIT
MINT0: JBC ISF,0
JMP TIME
MINT1: JBC ISF,1
JMP INT0
MINT2: JBC ISF,2
JMP INT1
MINT3: JBC ISF,3
JMP INT23
MINT4: JBC ISF,4
JMP C8_1
MINT5: JBC ISF,5
JMP C8_2
MINT6: JBC ISF,6
JMP FSKDT
MINT7: JBC ISF,7
JMP ISTD1
INTEXIT:
WDTC
; FMOV R13,PUSHR13
; FMOV R12,PUSHR12
; FMOV R11,PUSHR11
; FMOV R10,PUSHR10
BANK 0
MOV A,PUSHR5
MOV R5,A
MOV A,PUSHR3
MOV R3,A
MOV A,PUSHA
MOV A,PUSHR4
MOV R4,A
RETI
ISTD1:
BC ISF,7
JBS RE,STD
JMP INTEXIT
BS BITF1,1 ;FLAG_DTMF
IOR IOC5
AND A,@0X0F
PAGE 4
CALL R_DTMF
PAGE $ / 0X400
MOV DATA,A
nop
nop
; mov a,@0x08
; mov r10,a
; mov a,data
; page 2
; call dis
; PAGE $ / 0X400
JMP INTEXIT
TIME: WDTC
BC ISF,0
JBC CONFLAG,6 ; half second flag
JMP TIME_I1
BS CONFLAG,6
JBC CONFLAG,7
BS PORT9,4
JMP TIMEEXIT
TIME_I1:
BC CONFLAG,6
JBC CONFLAG,7
BC PORT9,4
TIME_SECOND:WDTC
FINC SECOND
FMOV A,OV_SEC
SUB A,@63
JBS R3,2 ;=63
fINC OV_SEC ;=/63
fMOV A,SECOND
SUB A,@59
JBS R3,0
JMP TI_MINUTE
JMP TIMEEXIT
TI_MINUTE:
WDTC
fCLR SECOND
fINC MINUTE
BS CONFLAG,4 ;minute jump flag
fINC OV_MINU
fMOV A,MINUTE ;MIN
SUB A,@59
JBS R3,0
JMP TI_HOUR
JMP TIMEEXIT
TI_HOUR:
WDTC
FINC OVHOUR
fCLR MINUTE
fINC HOUR
FMOV A,HOUR ;HOUR
SUB A,@24
JBC R3,2
; JMP TI_DAY
JMP TIMEHX
; TI_DAY:
; CLR HOUR
; MOV A,@0X00
; MOV TTIME,A
; MOV A,MONTH
; CALL MONTH_TAB
; MOV TFREE1,A
; MOV A,MONTH
; SUB A,@02 ;judge february
; JBS R3,2
; JMP TI_DA1
; MOV A,YEAR
; AND A,@0X03
; JBC R3,2
; INC TFREE1
; TI_DA1:
; MOV A,DAY
; SUB A,TFREE1
; JBC R3,2
; JMP TI_MONTH
; INC DAY ;DAY
; JMP TIMEHX
; TI_MONTH:
; MOV A,@0X01
; MOV DAY,A
; INC MONTH ;MONTH
;; MOV A,MONTH
; SUB A,@0X0D
; JBC R3,2
; JMP TI_YEAR
; JMP TIMEHX
; TI_YEAR:
; MOV A,@0X01
; MOV MONTH,A
; INC YEAR ;YEAR
TIMEHX:WDTC
MOV A,OVHOUR
SUB A,@3
JBC R3,2
JMP TI_RES ;watchdog reset
JMP TIMEEXIT
TIMEEXIT:CLR TCC
JMP MINT1
; TIMEEXIT: CLR TCC
; MOV A,PUSHR3
; MOV R3,A
; MOV A,PUSHA
; BS R3,2
; JBS CONFLAG,2
; BC R3,2
; BC R3F,3
; BC R3F,0
; WDTC
; RETI
TI_RES: JMP TI_RES
INT0:
bc isf,1
jbc port7,0
jmp INTEXIT
mov a,@0x1
page 4
call wait31ms
PAGE $ / 0X400
jbc port7,0
jmp INTEXIT
bs bitf2,4
JMP MINT2
INT1:
nop
nop
BC ISF,2
; Bc FSKSR,B358E
nop
nop
; disi
IOR IMR
AND A,@0B11111011
IOW IMR
FCALL R_DATA ;通讯
NOP
NOP
FCALL SEND_ACK ; R_DATA;
; fCALL R_ACK
; BS FSKSR,B358E
;eni
IOR IMR
OR A,@0B00000100
IOW IMR
BC ISF,2
nop
NOP
; Bs FSKSR,B358E
bank 0
CBANK 0
MOV A,TITLE
SUB A,@0X61
JBS R3,2
JMP INT1_2
MOV CIRA,@0X40
; BANK 1
; MOV A,R0
; BANK 0
MOV A,CIRD
SUB A,@0X30
JBS R3,2
JMP INT1_11
MOV R13,CIRA
PAGE 5
CALL CDIS
PAGE $ /0X400
MOV CIRA,R13
; INC R4
; BANK 1
; MOV A,R0
; BANK 0
INC CIRA
MOV A,CIRD
SUB A,@0X5A
JBS R3,2
JMP INT1_114
INT1_111:
; INC R4
; BANK 1
; MOV A,R0
; BANK 0
INC CIRA
MOV A,CIRD
sub a,@0x5B
jbc r3,2
jmp INT1_112
; BANK 1
; MOV A,R0
; BANK 0
MOV A,CIRD
SUB A,@0X3E
JBC R3,2
jmp INT1RET
; BANK 1
; MOV A,R0
; BANK 0
MOV R13,CIRA
MOV A,CIRD
page 5
call dishz112
page $ /0x400
MOV CIRA,R13
jmp INT1_111
INT1_112:
; INC R4
INC CIRA
JMP INT1_113
INT1_114:
; BANK 1
; MOV A,R0
; BANK 0
MOV A,CIRD
SUB A,@0X5B
JBS R3,2
JMP INT1RET
; INC R4
INC CIRA
INT1_113:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X3E
JBC R3,2
JMP INT1RET
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
MOV R10,A
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV R13,CIRA
MOV A,CIRD
PAGE 5
CALL DIS
PAGE $ /0X400
MOV CIRA,R13
;INC R4
INC CIRA
JMP INT1_113
INT1_11:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X31
JBS R3,2
JMP INT1_12
MOV R13,CIRA
PAGE 5
CALL CDISHZ
PAGE $ /0X400
MOV CIRA,R13
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV A,CIRD
SUB A,@0X5A
JBS R3,2
JMP INT1RET
JMP INT1_116
INT1_116:
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV A,CIRD
SUB A,@0X3E
JBS R3,2
JMP INT1_117
JMP INT1RET
INT1_117:
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV R13,CIRA
MOV A,CIRD
page 5
call dishz112
page $ /0x400
MOV CIRA,R13
JMP INT1_116
INT1_12:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X32
JBS R3,2
JMP INT1_13
MOV R13,CIRA
PAGE 5
CALL CDISDA
PAGE $ /0X400
MOV CIRA,R13
NOP
NOP
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV A,CIRD
SUB A,@0X5B
JBS R3,2
JMP INT1RET
JMP INT1_126
INT1_126:
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV A,CIRD
SUB A,@0X3E
JBS R3,2
JMP INT1_127
JMP INT1RET
INT1_127:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
MOV R10,A
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV R13,CIRA
MOV A,CIRD
page 5
call dis
page $ /0x400
MOV CIRA,R13
JMP INT1_126
INT1_13:
JMP INT1RET
;
;
INT1_2:
MOV A,TITLE
SUB A,@0X63
JBS R3,2
JMP INT1_3
MOV CIRA,@0X40
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X30
JBS R3,2
JMP INT1_21
bs bitf2,0
PAGE 4
CALL OPENDTMFSHOU
PAGE $ /0X400
JMP INT1RET
INT1_21:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X31
JBS R3,2
JMP INT1_22
bc bitf2,0
bc conflag,1
PAGE 4
CALL OFFDTMFSHOU
PAGE $ /0X400
JMP INT1RET
INT1_22:JMP INT1RET
;
INT1_3:
MOV A,TITLE
SUB A,@0X65
JBS R3,2
JMP INT1_4
NOP
NOP
MOV CIRA,@0X40
PAGE 4
CALL DIALDATA
PAGE $ /0X400
BS CONFLAG,1
; BS R5,PWDN
MOV A,@50
PAGE 4
CALL WAIT10MS
PAGE $ /0X400
BANK 0
MOV A,PUSHR5
OR A,@0X08
MOV PUSHR5,A
BC ISF,7
bc bitf1,1
IOR IMR
OR A,@0X80
IOW IMR
BC ISF,7
MOV CIRA,@0X40
bank 0
MOV CIDNUM,@0
BC CONFLAG,2
BC CONFLAG,3
JMP INT1RET
;
INT1_4:
MOV A,TITLE
SUB A,@0X66
JBS R3,2
JMP INT1_5
MOV CIRA,@0X40
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X30
JBS R3,2
JMP INT1_41
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV A,CIRD
PAGE 4
CALL STARTDTMF
PAGE $ /0X400
WDTC
MOV A,PUSHR3
AND A,@0X9F
MOV R10,A
MOV A,R3
AND A,@0X60
ADD A,R10
MOV PUSHR3,A
JMP INT1RET
INT1_41:
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
SUB A,@0X31
JBS R3,2
JMP INT1_42
PAGE 4
CALL OFFDTMF
PAGE $ /0X400
WDTC
MOV A,PUSHR3
AND A,@0X9F
MOV R10,A
MOV A,R3
AND A,@0X60
ADD A,R10
MOV PUSHR3,A
JMP INT1RET
INT1_42:
JMP INT1RET
;
INT1_5: MOV A,TITLE
SUB A,@0X67
JBS R3,2
JMP INT1_6
MOV CIRA,@0X40
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
MOV R10,A
;INC R4
;BANK 1
;MOV A,R0
;BANK 0
INC CIRA
MOV R13,CIRA
MOV A,CIRD
PAGE 5
CALL DIS
PAGE $ /0X400
MOV CIRA,R13
NOP
NOP
JMP INT1RET
;
INT1_6:MOV A,TITLE
SUB A,@0X68
JBS R3,2
JMP INT1_7
MOV CIRA,@0X40
MOV R4,@0X30
NOP
NOP
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
MOV R10,A
;INC R4
INC CIRA
INT1_63:
MOV A,CIRD
SUB A,@0X3E
JBS R3,2
JMP INT1_62
JMP INT1_61
INT1_62:
MOV A,CIRD
BANK 1
MOV R0,A
BANK 0
INC R4
INC CIRA
JMP INT1_63
INT1_61:
MOV R4,@0X30
BANK 1
PAGE 5
CALL DISPWW
PAGE $ /0X400
JMP INT1RET
INT1_7: MOV A,TITLE
SUB A,@0X69
JBS R3,2
JMP INT1_8
MOV CIRA,@0X40
INT1_71:
NOP
NOP
;BANK 1
;MOV A,R0
;BANK 0
MOV A,CIRD
sub a,@0x3e
jbc r3,2
jmp INT1_73
jmp INT1_72
INT1_72:
;BANK 1
;MOV A,R0
;BANK 0
MOV R13,CIRA
MOV A,CIRD
page 5
call dishz112
page $ /0x400
MOV CIRA,R13
;inc r4
INC CIRA
jmp INT1_71
INT1_73:
JMP INT1RET
INT1_8:
MOV A,TITLE
SUB A,@0X6A
JBS R3,2
JMP INT1_9
JMP INT1RET
INT1_9:
JMP INT1RET
INT1RET:
NOP
JMP MINT3
INT23:
NOP
NOP
BC ISF,3
JBC PORT7,2
JMP INT232
mov a,@0x1
page 4
call wait31ms;10MS
PAGE $ / 0X400
JBC PORT7,2
JMP INT232
; MOV FSKSR,@0X93
bs bitf1,3
; ior imr
; and a,@0xf7
; iow imr
; MOV A,@01
; PAGE 3
; CALL WAIT10MS
; PAGE $ / 0X400
JMP MINT4
INT232:nop
nop
JMP MINT4
retint23:
jmp intexit
C8_1:
wdtc
BC ISF,4
nop
jMP MINT5
C8_2:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -