📄 hms.asm
字号:
TICK EQU 10000
T100US EQU 164
C100US EQU 20H
H24 EQU 30H ;30h存放时,31h存放分,32h存放秒
LJMP START
ORG 000BH
TOINT:
PUSH PSW
MOV A,C100US+1
JNZ GOON
DEC C100US
GOON:
DEC C100US+1
MOV A,C100US
ORL A,C100US+1
JNZ EXIT
MOV C100US,#HIGH(TICK)
MOV C100US+1,#LOW(TICK)
MOV A,H24+2 ;在此处设断点,可观察秒(data窗口30h)的变化,同时注意p1.0的变化
ADD A,R3
CPL P1.0
DA A
CJNE A,#60H,LP1
MOV H24+2,#0 ;在此处设断点,可观察分(data窗口31h)的变化 ,同时注意p1.1的变化
MOV A,H24+1
ADD A,R3
CPL P1.1
DA A
CJNE A,#60H,LP2
MOV H24+1,#0 ;在此处设断点,可观察时(data窗口32h)的变化 ,同时注意p1.2的变化
MOV A,H24
ADD A,R3
CPL P1.2
DA A
CJNE A,#24H,LP3
CLR A
LP3:
MOV H24,A
LJMP EXIT
LP1:
MOV H24+2,A
LJMP EXIT
LP2:
MOV H24+1,A
EXIT:
POP PSW
RETI
START:
mov 30h,#0
mov 31h,#0
mov 32h,#0
MOV TMOD,#02H
MOV TH0,#T100US
MOV TL0,#T100US
MOV R3,#01H
MOV IE,#10000010B
SETB TR0
MOV C100US,#HIGH(TICK)
MOV C100US+1,#LOW(TICK)
SJMP $
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -