📄 test dasplay.txt
字号:
;P1 EQU DB(N) ;Hardware setting
;P3.4 EQU RS
;P3.5 EQU R/W
;P3.3 EQU E
ORG 0000H
AJMP STAR
ORG 0100H
STAR: ACALL PR4 ;Initializing
MOV R2,#0FH ;Flash mode 动态显示模式 R2为控制命令寄存器
ACALL PR1 ;调用指令控制
MOV R2,#85H ;Add(1,6)第一行第6个位置开始显示
MOV DPTR,#TAB ;Character data
MOV R6,#0AH ;count 显示的字母个数
ACALL PR5 ;Display"WELCOME!!" 调用显示控制
MOV R2,#0C0H ;Add(2.1)第2行第一个位置开始显示
MOV R6,#14H ; count 显示的字母个数,R6为显示字数寄存器
ACALL PR5 ; display "Test by hubiao"
ACALL TIM1 ;时间延迟
MOV R1,#14H ;displacement count 20个位置数量
RLOOP: MOV R2,#18H ;right display
ACALL PR1 ;调用指令控制
ACALL TIM2
DJNZ R1,RLOOP ;loop 判断整体20个位置是否移动完全
MOV R2,#01H ;clear screen
ACALL PR1
STAR1: MOV R2,#0EH ;normal display mode 正常显示模式
ACALL PR1
MOV R2,#87H ;add(1.7) 第一行第8个位置显示
MOV DPTR,#TAB1 ;character tab
MOV R6,#07H ;count 显示字体数量
ACALL PR5 ;display"SAMSUNG"
ACALL TIM3
MOV R2,#0C0H ;Add(2.1) 第二行第一个位置显示
MOV R6,#014H ;count 显示字体数量
ACALL PR5 ;display"DISPLAY DEPAPTMENT"
STAR2: MOV R2,#95H ;add(1.22) 第一行接着上面显示,位置数据要顺序排列
MOV DPTR,#TAB2
MOV R6,#11H ;count 显示字体数量
ACALL PR5 ;Display"shenzhen Chn-Kor"
MOV R2,#0D4H ;add(2.21) 第二行接着上面显示,位置数据要顺序排列
MOV R6,#14H ;count 显示字体数量
ACALL PR5 ;Display"Electronics company"
MOV R2,#08H ;display off 关显示命令
ACALL PR1
MOV R1,#14H ;loop count 20个位置数量
LLOOP: MOV R2,#18H ;left displace
ACALL PR1
ACALL TIM2
DJNZ R1,LLOOP ;loop 判断整体左动显示是否完全
MOV R2,#0CH ;display ON 开显示命令
ACALL PR1
ACALL TIM1
TEL: MOV R2,#01H ;Clear screen
ACALL PR1
MOV R2,#07H ;left displace
ACALL PR1
MOV R6,#14H ;count
MOV R2,#94H ;add(1.21)
MOV DPTR,#TAB3
ACALL PR5 ;Display Tel.NO
ACALL TIM1
FAX: MOV R2,#01H
ACALL PR1
MOV R2,#05H ;right displace
ACALL PR1
MOV R6,#14H
MOV R2,#0E7H ;add(2.40)
MOV DPTR,#TAB4
ACALL PR5 ;Display Fax.NO
ACALL TIM1
AJMP STAR
PR0: ANL P3,#00H ;p3 set to 0
Clr P3.4
SETB P3.5
P01: ORL P1,#0FFH ;p1 set to1(input)
SETB P3.3
MOV A,P1 ;Read p1
CLR P3.3
ACALL TIM4
JB ACC.7,P01 ;Judge BF
RET
PR1: LCALL PR0 ;Write instruction program
MOV A,R2
CLR P3.4
CLR P3.5
SETB P3.3
ACALL TIM3
MOV P1,A
CLR P3.3
ACALL TIM4
RET
PR2: LCALL PR0 ;Write data program
MOV A,R2
SETB P3.4
CLR P3.5
SETB P3.3
ACALL TIM2
MOV P1,A
CLR P3.3
ACALL TIM4
RET
PR3: LCALL PR0 ;Read data program
SETB P3.4
SETB P3.5
ORL P1,#0FFH
SETB P3.3
ACALL TIM2
MOV A,P1
ACALL TIM3
CLR P3.3
RET
PR4: ANL P3,#00H ;Initialization program
ANL P1,#00H
MOV R7,03H ;loop count
P41: MOV R2,#38H ;Function control
ACALL PR1
ACALL TIM4
DJNZ R7,P41
MOV R2,#01H ;Clear screen
ACALL PR1
MOV R2,#06H ;Input mode setting
ACALL PR1
MOV R2,#0EH ;Display mode setting
ACALL PR1
RET
PR5: ACALL PR1
P51: CLR A
MOVC A,@A+DPTR ;Write to display
MOV R2,A
ACALL PR2
INC DPTR
DJNZ R6,P51
RET
TIM1: MOV R5,#18H ;Time delay
TT1: ACALL TIM2
DJNZ R5,TT1
RET
TIM2: MOV R4,#0FFH
TT2: ACALL TIM3
DJNZ R4,TT2
RET
TIM3: MOV R3,#25H
ACALL TIM4
TT3: DJNZ R3,TT3
TIM4: MOV R0,#0FFH
TT4: DJNZ R0,TT4
RET
TAB: DB 57H,45H,4CH,43H,4FH,4DH,45H,20H,21H,21H ;data
DB 54H,65H,73H,74H,20H,20H,20H,20H,62H,79H
DB 20H,20H,20H,20H,68H,75H,62H,69H,61H,6FH
TAB1: DB 53H,41H,4DH,53H,55H,4EH,47H
DB 44H,49H,53H,50H,4CH,41H,59H,20H,20H,20H
DB 44H,45H,50H,41H,52H,54H,4DH,45H,4EH,54H
TAB2: DB 20H,53H,68H,65H,6EH,7AH,68H,65H
DB 6EH,20H,43H,68H,6EH,0B0H,6BH,6FH,72H
DB 45H,6CH,65H,63H,74H,72H,6FH,6EH,69H,63H
DB 73H,20H,20H,43H,6FH,6DH,70H,61H,6EH,79H
TAB3: DB 2AH,2AH,54H,65H,6CH,3AH,30H,37H,35H,35H
DB 0B0H,32H,37H,32H,30H,39H,32H,37H,2AH,2AH,
TAB4: DB 2AH,2AH,36H,36H,32H,30H,32H,37H,32H,0B0H
DB 35H,35H,37H,30H,3AH,78H,61H,46H,3AH,2AH
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -