MOV SP,#60H ;设堆栈指针
LCALL INIT_SIO ;初始化串口
MOV X_V, #0CH ;在x=12,y=13为顶点处显示位图11
MOV Y_V, #0DH
MOV NUBER, #0BH
LCALL ORDER_BMP ;发送位图显示子程,其它命令类似
AJMP $ ;观察LCD显示屏
INIT_SIO:
MOV SCON,#50H ;
串行口:方式1
MOV TMOD,#21H ;定时器T1为波特率发生器,方式2
MOV TH1,#0FDH ;波特率=9600, Fosc="11".0592MHz
MOV TL1,#0FDH ;SMOD=0
SETB TR1 ;启动T1
RET
ORDER_BMP: MOV A,X_V
MOV R0, #REG_ASC_XH
LCALL H_ASC ;将参数x转换为两个字节的ASCII码
MOV A,Y_V
MOV R0, #REG_ASC_YH
LCALL H_ASC ;将参数y转换为两个字节的ASCII码
MOV A,NUBER
MOV R0, #REG_ASC_NH
LCALL H_ASC ;将参数n转换为两个字节的ASCII码
LCALL BUSY_CK ;检测模块状态
MOV A, #“B” ;先发送命令码BMP的ASCII码
MOV SBUF, A
JNB TI, $
CLR TI
MOV A,#“M”
MOV SBUF, A
JNB TI, $
CLR TI
MOV A, #“P”
MOV SBUF, A
JNB TI, $