📄 display2.dt.bak
字号:
JBS MODEBUF,0
JMP RUN_OPERATE1
;========================
;++++解冻模式显示处理++++
;========================
JBC DARKE_GRADE,5
JMP DEF_GRADE5
JBC DARKE_GRADE,4
JMP DEF_GRADE4
JBC DARKE_GRADE,3
JMP DEF_GRADE3
JBC DARKE_GRADE,2
JMP DEF_GRADE2
JBC DARKE_GRADE,1
JMP DEF_GRADE1
JBC DARKE_GRADE,0
JMP DEF_GRADE0
JMP TEST_SLEEP
;=============6挡的处理============
DEF_GRADE5:
MOV A,@0B00011100;显示6
MOV DISPBUF0,A
MOV A,@0B00011111
MOV DISPBUF1,A
MOV A,@140
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN ;如果运行时间超过6挡运行时间则停止运行
jbs addorsubchange_flag,0
jmp nokey_down6
jmp six_judge6
nokey_down6: ;如果运行过程中没有+或-键被按下则在点显示时间缓冲区中写入23
mov a,@23
mov 0x33,a ;如果有+或-键盘被按下,那么缓冲区在模式设定子程序中已经将时间写入到缓冲区了
jmp six_judge6
;=============5挡的处理===============
DEF_GRADE4:
MOV A,@0B00011100;显示5
MOV DISPBUF0,A
MOV A,@0B00010111
MOV DISPBUF1,A
MOV A,@125
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nokey_down5
jmp five_judge5
nokey_down5:
mov a,@25
mov 0x33,a
jmp five_judge5
;==============4挡的处理==============
DEF_GRADE3:
MOV A,@0B00011010;显示4
MOV DISPBUF0,A
MOV A,@0B00010101
MOV DISPBUF1,A
MOV A,@110
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nokey_down4
jmp four_judge4
nokey_down4:
mov a,@28
mov 0x33,a
jmp four_judge4
;===============3挡的处理==============
DEF_GRADE2:
MOV A,@0B00010110;显示3
MOV DISPBUF0,A
MOV A,@0B00010111
MOV DISPBUF1,A
MOV A,@95
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nokey_down3
jmp three_judge3
nokey_down3:
mov a,@32
mov 0x33,a
jmp three_judge3
;================2挡的处理==============
DEF_GRADE1:
MOV A,@0B00010110;显示2
MOV DISPBUF0,A
MOV A,@0B00011110
MOV DISPBUF1,A
MOV A,@80
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nokey_down2
jmp two_judge2
nokey_down2:
mov a,@40
mov 0x33,a
jmp two_judge2
;================1挡的处理=============
DEF_GRADE0:
MOV A,@0B00010010;显示1
MOV DISPBUF0,A
MOV A,@0B00010001
MOV DISPBUF1,A
MOV A,@65
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
JMP ONE_LIGHT
;========6挡的点数点亮时间处理=========
SIX_JUDGE6:
MOV A,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time66
jmp notadd_time66
add_time66:
add a,0x35
bc status,0
notadd_time66:
SUB A,RUN_2S
JBC STATUS,0
JMP FIVE_JUDGE6
JMP SIX_LIGHT
FIVE_JUDGE6:
bc status,0
MOV A,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time65
jmp notadd_time65
add_time65:
add a,0x35
bc status,0
notadd_time65:
SUB A,RUN_2S
JBC STATUS,0
JMP FOUR_JUDGE6
JMP FIVE_LIGHT
FOUR_JUDGE6:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time64
jmp notadd_time64
add_time64:
add a,0x35
bc status,0
notadd_time64:
SUB A,RUN_2S
JBC STATUS,0
JMP THREE_JUDGE6
JMP FOUR_LIGHT
THREE_JUDGE6:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time63
jmp notadd_time63
add_time63:
add a,0x35
bc status,0
notadd_time63:
SUB A,RUN_2S
JBC STATUS,0
JMP TWO_JUDGE6
JMP THREE_LIGHT
TWO_JUDGE6:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time62
jmp notadd_time62
add_time62:
add a,0x35
bc status,0
notadd_time62:
SUB A,RUN_2S
JBC STATUS,0
JMP ONE_LIGHT
JMP TWO_LIGHT
;========5挡的点数点亮时间处理=========
FIVE_JUDGE5:
MOV A,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time55
jmp notadd_time55
add_time55:
add a,0x35
bc status,0
notadd_time55:
SUB A,RUN_2S
JBC STATUS,0
JMP FOUR_JUDGE5
JMP FIVE_LIGHT
FOUR_JUDGE5:
bc status,0
MOV A,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time54
jmp notadd_time54
add_time54:
add a,0x35
bc status,0
notadd_time54:
SUB A,RUN_2S
JBC STATUS,0
JMP THREE_JUDGE5
JMP FOUR_LIGHT
THREE_JUDGE5:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time53
jmp notadd_time53
add_time53:
add a,0x35
bc status,0
notadd_time53:
SUB A,RUN_2S
JBC STATUS,0
JMP TWO_JUDGE5
JMP THREE_LIGHT
TWO_JUDGE5:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time52
jmp notadd_time52
add_time52:
add a,0x35
bc status,0
notadd_time52:
SUB A,RUN_2S
JBC STATUS,0
JMP ONE_LIGHT
JMP TWO_LIGHT
;========4挡的点数点亮时间处理=========
FOUR_JUDGE4:
MOV A,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time44
jmp notadd_time44
add_time44:
add a,0x35
bc status,0
notadd_time44:
SUB A,RUN_2S
JBC STATUS,0
JMP THREE_JUDGE4
JMP FOUR_LIGHT
THREE_JUDGE4:
bc status,0
MOV A,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time43
jmp notadd_time43
add_time43:
add a,0x35
bc status,0
notadd_time43:
SUB A,RUN_2S
JBC STATUS,0
JMP TWO_JUDGE5
JMP THREE_LIGHT
TWO_JUDGE4:
bc status,0
MOV A,0x33
add a,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time42
jmp notadd_time42
add_time42:
add a,0x35
bc status,0
notadd_time42:
SUB A,RUN_2S
JBC STATUS,0
JMP ONE_LIGHT
JMP TWO_LIGHT
;========3挡的点数点亮时间处理=========
THREE_JUDGE3:
MOV A,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time33
jmp notadd_time33
add_time33:
add a,0x35
bc status,0
notadd_time33:
SUB A,RUN_2S
JBC STATUS,0
JMP TWO_JUDGE3
JMP THREE_LIGHT
TWO_JUDGE3:
bc status,0
MOV A,0x33
add a,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time32
jmp notadd_time32
add_time32:
add a,0x35
bc status,0
notadd_time32:
SUB A,RUN_2S
JBC STATUS,0
JMP ONE_LIGHT
JMP TWO_LIGHT
;========2挡的点数点亮时间处理=========
TWO_JUDGE2:
MOV A,0x33
bc status,0
jbc addorsubchange_flag,0
jmp add_time22
jmp notadd_time22
add_time22:
add a,0x35
bc status,0
notadd_time22:
SUB A,RUN_2S
JBC STATUS,0
JMP ONE_LIGHT
JMP TWO_LIGHT
;=======将显示字符写入显示缓冲区======
SIX_LIGHT:
MOV A,@0B11111111
JMP LIGHT_WRITE
FIVE_LIGHT:
MOV A,@0B11111110
JMP LIGHT_WRITE
FOUR_LIGHT:
MOV A,@0B11011110
JMP LIGHT_WRITE
THREE_LIGHT:
MOV A,@0B00011110
JMP LIGHT_WRITE
TWO_LIGHT:
MOV A,@0B00011010
JMP LIGHT_WRITE
ONE_LIGHT:
MOV A,@0B00001010
;====这里有点闪烁的处理========
LIGHT_WRITE:
JBS T1S_FLAG,0
JMP CLR_DISPBUF2
MOV DISPBUF2,A
JMP SLEEP_END
CLR_DISPBUF2:
CLRA
MOV DISPBUF2,A
JMP SLEEP_END
;===============================
;+++++运行解冻模式处理结束++++++
;===============================
;===============================
;+++++运行重新加热模式处理++++++
;===============================
RUN_OPERATE1:
JBS MODEBUF,1
JMP RUN_OPERATE2
MOV A,@0B01100001;将数字清掉
MOV DISPBUF0,A
MOV A,@0B00100000
MOV DISPBUF1,A
MOV A,@4
SUB A,RUN_2S
JBC STATUS,0
JMP REH_FIVELIGHT;运行时间超过4秒转
JMP SIX_LIGHT
REH_FIVELIGHT:
MOV A,@8
SUB A,RUN_2S
JBC STATUS,0
JMP REH_FOURLIGHT
JMP FIVE_LIGHT
REH_FOURLIGHT:
MOV A,@11
SUB A,RUN_2S
JBC STATUS,0
JMP REH_THREELIGHT
JMP FOUR_LIGHT
REH_THREELIGHT:
MOV A,@14
SUB A,RUN_2S
JBC STATUS,0
JMP REH_TWOLIGHT
JMP THREE_LIGHT
REH_TWOLIGHT:
MOV A,@17
SUB A,RUN_2S
JBC STATUS,0
JMP REH_ONELIGHT
JMP TWO_LIGHT
REH_ONELIGHT:
MOV A,@20
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
JMP ONE_LIGHT
;=============================
;++++运行正常模式处理入口+++++
;=============================
RUN_OPERATE2:
JBS MODEBUF,2
JMP SLEEP_END
JBC DARKE_GRADE,5
JMP NORMAL_GRADE5
JBC DARKE_GRADE,4
JMP NORMAL_GRADE4
JBC DARKE_GRADE,3
JMP NORMAL_GRADE3
JBC DARKE_GRADE,2
JMP NORMAL_GRADE2
JBC DARKE_GRADE,1
JMP NORMAL_GRADE1
JBC DARKE_GRADE,0
JMP NORMAL_GRADE0
JMP SLEEP_END
;============6挡的处理=============
NORMAL_GRADE5:
MOV A,@0B00001100;显示6
MOV DISPBUF0,A
MOV A,@0B00001111
MOV DISPBUF1,A
MOV A,@120
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nornokey_down6
jmp norsix_judge6
nornokey_down6:
mov a,@20
mov 0x33,a
jmp norsix_judge6
;============5挡的处理=============
NORMAL_GRADE4:
MOV A,@0B00001100;显示5
MOV DISPBUF0,A
MOV A,@0B00000111
MOV DISPBUF1,A
MOV A,@105
SUB A,RUN_2S
JBC STATUS,0
JMP STOP_RUN
jbs addorsubchange_flag,0
jmp nornokey_down5
jmp norfive_judge5
nornokey_down5:
mov a,@21
mov 0x33,a
jmp norfive_judge5
;============4挡的处理=============
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -