📄 tt226.asm
字号:
CNP1: MOV R1,#0EDH
MOV @R1,#85H ;修改修改时间和日期的标志
MOV R1,#0EEH
MOV A,@R1
INC A
MOV @R1,A
CJNE A,#01H,XWDF
MOV 67H,#5AH
MOV 02H,#15
CLR P0.4
LJMP DDBG
XWDF: CJNE A,#02H,LHYJ
MOV 67H,#0A5H
MOV 02H,#15
CLR P0.4
LJMP DDBG
LHYJ: CJNE A,#03H,LSFJ
MOV 67H,#5AH
MOV 02H,#5
MOV R1,#0EEH
MOV @R1,#00H
MOV R1,#0EDH
MOV @R1,#00H
SETB P0.4
NOP
NOP
LSFJ: LJMP DDBG ;转去等待键释放
XIA9: JB P0.7,XZOY ;判断是否是AN13(启动/停止/退出定时和启动/屏蔽电话遥控)按下
MOV A,#0DEH
CJNE A,6AH,TCDS
MOV R3,#00H
CLR RS1
CLR RS0 ;切换回原来的第0组寄存器组
MOV 6AH,#00H ;清除定时标志
MOV 0BH,#10H
MOV 3BH,#10
NOP
NOP
LJMP DDBG
XZOY: LJMP XIA10
TCDS: MOV A,#0BFH
CJNE A,70H,QDTZ
NOP
NOP
LJMP DDKZ ;转到单独启动/停止每路定时
QDTZ: INC 0FH
MOV A,0FH
CJNE A,#01H,ZM1
MOV 37H,#0DDH ;单启动定时的标志
MOV 1EH,#00H
MOV A,75H
CPL A
MOV 75H,A
NOP
NOP
LJMP DDBG ;转去等待键释放
ZM1: CJNE A,#02H,ZM2
MOV 37H,#00H
MOV 1EH,#0EEH ;单启动电话遥控的标志
MOV A,75H
CPL A
MOV 75H,A
NOP
NOP
LJMP DDBG ;转去等待键释放
ZM2: CJNE A,#03H,ZM3
SETB P0.5 ;同时启动电话遥控和定时
MOV 37H,#0DDH
MOV 1EH,#0EEH
MOV A,75H
CPL A
MOV 75H,A
NOP
NOP
LJMP DDBG ;转去等待键释放
ZM3: CJNE A,#04H,ZM5
CLR P0.5
MOV 37H,#00H
MOV 1EH,#00H
MOV 0FH,#00H
MOV A,75H
CPL A
MOV 75H,A ;同时屏蔽电话遥控和定时
NOP
NOP
ZM5: LJMP DDBG ;转去等待键释放
DDKZ: CJNE R3,#01H,NX11
MOV R1,#91H
MOV A,@R1
CPL A ;取反是否启动第1路定时的标志
MOV @R1,A
CJNE A,#0AAH,QF10
MOV R1,#80H
MOV @R1,#11H
MOV R1,#81H
MOV @R1,#11H ;启动第1路定时
NOP
NOP
LJMP DS3
QF10: MOV R1,#80H
MOV @R1,#00H
MOV R1,#81H
MOV @R1,#00H ;停止第1路定时
NOP
NOP
LJMP DS3
NX11: CJNE R3,#02H,NX12
MOV R1,#92H
MOV A,@R1
CPL A ;取反是否启动第2路定时的标志
MOV @R1,A
CJNE A,#0AAH,QF20
MOV R1,#82H
MOV @R1,#11H
MOV R1,#83H
MOV @R1,#11H ;启动第2路定时
NOP
NOP
LJMP DS3
QF20: MOV R1,#82H
MOV @R1,#00H
MOV R1,#83H
MOV @R1,#00H ;停止第2路定时
NOP
NOP
LJMP DS3
NX12: CJNE R3,#03H,NX13
MOV R1,#93H
MOV A,@R1
CPL A ;取反是否启动第3路定时的标志
MOV @R1,A
CJNE A,#0AAH,QF30
MOV R1,#84H
MOV @R1,#11H
MOV R1,#85H
MOV @R1,#11H ;启动第3路定时
NOP
NOP
LJMP DS3
QF30: MOV R1,#84H
MOV @R1,#00H
MOV R1,#85H
MOV @R1,#00H ;停止第3路定时
NOP
NOP
LJMP DS3
NX13: CJNE R3,#04H,NX14
MOV R1,#94H
MOV A,@R1
CPL A ;取反是否启动第4路定时的标志
MOV @R1,A
CJNE A,#0AAH,QF40
MOV R1,#86H
MOV @R1,#11H
MOV R1,#87H
MOV @R1,#11H ;启动第4路定时
NOP
NOP
LJMP DS3
QF40: MOV R1,#86H
MOV @R1,#00H
MOV R1,#87H
MOV @R1,#00H ;停止第4路定时
NOP
NOP
LJMP DS3
NX14: CJNE R3,#05H,NX15
MOV R1,#95H
MOV A,@R1
CPL A
MOV @R1,A
CJNE A,#0AAH,QF50
MOV R1,#88H
MOV @R1,#11H
MOV R1,#89H
MOV @R1,#11H ;启动第5路定时
NOP
NOP
LJMP DS3
QF50: MOV R1,#88H
MOV @R1,#00H
MOV R1,#89H
MOV @R1,#00H ;停止第5路定时
NOP
NOP
LJMP DS3
NX15: CJNE R3,#06H,NX17
MOV R1,#96H
MOV A,@R1
CPL A
MOV @R1,A
CJNE A,#0AAH,QF60
MOV R1,#8AH
MOV @R1,#11H
MOV R1,#8BH
MOV @R1,#11H ;启动第6路定时
NOP
NOP
LJMP DS3
QF60: MOV R1,#8AH
MOV @R1,#00H
MOV R1,#8BH
MOV @R1,#00H ;停止第6路定时
NOP
NOP
LJMP DS3
NX17: CJNE R3,#07H,NX18
MOV R1,#97H
MOV A,@R1
CPL A
MOV @R1,A
CJNE A,#0AAH,QF70
MOV R1,#8CH
MOV @R1,#11H
MOV R1,#8DH
MOV @R1,#11H ;启动第7路定时
NOP
NOP
LJMP DS3
QF70: MOV R1,#8CH
MOV @R1,#00H
MOV R1,#8DH
MOV @R1,#00H ;停止第7路定时
NOP
NOP
LJMP DS3
NX18: CJNE R3,#08H,NX19
MOV R1,#98H
MOV A,@R1
CPL A
MOV @R1,A
CJNE A,#0AAH,QF80
MOV R1,#8EH
MOV @R1,#11H
MOV R1,#8FH
MOV @R1,#11H ;启动第8路定时
NOP
NOP
LJMP DS3
NX19: NOP
NOP
LJMP DDBG
QF80: MOV R1,#8EH
MOV @R1,#00H
MOV R1,#8FH
MOV @R1,#00H ;停止第8路定时
NOP
NOP
LJMP DS3
XIA10: MOV P2,#0DFH ;指向第6列
SETB P0.6
SETB P0.7
JB P0.6,JYFL ;判断是否是AN6(定时1/星期加1)按下
MOV R1,#0EDH
MOV A,@R1
CJNE A,#85H,CFRG
MOV A,#0A5H
CJNE A,67H,CNDR
MOV 02H,#10
MOV A,6FH
ADD A,#10H
MOV 6FH,A
CJNE A,#8FH,DJUR
MOV 6FH,#1FH
DJUR: LJMP DDG11 ;转去等待键释放
CNDR: MOV A,#0BFH
CJNE A,70H,CJRD
NOP
NOP
CFRG: LJMP DDBG
JYFL: NOP
NOP
LJMP XIA11
CJRD: MOV 02H,#10
MOV 3BH,#15
CLR RS1
SETB RS0 ;切换工作寄存器组到第2组
MOV 6AH,#0DEH ;按下定时键的标志
INC R3
MOV A,R3
ANL A,#0FH
CJNE A,#01H,JN1
NOP
NOP
LJMP DYC1
JN1: CJNE A,#02H,JN2
NOP
NOP
LJMP DYC2
JN2: CJNE A,#03H,JN3
NOP
NOP
LJMP DYC3
JN3: CJNE A,#04H,JN4
NOP
NOP
LJMP DYC4
JN4: CJNE A,#05H,JN5
NOP
NOP
LJMP DYC5
JN5: CJNE A,#06H,JN6
NOP
NOP
LJMP DYC6
JN6: MOV A,R3
SUBB A,#06H
MOV R3,A
NOP
NOP
LJMP DYC1
TY79: CJNE A,#02H,XETY
MOV 0BH,#10H
CLR RS1
CLR RS0 ;切换工作寄存器组到第1组
MOV 70H,#00H ;清除单独启动/停止每路定时的标志
MOV 74H,#00H ;第二次按下定时2则退出调整各路定时启动/停止状态
XETY: NOP
NOP
LJMP DDBG
XIA11: JB P0.7,BUTS ;判断是否是AN14(定时2/星期减1)按下
MOV R1,#0EDH
MOV A,@R1
CJNE A,#85H,VGTY
MOV A,#0A5H
CJNE A,67H,SWJU
MOV 02H,#10
MOV A,6FH
SUBB A,#10H
MOV 6FH,A
CJNE A,#0FH,KLSD
MOV 6FH,#7FH
NOP
NOP
KLSD: LJMP DDG11 ;转去等待键释放
VGTY: NOP
NOP
LJMP DDBG
SWJU: MOV 02H,#10
MOV A,#0DEH
CJNE A,6AH,TY77
NOP
NOP
LJMP PSIG
BUTS: NOP
NOP
LJMP XIA12
TY77: INC 74H
MOV A,74H
CJNE A,#01H,TY79
MOV 3BH,#15
MOV 70H,#0BFH ;进入单独启动/停止每路定时状态
CLR RS1
SETB RS0 ;切换工作寄存器组到第2组
MOV R3,#01H
DS3: CJNE R3,#01H,NEX11
MOV R1,#80H
MOV A,@R1
MOV R4,A
MOV R1,#81H
MOV A,@R1
MOV R5,A ;显示第1路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX11: CJNE R3,#02H,NEX12
MOV R1,#82H
MOV A,@R1
MOV R4,A
MOV R1,#83H
MOV A,@R1
MOV R5,A ;显示第2路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX12: CJNE R3,#03H,NEX13
MOV R1,#84H
MOV A,@R1
MOV R4,A
MOV R1,#85H
MOV A,@R1
MOV R5,A ;显示第3路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX13: CJNE R3,#04H,NEX14
MOV R1,#86H
MOV A,@R1
MOV R4,A
MOV R1,#87H
MOV A,@R1
MOV R5,A ;显示第4路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX14: CJNE R3,#05H,NEX15
MOV R1,#88H
MOV A,@R1
MOV R4,A
MOV R1,#89H
MOV A,@R1
MOV R5,A ;显示第5路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX15: CJNE R3,#06H,NEX16
MOV R1,#8AH
MOV A,@R1
MOV R4,A
MOV R1,#8BH
MOV A,@R1
MOV R5,A ;显示第6路定时是否启动
NOP
NOP
LJMP DDBG ;转去等待键释放
NEX16: CJNE R3,#07H,NEX17
MOV R1,#8CH
MOV A,@R1
MOV R4,A
MOV R1,#8DH
MOV A,@R1
MOV R5,A ;显示第7路定时是否启动
LJMP DDBG ;转去等待键释放
NEX17: CJNE R3,#08H,NEX18
MOV R1,#8EH
MOV A,@R1
MOV R4,A
MOV R1,#8FH
MOV A,@R1
MOV R5,A ;显示第8路定时是否启动
NEX18: LJMP DDBG ;转去等待键释放
PSIG: MOV 3BH,#15
DEC R3
MOV A,R3
ANL A,#0FH
CJNE A,#06H,JN11
NOP
NOP
LJMP DYC6
JN11: CJNE A,#05H,JN12
NOP
NOP
LJMP DYC5
JN12: CJNE A,#04H,JN13
NOP
NOP
LJMP DYC4
JN13: CJNE A,#03H,JN14
NOP
NOP
LJMP DYC3
JN14: CJNE A,#02H,JN15
NOP
NOP
LJMP DYC2
JN15: CJNE A,#01H,JN16
NOP
NOP
LJMP DYC1
JN16: MOV A,R3
ANL A,#0F0H
ADD A,#06H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -