12864程序,控制器ST7920
RS EQU P1.7
RW EQU P1.6
E EQU P1.5
PSB EQU P0.7
RST EQU P0.6
COM EQU 20H
DAT EQU 21H
ORG 0000H
LJMP DISP
ORG 0040H
DISP: CLR PSB
MOV SP,#60H
LCALL DELAY
SETB PSB ;将PSB置1,通信方式为8位数据并口
LCALL DELAY
MOV COM,#30H ;功能设置---8BIT控制界面,基本指令集
ACALL WRI ;调用写指令子程序
LCALL DELAY ;延迟39uS
MOV COM,#0DH ;显示打开,光标关,反白显示关
ACALL WRI
LCALL DELAY ;延迟39uS
MOV COM,#01H ;清除屏幕显示,将DDRAM的地址计数器归零
ACALL WRI ;调用写指令子程序
LCALL DELAY ;延迟39uS
MOV COM,#06H ;DDRAM的地址计数器(AC)加1
ACALL WRI ;调用写指令子程序
LCALL DELAY ;延迟39uS
DISPLAY5A:
MOV R2,#64 ;DDRAM地址记数器设为最大值
MOV R1,#38H
MOV COM,#85H ;DD RAM 地址-----0000000
ACALL WRI
MOV DAT,R1
ACALL WRD ;写入第二字节数据
LCALL DELAY1
LCALL D1MM
DISPLAY5:
MOV R2,#2 ;DDRAM地址记数器设为最大值
MOV R1,#0EFH
MOV COM,#80H
ACALL WRI
MOV DAT,#0CBH
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHUN
MOV R1,#0D3H
MOV COM,#81H
ACALL WRI
MOV DAT,#0D7H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHI
MOV R1,#0BBH
MOV COM,#82H
ACALL WRI
MOV DAT,#0D4H
ACALL WRD
MOV DAT,R1
ACALL WRD ;YUE
MOV R1,#0F8H
MOV COM,#83H
ACALL WRI
MOV DAT,#0B1H
ACALL WRD
MOV DAT,R1
ACALL WRD ;BIN
MOV R1,#0DFH
MOV COM,#84H
ACALL WRI
MOV DAT,#0D5H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHE
MOV R1,#0FAH
MOV COM,#85H
ACALL WRI
MOV DAT,#0B9H
ACALL WRD
MOV DAT,R1
ACALL WRD ;GOU
MOV R1,#0AEH
MOV COM,#86H
ACALL WRI
MOV DAT,#0D6H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHI
MOV R1,#0F3H
MOV COM,#87H
ACALL WRI
MOV DAT,#0B4H
ACALL WRD
MOV DAT,R1
ACALL WRD ;DA
MOV R1,#0C2H
MOV COM,#90H
ACALL WRI
MOV DAT,#0CAH
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHI
MOV R1,#0C0H
MOV COM,#91H
ACALL WRI
MOV DAT,#0CBH
ACALL WRD
MOV DAT,R1
ACALL WRD ;SI
MOV R1,#0FAH
MOV COM,#92H
ACALL WRI
MOV DAT,#0C9H
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHEN
MOV R1,#0AEH
MOV COM,#93H
ACALL WRI
MOV DAT,#0D6H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZI
MOV R1,#0D8H
MOV COM,#94H
ACALL WRI
MOV DAT,#0B5H
ACALL WRD
MOV DAT,R1
ACALL WRD ;DI
MOV R1,#0E6H
MOV COM,#95H
ACALL WRI
MOV DAT,#0B4H
ACALL WRD
MOV DAT,R1
ACALL WRD ;CHUN
MOV R1,#0F6H
MOV COM,#96H
ACALL WRI
MOV DAT,#0CDH
ACALL WRD
MOV DAT,R1
ACALL WRD ;WAN
MOV R1,#0AEH
MOV COM,#97H
ACALL WRI
MOV DAT,#0D6H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHI
MOV R1,#0C0H
MOV COM,#88H
ACALL WRI
MOV DAT,#0B5H
ACALL WRD
MOV DAT,R1
ACALL WRD ;DAO
MOV R1,#0BBH
MOV COM,#89H
ACALL WRI
MOV DAT,#0B2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;BO
MOV R1,#0C9H
MOV COM,#8AH
ACALL WRI
MOV DAT,#0BFH
ACALL WRD
MOV DAT,R1
ACALL WRD ;KE
MOV R1,#0BBH
MOV COM,#8BH
ACALL WRI
MOV DAT,#0B2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;BO
MOV R1,#0ECH
MOV COM,#8CH
ACALL WRI
MOV DAT,#0B2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;CAO
MOV R1,#0B2H
MOV COM,#8DH
ACALL WRI
MOV DAT,#0D2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;YIE
LCALL D1MM
LCALL D1MM
DISPLAY6:
MOV R2,#2 ;DDRAM地址记数器设为最大值
MOV R1,#0EEH
MOV COM,#80H
ACALL WRI
MOV DAT,#0C9H
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHEN
MOV R1,#0DAH
MOV COM,#81H
ACALL WRI
MOV DAT,#0DBH
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHEN
MOV R1,#0C0H
MOV COM,#82H
ACALL WRI
MOV DAT,#0C3H
ACALL WRD
MOV DAT,R1
ACALL WRD ;MEI
MOV R1,#0D3H
MOV COM,#83H
ACALL WRI
MOV DAT,#0CAH
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHI
MOV R1,#0BAH
MOV COM,#84H
ACALL WRI
MOV DAT,#0D2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;YEI
MOV R1,#0A7H
MOV COM,#85H
ACALL WRI
MOV DAT,#0BEH
ACALL WRD
MOV DAT,R1
ACALL WRD ;JIN
MOV R1,#0A3H
MOV COM,#86H
ACALL WRI
MOV DAT,#0B3H
ACALL WRD
MOV DAT,R1
ACALL WRD ;CHANG
MOV R1,#0DDH
MOV COM,#87H
ACALL WRI
MOV DAT,#0D6H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHOU
MOV R1,#0DCH
MOV COM,#90H
ACALL WRI
MOV DAT,#0D7H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHONG
MOV R1,#0FAH
MOV COM,#91H
ACALL WRI
MOV DAT,#0B4H
ACALL WRD
MOV DAT,R1
ACALL WRD ;DIAN
MOV R1,#0EDH
MOV COM,#92H
ACALL WRI
MOV DAT,#0C0H
ACALL WRD
MOV DAT,R1
ACALL WRD ;LI
MOV R1,#0D2H
MOV COM,#93H
ACALL WRI
MOV DAT,#0CEH
ACALL WRD
MOV DAT,R1
ACALL WRD ;WE
MOV R1,#0C7H
MOV COM,#94H
ACALL WRI
MOV DAT,#0C3H
ACALL WRD
MOV DAT,R1
ACALL WRD ;MEN
MOV R1,#0BBH
MOV COM,#95H
ACALL WRI
MOV DAT,#0D2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;YI
MOV R1,#0F0H
MOV COM,#96H
ACALL WRI
MOV DAT,#0C6H
ACALL WRD
MOV DAT,R1
ACALL WRD ;QI
MOV R1,#0B4H
MOV COM,#97H
ACALL WRI
MOV DAT,#0C0H
ACALL WRD
MOV DAT,R1
ACALL WRD ;LIAN
MOV R1,#0F6H
MOV COM,#88H
ACALL WRI
MOV DAT,#0D7H
ACALL WRD
MOV DAT,R1
ACALL WRD ;ZHOU
MOV R1,#0BAH
MOV COM,#89H
ACALL WRI
MOV DAT,#0D2H
ACALL WRD
MOV DAT,R1
ACALL WRD ;YEI
MOV R1,#0A7H
MOV COM,#8AH
ACALL WRI
MOV DAT,#0BEH
ACALL WRD
MOV DAT,R1
ACALL WRD ;JIN
MOV R1,#0D4H
MOV COM,#8BH
ACALL WRI
MOV DAT,#0CFH
ACALL WRD
MOV DAT,R1
ACALL WRD ;XIAN
MOV R1,#0BEH
MOV COM,#8CH
ACALL WRI
MOV DAT,#0CAH
ACALL WRD
MOV DAT,R1
ACALL WRD ;SHI
LCALL D1MM
LCALL D1MM
LJMP DISP
WRI: PUSH ACC
CLR RS
SETB RW
WRI1: MOV P2,#0FFH
SETB E
MOV A,P2
CLR E
JB ACC.7,WRI1
CLR RW
MOV P2,COM
SETB E
CLR E
POP ACC
RET
;*********************以上是写指令子程序
WRD: PUSH ACC
CLR RS
SETB RW
WRD1: MOV P2,#0FFH
SETB E
MOV A,P2
CLR E
JB ACC.7,WRD1
SETB RS
CLR RW
MOV P2,DAT
SETB E
CLR E
POP ACC
RET
D1MM: MOV R5,#0FFH
DMM: DEC R5
LCALL DELAY
CJNE R5,#00H,DMM
RET
DELAY: MOV R7,#0FFH
DELAY4: MOV R6,#00FH
LOOP2: DJNZ R6,LOOP2
DJNZ R7,DELAY4
RET
DELAY1: MOV R4,#08H
DELAY11:MOV R7,#0FFH
DELAY41:MOV R6,#0FFH
DJNZ R6,$
DJNZ R7,DELAY41
DJNZ R4,DELAY11
RET
END
07-06-14 11:03