📄 无延时.asm
字号:
CJNE A, #10H, CCW_31 ;"01"为中区
LCALL PRM0
LJMP CCW_4
CCW_31: CJNE A, #20H, CCW_32 ;"10"为右区
LCALL PRR0
LJMP CCW_4
CCW_32: LCALL PRL0 ;"00"为左区
CCW_4: MOV A, CODE1 ;取间址寄存器值
MOVC A, @A+DPTR ;取汉字字模数据
MOV DAT, A ;写数据
MOV A, PAGE1 ;判区域标志
ANL A, #30H
CJNE A, #10H, CCW_41 ;"01"为中区
LCALL PRM1
LJMP CCW_5
CCW_41: CJNE A, #20H, CCW_42 ;"10"为右区
LCALL PRR1
LJMP CCW_5
CCW_42: LCALL PRL1 ;"00"为左区
CCW_5: INC CODE1 ;间址寄存器加一
INC COLUMN ;列地址寄存器加一
MOV A, COLUMN ;判列地址是否超出区域范围
CJNE A, #40H, CCW_6
CCW_6: JC CCW_7 ;未超出则继续
MOV COLUMN, #00H
MOV A, PAGE1 ;超出则判在何区域
JB ACC.5, CCW_9 ;在右区域则退出
JB ACC.4, CCW_61 ;判在左或中区
SETB ACC.4 ;在左区则转中区
MOV PAGE1, A
MOV COM, #40H ;设置中区列地址为"0"
LCALL PRM0
LJMP CCW_7
CCW_61: SETB ACC.5 ;在中区则转右区
CLR ACC.4
MOV PAGE1, A
MOV COM, #40H ;设置右区列地址为"0"
LCALL PRR0
CCW_7: DJNZ COUNT, CCW_4 ;当页循环
MOV A, PAGE1 ;读页地址寄存器
JB ACC.7, CCW_9 ;判完成标志D7位,"1"则完成退出
INC A ;否则页地址加一
SETB ACC.7 ;置完成位为"1"
ANL A, #0CFH ;清区域标志
MOV PAGE1, A
MOV CODE1, #10H ;间址寄存器设置为16
LJMP CCW_1 ;大循环
CCW_9: RET
;---------------------------初始化子程序--------------------------
INT: MOV COM, #3FH ;开显示
LCALL PRL0
LCALL PRM0
LCALL PRR0
MOV COM, #0C0H ;设置显示起始行为第一行
LCALL PRL0
LCALL PRM0
LCALL PRR0
LCALL CLEAR ;清屏
RET
;----------------------------延时子程序------------------------------
YANSHI1: MOV 40H, #20H
DEL2: MOV 41H, #8FH
DEL3: MOV 42H, #8FH
DEL4: NOP
CPL WATCHDOG
DJNZ 42H, DEL4
DJNZ 41H, DEL3
DJNZ 40H, DEL2
RET
DELAY2: MOV R0, #0FFH
DEL6: MOV R1, #0FFH
CPL WATCHDOG
DEL7: DJNZ R1, $
DJNZ R0, DEL6
RET
;----------------------------清屏子程序------------------------------
CLEAR: MOV R4, #00H
CLEAR1: MOV A, R4
ORL A, #0B8H
MOV COM, A
LCALL PRL0
LCALL PRM0
LCALL PRR0
MOV COM, #40H
LCALL PRL0
LCALL PRM0
LCALL PRR0
MOV R3, #40H
CLEAR2: MOV DAT, #00H
LCALL PRL1
LCALL PRM1
LCALL PRR1
DJNZ R3, CLEAR2
INC R4
CJNE R4, #08H, CLEAR1
RET
;----------------------------封面显示子程序------------------------------
FENG1:
S_UP: MOV R7, #00H
S_UP1: MOV A, #0C0H
ORL A, R7
MOV COM, A
LCALL PRL0
LCALL PRM0
LCALL PRR0
LCALL DELAY2
MOV PAGE1, #01H ;第1页
MOV COLUMN, #08H ;列号
MOV CODE1, #21H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #18H ;列号
MOV CODE1, #22H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #28H ;列号
MOV CODE1, #23H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #03H ;第3页
MOV COLUMN, #08H ;列号
MOV CODE1, #24H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #03H ;第3页
MOV COLUMN, #18H ;列号
MOV CODE1, #25H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #03H ;第3页
MOV COLUMN, #28H ;列号
MOV CODE1, #26H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #08H ;列号
MOV CODE1, #27H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #18H ;列号
MOV CODE1, #28H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #28H ;列号
MOV CODE1, #29H ;汉字代码
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #40H ;列号
MOV CODE1, #0DH ;汉字代码 龙
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #50H ;列号
MOV CODE1, #0EH ;汉字代码 源
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #60H ;列号
MOV CODE1, #08H ;汉字代码 电
LCALL CCW_PR
MOV PAGE1, #01H ;第1页
MOV COLUMN, #6FH ;列号
MOV CODE1, #0FH ;汉字代码 力
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #40H ;列号
MOV CODE1, #10H ;汉字代码 河
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #50H ;列号
MOV CODE1, #11H ;汉字代码 北
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #60H ;列号
MOV CODE1, #12H ;汉字代码 保
LCALL CCW_PR
MOV PAGE1, #05H ;第5页
MOV COLUMN, #6FH ;列号
MOV CODE1, #34H ;汉字代码 定
LCALL CCW_PR
INC R7
CJNE R7, #41H, XXXTTT
SJMP RETURN1
XXXTTT: LJMP S_UP1
RETURN1:RET
FENG2: NOP
S_DOWN: MOV R7, #3FH
MOV COM, #0C0H
LCALL PRL0
LCALL PRM0
LCALL PRR0
LCALL DELAY2
MOV PAGE1, #01H ;第0页
MOV COLUMN, #10H ;列号
MOV CODE1, #00H ;汉字代码 D
LCALL CCW_PR
MOV PAGE1, #01H ;第0页
MOV COLUMN, #20H ;列号
MOV CODE1, #01H ;汉字代码 X
LCALL CCW_PR
MOV PAGE1, #01H ;第0页
MOV COLUMN, #2FH ;列号
MOV CODE1, #02H ;汉字代码 W
LCALL CCW_PR
MOV PAGE1, #01H ;第0页
MOV COLUMN, #40H ;列号
MOV CODE1, #03H ;汉字代码 -
LCALL CCW_PR
MOV PAGE1, #01H ;第0页
MOV COLUMN, #50H ;列号
MOV CODE1, #2DH ;汉字代码 口
LCALL CCW_PR
MOV PAGE1, #01H ;第0页
MOV COLUMN, #60H ;列号
MOV CODE1, #04H ;汉字代码 型
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #00H ;列号
MOV CODE1, #05H ;汉字代码 高
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #10H ;列号
MOV CODE1, #06H ;汉字代码 压
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #20H ;列号
MOV CODE1, #07H ;汉字代码 带
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #2FH ;列号
MOV CODE1, #08H ;汉字代码 电
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #40H ;列号
MOV CODE1, #09H ;汉字代码 显
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #50H ;列号
MOV CODE1, #0AH ;汉字代码 示
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #60H ;列号
MOV CODE1, #0BH ;汉字代码 装
LCALL CCW_PR
MOV PAGE1, #03H ;第2页
MOV COLUMN, #6FH ;列号
MOV CODE1, #0CH ;汉字代码 置
LCALL CCW_PR
MOV PAGE1, #05H ;第6页
MOV COLUMN, #20H ;列号
MOV CODE1, #15H ;汉字代码 2
LCALL CCW_PR
MOV PAGE1, #05H ;第6页
MOV COLUMN, #2FH ;列号
MOV CODE1, #13H ;汉字代码 0
LCALL CCW_PR
MOV PAGE1, #05H ;第6页
MOV COLUMN, #40H ;列号
MOV CODE1, #13H ;汉字代码 0
LCALL CCW_PR
MOV PAGE1, #05H ;第6页
MOV COLUMN, #50H ;列号
MOV CODE1, #16H ;汉字代码 3
LCALL CCW_PR
S_DOWN1: MOV A, #0C0H
ORL A, R7
MOV COM, A
LCALL PRL0
LCALL PRM0
LCALL PRR0
LCALL DELAY2
DJNZ R7, S_DOWN1
MOV A, #0C0H
ORL A, R7
MOV COM, A
LCALL PRL0
LCALL PRM0
LCALL PRR0
RETURN2: RET
;------------------------------电压等级显示子程序-----------------------
DJ110V: MOV PAGE1, #00H ;第0页
MOV COLUMN, #00H ;列号
MOV CODE1, #14H ;汉字代码 1
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #10H ;列号
MOV CODE1, #14H ;汉字代码 1
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #20H ;列号
MOV CODE1, #13H ;汉字代码 0
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #2FH ;列号
MOV CODE1, #17H ;汉字代码 K
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #40H ;列号
MOV CODE1, #18H ;汉字代码 V
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #4FH ;列号
MOV CODE1, #05H ;汉字代码 高
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #5FH ;列号
MOV CODE1, #06H ;汉字代码 压
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #6FH ;列号
MOV CODE1, #19H ;汉字代码 线
LCALL CCW_PR
RET
DJ50V: MOV PAGE1, #00H ;第0页
MOV COLUMN, #00H ;列号
MOV CODE1, #16H ;汉字代码 3
LCALL CCW_PR
MOV PAGE1, #00H ;第0页
MOV COLUMN, #10H ;列号
MOV CODE1, #2AH ;汉字代码 5
LCALL CCW_PR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -