MOV @R0,A ;如要将字符反显(黑底白字),则读出点
INC R0 ;阵数据后求反放入单片机的RAM 中
INC R2
CJNE R2,#16,LP_MOVDOT16
;
PUSH COLUMN
MOV A,COLUMN ;显示列数COLUMN 是否在右半屏
CJNE A,#64,ASCII_IF64
ASCII_IF64: JNC ASCII_YGE64
MOV DPTR,#CWADR1 ;在左半屏时,选择左半屏写指令代码地址
CLR FIRST0_SECOND1_BIT ;左半屏列数标志BIT=0
SJMP ALL_COLUMN
ASCII_YGE64: CLR C
SUBB A,#64
MOV COLUMN,A
MOV DPTR,#CWADR2 ;在右半屏时,选择右半屏写指令代码地址
SETB FIRST0_SECOND1_BIT ;右半屏列数标志BIT=1
ALL_COLUMN: MOV A,PAGE
ADD A,#10111000B ;设置页地址命令
MOVX @DPTR,A
MOV A,COLUMN ;设置列地址命令
ADD A,#01000000B
MOVX @DPTR,A
MOV DPTR,DWADR1 ;根据左右半屏列数标志,选择写显示数据地址
JNB FIRST0_SECOND1_BIT,ALLMOV1
MOV DPTR,DWADR2
ALLMOV1: MOV R0,#28H
MOV_8BYTE1: MOV A,@R0
MOVX @DPTR,A ;写显示数据
NOP
INC R0
CJNE R0,#30H,MOV_8BYTE1