实验二十 128×64点阵型液晶显示实验
实验目的
1、了解点阵型液晶显示器的工作原理。
2、了解点阵型液晶显示器控制方式。
实验说明
1、本实验箱采用内置控制器、不带字库的图形点阵液晶显示模块,点阵数为128×64。它主要由行驱动器/列驱动器及128×64 全点阵液晶显示器组成,可完成图形显示也可以显示8×4 个(16×16 点阵)汉字。
主要技术参数和性能:
1)电源VDD +5V 模块内自带-10V 负压用于LCD 的驱动电压
2)显示内容128(列) 64(行)点
3)全屏幕点阵
4)七种指令
5)与CPU 接口采用8 位数据总线并行输入输出和8 条控制线
6)占空比1/64
7)工作温度-10 +55 存储温度-20 +60
2、模块主要硬件构成说明(结构框图)
IC1、IC2 为列驱动器,IC1 控制模块的右半屏,IC2 控制模块的左半屏, IC3 为行驱动器。IC1、IC2、IC3 含有以下主要功能器件,了解如下器件有利于对LCD 模块的编程。
1)指令寄存器(IR)
IR 是用于寄存指令码,与数据寄存器数据相对应,当D/I=0 时在E 信号下降沿的作用下指令码写入IR
2)数据寄存器(DR)
DR 用于寄存数据,与指令寄存器寄存指令相对应,当D/I=1 时在下降沿作用下,图形显示数据写入DR,或在E 信号高电平作用下,由DR 读到DB7~DB0 数据总线,DR 和DDRAM 之间的数据传输是模块内部自动执行的。
3)忙标志BF
BF 标志提供内部工作情况,BF=1 表示模块在内部操作,此时模块不接受外部指令和数据;BF=0 时模块为准备状态,随时可接受外部指令和数据。利用STATUS READ 指令可以将BF 读到数据总线从而检验模块之工作状态。
4)显示控制触发器DFF
用于模块屏幕显示开和关的控制,DFF=1为开显示,DDRAM 的内容就显示在屏幕上;DFF=0为关显示。
DDF 的状态是指令DISPLAY ON/OFF 和RST 信号控制的。
5)XY 地址计数器
XY 地址计数器是一个9 位计数器高,3 位是X 地址计数器,低6 位为Y 地址计数器。XY 地址计数器实际上是作为DDRAM 的地址指针,X地址计数器为DDRAM 的页指针,Y地址计数器为DDRAM 的Y 地址指针。
X 地址计数器没有记数功能,只能用指令设置。
Y 地址计数器具有循环记数功能,各显示数据写入后 Y 地址自动加1, Y地址指针从0 到63。
6)显示数据RAM DDRAM
DDRAM是存储图形显示数据的,数据为1表示显示选择,数据为0表示显示非选择。
7)Z 地址计数器
Z 地址计数器是一个6 位计数器,此计数器具备循环记数功能,用于显示行扫描同步,当一行扫描完成此地址计数器自动加1,指向下一行扫描数据,RST 复位后Z 地址计数器为0。
Z 地址计数器可以用指令DISPLAY START LINE 预置,因此显示屏幕的起始行就由此指令控制,即DDRAM 的数据从哪一行开始显示在屏幕的第一行,此模块的DDRAM 共64 行,屏幕可以循环滚动显示64 行。
3、模块的外部接口
外部接口信号如下表所示
管脚号 管脚名称 LEVER 管脚功能描述
1 VSS 0 电源地
2 VDD 5.0V 电源电压
3 V0 5.0V -13V 液晶显示器驱动电压
4 D/I H/L D/I= H 表示DB7~DB0 为显示数据
D/I= L表示DB7~DB0 为显示指令数据
5 R/W H/L R/W= H E= H 数据被读到DB7~DB0
R/W= L E= H L 数据被写到IR 或DR
6 E H/L R/W= L E 信号下降沿锁存DB7~DB0
R/W= H E= H DDRAM 数据读到DB7~DB0
7 DB0 H/L 数据线
8 DB1 H/L 数据线
9 DB2 H/L 数据线
10 DB3 H/L 数据线
11 DB4 H/L 数据线
12 DB5 H/L 数据线
13 DB6 H/L 数据线
14 DB7 H/L 数据线
15 CS1 H/L H:选择芯片(右半屏)信号
16 CS2 H/L H:选择芯片(左半屏)信号
17 RET H/L 复位信号,低电平复位
18 VEE -10V LCD 驱动负电压
19 EL AC 背光板电源
20 EL AC 背光板电源
4、指令说明
指令表:
1)显示开关控制(DISPLAY ON/OFF)
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | D |
D=1:开显示(DISPLAY ON)意即显示器可以进行各种显示操作
D=0:关显示(DISPLAY OFF)意即不能对显示器可以进行各种显示操作
2)设置显示起始行
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 0 | 1 | 1 | A5 | A4 | A3 | A2 | A1 | A0 |
显示起始行是由Z 地址计数器控制的,A5~A0 的6 位地址自动送入Z 地址计数器起始行的地址可以是0~63 的任意一行。
例如选择A5~A0 是62 则起始行与DDRAM 行的对应关系如下
DDRAM 行 62 63 0 1 2 3 …… 28 29
屏幕显示行 1 2 3 4 5 6 …… 31 32
3)设置页地址
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | A2 | A1 | A0 |
所谓页地址就是DDRAM 的行地址,8 行为一页,模块共64 行即8 页, A2~A0 表示0~7 页读写数据对地址没有影响,页地址由本指令或RST 信号改变复位后页地址为0,页地址与DDRAM 的对应关系见DDRAM 地址表:
4)设置Y 地址(SET Y ADDRESS)
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 0 | 0 | 1 | A5 | A4 | A3 | A2 | A1 | A0 |
此指令的作用是将A5~A0 送入Y 地址计数器,作为DDRAM 的Y 地址指针,在对DDRAM 进行读写操作后,Y地址指针自动加1,指向下一个DDRAM 单元。
DDRAM 地址表:
5)读状态(STATUS READ)
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 0 | BUSY | 0 | ON/OFF | RET | A3 | A2 | A1 | A0 |
当R/W=1 D/I=0 时,在E信号为H 的作用下,状态分别输出到数据总线DB7~DB0的相应位。
ON/OFF 表示DFF 触发器的状态。
RST RST=1 表示内部正在初始化,此时组件不接受任何指令和数据。
6)写显示数据(WRITE DISPLAY DATE)
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 0 | 1 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
D7~D0 为显示数据,此指令把D7~D0 写入相应的DDRAM单元,Y地指针自动加1。
7)读显示数据(READ DISPLAY DATE)
代码 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 |
---|---|---|---|---|---|---|---|---|---|---|
形式 | 1 | 1 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
此指令把DDRAM 的内容D7~D0读到数据总线DB7~DB0,Y地址指针自动加1。
5、显示代码说明
使用代码生成软件,可生成字符、图片及汉字,详见光盘。
实验内容及步骤
1、把液晶模块插到目标板中,单片机最小应用系统 P0口、P1口电阻上拉。单片机最小应用系统的 P0,P1口接液晶单元的P0,P1,J20的两个短路帽打在VCC处。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加“LCD12864.asm”源程序,进行编译,直到编译无误。
4、全速运行程序,液晶显示一幅图片,延时几秒后显示汉字“浙江天煌科技实业有限公司”。
5、也可以把源程序编译成可执行文件,把可执行文件用ISP烧录器烧录到89S52/89S51芯片中运行。(ISP烧录器的使用查看附录二)
源程序
/***************************************************************************
1、把液晶模块插到目标板中,单片机最小应用系统 P0口、P1口电阻上拉。
单片机最小应用系统的 P0,P1口接液晶单元的P0,P1,J20的两个短路帽打在VCC处。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,
请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,
接着添加“LCD12864.asm”源程序,进行编译,直到编译无误。
4、全速运行程序,液晶显示一幅图片,延时几秒后显示汉字
“浙江天煌科技实业有限公司”。
5、也可以把源程序编译成可执行文件,把可执行文件用ISP烧录器烧录
到89S52/89S51芯片中运行。(ISP烧录器的使用查看附录二)
/**************************************************************************/
XPOS EQU 20H ;列方向地址指针(用于LCDPOS子程序)
YPOS EQU 21H ;行方向地址指针(用于LCDPOS子程序)
ww EQU 22H ;数据个数 原来的 CODE 改成了WW 2005.11.07
RSPIN EQU P1.0 ;
RWPIN EQU P1.1 ;
EPIN EQU P1.2 ;
CS1PIN EQU P1.3 ;
CS2PIN EQU P1.4
ORG 0000H
LJMP MAIN
MAIN: MOV SP,#60H
LCALL LCDRESET ;控制器复位!
LOOP: MOV A,#00H
LCALL LCDFILL ;控制器清屏!
MOV DPTR,#TU_TAB ;128*64的图片数据
LCALL DIS_TU ;显示
LCALL DELAY1S ;延时7S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
MOV A,#00H
LCALL LCDFILL ;清屏
LCALL DSPLAYS ;显示浙江天煌
LCALL DELAY1S ;延时8S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LCALL DELAY1S
LJMP LOOP ;大循环
;========================================================================
DELAY1S:
MOV R0,#20 ;延时子程序(400MS)
DL4_PA: MOV R1,#100
DL4_PB: MOV R2,#100
DJNZ R2,$
DJNZ R1,DL4_PB
DJNZ R0,DL4_PA
RET
;=========================================================================
DSPLAYS: MOV DPTR,#HZKDOT ;汉字库首地址
MOV XPOS,#0
MOV YPOS,#2
MOV ww,#0
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS ;第2个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS1 ;第3个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS2 ;第4个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS3 ;第5个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS4 ;第6个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS5 ;第7个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS6 ;第8个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS7 ;第9个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS8 ;第10个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS9 ;第11个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
MOV DPTR,#BBS10 ;第12个汉字
LCALL PUTCHARDOT ;显示一个汉字
LCALL PUTCHARDOT ;
RET
PUTCHARDOT:
MOV R7,#8
PAC_PA:
MOV A,#0
MOVC A,@A+DPTR
CALL LCDWRITE
INC YPOS
INC DPTR
CLR A
MOVC A,@A+DPTR
CALL LCDWRITE
DEC YPOS
INC DPTR
CALL CUSORNEXT
MOV A,XPOS
JNZ PAC_LAX
INC YPOS
PAC_LAX:
DJNZ R7,PAC_PA
RET
;=========================================================================
LCDFILL: ;LCD整屏显示A的内容
MOV R7,A
MOV YPOS,#0
LFL_PB: MOV XPOS,#0
LFL_PA: MOV A,R7
LCALL LCDWRITE ;定位并写数据
LCALL CUSORNEXT ;加行或者列
MOV A,XPOS;列
JNZ LFL_PA ;XPOS<128则循环(128列)
MOV A,YPOS
JNZ LFL_PB;行 ;YPOS<8则循环(8页)
RET
DIS_TU: MOV YPOS,#0 ;从0行开始
LFL_PB1: MOV XPOS,#0 ;从0列开始
LFL_PA1: MOV A,#00h
movc a,@a+dptr
LCALL LCDWRITE ;定位并写数据
LCALL CUSORNEXT ;行或者列加一
INC DPTR
MOV A,XPOS ;
JNZ LFL_PA1 ;XPOS<128则循环(128列)
MOV A,YPOS
JNZ LFL_PB1 ;YPOS<8则循环(8页)
RET
;======================================================================
LCDWRITE: ;定位并写数据子程序
CALL LCDPOS ;内部写数指针定位
CALL LCDWD ;写数据/分左右屏
RET
;======================================================================
CUSORNEXT:
ANL YPOS,#7 ;页码
INC XPOS ;列码
MOV A,XPOS
JNB ACC.7,CNT_LAX ;小于128
MOV XPOS,#0 ;清列码
INC YPOS ;加一行
MOV A,YPOS
ANL A,#0F8H ;大于8则结束
JZ CNT_LAX
MOV YPOS,#0
CNT_LAX:
RET
;======================================================================
LCDPOS: ;内部写数指针定位子程序
PUSH ACC ;保存要写的数据
MOV A,XPOS ;列数据
JB ACC.6,LPS_LAY ;列大于64则跳转
MOV A,YPOS ;XPOS列方向小于64则对CS1操作
ANL A,#07H ;页码
ADD A,#0B8H ;固定码,芯片要求的
LCALL LCDWC1 ;设页码,在第几行?
MOV A,XPOS
ANL A,#3FH ;小于63
ORL A,#40H ;固定码,见说明书
CALL LCDWC1 ;设列码
JMP LPS_LAX
LPS_LAY:MOV A,YPOS ;XPOS列方向大于等于64则对CS2操作
ANL A,#07H
ADD A,#0B8H
CALL LCDWC2 ;设页码
MOV A,XPOS
ANL A,#3FH
ORL A,#40H
CALL LCDWC2 ;设列码
LPS_LAX:POP ACC
RET
;========================================================================
LCDWD: ;送数据子程序
MOV B,A
MOV A,XPOS
JB ACC.6,LWD_LAY
MOV A,B ;XPOS列方向小于64则对CS1操作
CALL LCDWD1
JMP LWD_LAX
LWD_LAY:MOV A,B ;XPOS列方向大于等于64则对CS2操作
CALL LCDWD2
LWD_LAX:
RET
;==========================================
LCDRESET: ;LCD控制器复位
MOV A,#3FH ;打开LCD显示
CALL LCDWC1
CALL LCDWC2
MOV A,#0C0H ;设显示起始行
CALL LCDWC1
CALL LCDWC2
RET
LCDWC1: ;送片1控制字子程序
CALL WAITIDLE1 ;判断液晶是否忙?
MOV P0,A
CLR RSPIN ;RS=0 RW=0 CS1=1 E=高脉冲
CLR RWPIN
SETB CS1PIN
SETB EPIN
NOP
CLR EPIN
CLR CS1PIN
RET
LCDWC2: ;送片2控制字子程序
CALL WAITIDLE2
MOV P0,A
CLR RSPIN ;RS=0 RW=0 CS2=1 E=高脉冲
CLR RWPIN
SETB CS2PIN
SETB EPIN
NOP
CLR EPIN
CLR CS2PIN
RET
LCDWD1: ;片1写数据子程序
CALL WAITIDLE1
MOV P0,A
SETB RSPIN ;RS=1 RW=0 CS1=1 E=高脉冲
CLR RWPIN
SETB CS1PIN
SETB EPIN
NOP
CLR EPIN
CLR CS1PIN
RET
LCDWD2: ;片2写数据子程序
CALL WAITIDLE2
MOV P0,A
SETB RSPIN ;RS=1 RW=0 CS2=1 E=高脉冲
CLR RWPIN
SETB CS2PIN
SETB EPIN
NOP
CLR EPIN
CLR CS2PIN
RET
LCDRD1: ;片1读数据子程序
CALL WAITIDLE1
MOV P0,#0FFH
SETB RSPIN ;RS=1 RW=1 CS1=1 E=高电平
SETB RWPIN
SETB CS1PIN
SETB EPIN
NOP
MOV A,P0
CLR EPIN
CLR CS1PIN
RET
LCDRD2: ;片2读数据子程序
CALL WAITIDLE2
MOV P0,#0FFH
SETB RSPIN ;RS=1 RW=1 CS1=2 E=高电平
SETB RWPIN
SETB CS2PIN
SETB EPIN
NOP
MOV A,P0
CLR EPIN
CLR CS2PIN
RET
WAITIDLE1: ;
MOV P0,#0FFH
CLR RSPIN ;RS=0 RW=1 CS1=1 E=高电平
SETB RWPIN
SETB CS1PIN
SETB EPIN
WT1_PA: NOP
JB P0.7,WT1_PA
CLR EPIN
CLR CS1PIN
RET
WAITIDLE2:
CLR RSPIN ;RS=0 RW=1 CS2=1 E=高电平
SETB RWPIN
SETB CS2PIN
SETB EPIN
WT2_PA: NOP
JB P0.7,WT2_PA
CLR EPIN
CLR CS2PIN
RET
tu_tab:
;-- 调入了一幅图像:C:\My Documents\sc12864a.bmp --注意:把DB最后一行的 ,号去掉了 也把
;CODE 改成了 WW 2005 11.7
;- - 宽度x高度=128x64 --
DB 00h,00h,10h,12h,12h,12h,92h,0FEh,0FEh,92h,12h,13h,13h,12h,10h,00h
DB 38h,38h,0FFh,0FFh,98h,0BEh,0BEh,0ABh,0ABh,0AAh,0BEh,0BEh,80h,00h,10h,92h
DB 0D2h,0FEh,0FFh,0D1h,0B4h,6Ch,48h,0FFh,0FFh,80h,80h,00h,88h,0C8h,0FFh,0FFh
DB 28h,08h,0E8h,0E8h,3Fh,3Fh,0E8h,0E8h,08h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,88h,0C8h,0FFh,0FFh,28h,08h,0E8h,0E8h,3Fh,3Fh,0E8h
DB 0E8h,08h,00h,00h,08h,08h,88h,0C8h,68h,0FFh,0FFh,0CAh,8Eh,0Ch,08h,08h
DB 00h,40h,50h,5Eh,4Eh,0C8h,0C8h,7Fh,0FFh,0C8h,4Ch,4Ch,48h,40h,00h,58h
DB 5Fh,0F7h,0F4h,54h,7Ch,7Fh,0FFh,0EAh,5Eh,76h,62h,20h,00h,00h,00h,00h
DB 00h,00h,08h,08h,0Ch,06h,03h,01h,00h,01h,03h,06h,0Ch,08h,08h,00h
DB 08h,0Eh,07h,03h,0Eh,0Eh,0Ah,0Fh,0Fh,0Ah,0Ah,0Ah,08h,00h,01h,01h
DB 00h,0Fh,0Fh,01h,01h,01h,01h,0Fh,0Fh,00h,00h,00h,00h,08h,0Fh,0Fh
DB 08h,08h,08h,0Dh,07h,07h,0Dh,08h,08h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,08h,0Fh,0Fh,08h,08h,08h,0Dh,07h,07h,0Dh
DB 08h,08h,00h,02h,02h,03h,01h,00h,00h,0Fh,0Fh,00h,01h,03h,02h,02h
DB 00h,08h,08h,0Ch,06h,03h,01h,00h,07h,0Fh,08h,08h,0Eh,0Eh,00h,00h
DB 00h,07h,07h,06h,05h,05h,0Fh,0Fh,05h,05h,05h,04h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,0C0h,0F0h,0F8h,0F8h,0FCh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,0FEh,0FEh,0FCh,0F8h,0F8h,0F0h,0C0h,00h,00h,00h,00h,00h,00h
DB 00h,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh,0FEh
DB 0FEh,0FEh,0FEh,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,03h,0Fh,1Fh,1Fh,3Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,7Fh,7Fh,3Fh,1Fh,1Fh,0Fh,03h,00h,00h,00h,00h,00h,00h
DB 00h,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh,7Fh
DB 7Fh,7Fh,7Fh,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 40h,0C0h,0C0h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,40h,0C0h,0C0h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,40h,40h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,80h,0C0h,40h
DB 0C0h,0C0h,80h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,40h,0C0h,0C0h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 10h,1Fh,1Fh,1Fh,1Bh,11h,00h,0Ah,1Fh,15h,1Fh,1Eh,10h,00h,11h,1Fh
DB 1Fh,11h,1Fh,1Eh,10h,00h,3Fh,3Fh,37h,37h,31h,00h,10h,1Fh,1Fh,11h
DB 1Fh,1Eh,10h,0Ah,1Fh,15h,1Fh,1Eh,10h,00h,00h,11h,1Fh,1Fh,10h,00h
DB 00h,21h,33h,3Fh,0Fh,03h,01h,00h,0Eh,1Fh,11h,11h,1Fh,0Eh,00h,11h
DB 1Fh,1Fh,11h,1Fh,1Eh,10h,00h,3Fh,3Fh,37h,37h,31h,00h,0Fh,1Fh,17h
DB 17h,1Fh,0Fh,00h,00h,13h,17h,15h,1Dh,19h,00h,0Eh,1Fh,11h,11h,1Fh
DB 0Eh,00h,10h,1Fh,1Fh,11h,1Fh,1Eh,10h,01h,0Fh,1Fh,11h,1Fh,1Fh,10h
DB 00h,10h,00h,1Fh,11h,11h,00h,0Eh,11h,0Eh,00h,1Fh,02h,04h,02h,1Fh
DB 00h,60h,60h,0E0h,0E0h,60h,60h,00h,20h,0E0h,0E0h,20h,20h,60h,60h,00h
DB 20h,0E0h,0E0h,20h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
DB 00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h,00h,0E0h,0E0h,20h,20h,20h,20h,00h
DB 00h,60h,60h,20h,0E0h,0E0h,20h,00h,00h,00h,40h,0E0h,0E0h,00h,00h,00h
DB 00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h,00h,0E0h,0E0h,20h,20h,20h,20h,00h
DB 00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h,00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h
DB 00h,00h,40h,0E0h,0E0h,00h,00h,00h,00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h
DB 00h,80h,0C0h,60h,20h,60h,60h,00h,00h,0C0h,0E0h,20h,20h,0E0h,0C0h,00h
DB 00h,00h,20h,3Fh,3Fh,20h,00h,00h,20h,3Fh,3Fh,22h,27h,37h,30h,00h
DB 20h,3Fh,3Fh,20h,20h,30h,30h,00h,00h,00h,33h,33h,33h,00h,00h,00h
DB 00h,1Fh,3Fh,20h,20h,3Fh,1Fh,00h,00h,1Bh,3Bh,21h,21h,3Fh,1Eh,00h
DB 00h,00h,00h,3Eh,3Fh,01h,00h,00h,00h,00h,20h,3Fh,3Fh,20h,00h,00h
DB 00h,1Ch,3Fh,23h,23h,3Fh,1Ch,00h,00h,1Bh,3Bh,21h,21h,3Fh,1Eh,00h
DB 00h,30h,38h,2Ch,26h,23h,21h,00h,00h,30h,38h,2Ch,26h,23h,21h,00h
DB 00h,00h,20h,3Fh,3Fh,20h,00h,00h,00h,30h,38h,2Ch,26h,23h,21h,00h
DB 00h,1Fh,3Fh,23h,21h,3Fh,1Eh,00h,00h,30h,38h,2Ch,26h,23h,21h,00h
HZKDOT:
;浙
DB 10H, 04H, 22H, 04H, 64H,0feH, 0cH, 01H
DB 90H, 42H, 10H, 82H,0ffH, 7fH, 10H, 41H
DB 90H, 20H,0fcH, 1fH, 44H, 00H, 44H, 00H
DB 0c2H,0ffH, 62H, 00H, 40H, 00H, 00H, 00H
BBS:
;江
DB 10H, 04H, 21H, 04H, 62H,0feH, 06H, 01H
DB 80H, 20H, 04H, 20H, 04H, 20H, 04H, 20H
DB 04H, 20H,0fcH, 3fH, 04H, 20H, 04H, 20H
DB 06H, 20H, 04H, 30H, 00H, 20H, 00H, 00H
BBS1:
;天
DB 00H, 00H, 40H, 80H, 42H, 40H, 42H, 20H
DB 42H, 10H, 42H, 08H, 42H, 06H,0feH, 01H
DB 042H, 02H, 42H, 04H, 42H, 08H, 42H, 10H
DB 42H, 30H, 42H,060H, 40H, 20H, 00H, 00H
BBS2:
;煌
DB 80H, 40H, 70H, 20H, 00H, 10H,0ffH, 0fH
DB 10H, 50H, 08H, 61H, 7cH, 49H, 54H, 49H
DB 56H, 49H, 55H, 7fH, 54H, 49H, 54H, 4dH
DB 7eH, 49H, 04H, 61H, 00H, 40H, 00H, 00H
BBS3:
;科
DB 24H, 10H, 24H, 08H, 24H, 06H,0a4H, 01H
DB 0feH,0ffH,0a3H, 00H, 22H, 01H, 00H, 02H
DB 24H, 02H, 48H, 02H, 00H, 02H,0ffH,0ffH
DB 00H, 01H, 80H, 01H, 00H, 01H, 00H, 00H
BBS4:
;技
DB 10H, 04H, 10H, 44H, 10H, 82H,0ffH, 7fH
DB 10H, 01H, 10H, 80H, 88H, 81H, 88H, 46H
DB 88H, 28H,0ffH, 10H, 88H, 28H, 88H, 26H
DB 8cH, 41H, 08H,0c0H, 00H, 40H, 00H, 00H
BBS5:
;实
DB 10H, 02H, 0cH, 82H, 04H, 82H, 44H, 42H
DB 8cH, 42H, 94H, 23H, 35H, 12H, 06H, 0eH
DB 0f4H, 03H, 04H, 0aH, 04H, 12H, 04H, 22H
DB 04H, 42H, 14H,0c3H, 0cH, 02H, 00H, 00H
bbs6:
;业
DB 00H, 40H, 10H, 40H, 60H, 40H, 80H, 47H
DB 00H, 40H,0ffH, 7fH, 00H, 40H, 00H, 40H
DB 00H, 40H,0ffH, 7fH, 00H, 44H, 00H, 43H
DB 0c0H, 40H, 30H, 60H, 00H, 40H, 00H, 00H
bbs7:
;有
DB 000H, 002H,004H,001H,084H,000H,044H,000H
DB 0E4H, 0FFH,034H,009H,02CH,009H,027H,009H
DB 024H, 029H,024H,049H,024H,0C9H,0E4H,07FH
DB 004H, 000H,004H,000H,004H,000H,000H,000H
bbs8:
;限
DB 00H, 00H,0feH,0ffH, 02H, 08H, 22H, 10H
DB 0daH, 08H, 06H, 07H, 00H, 00H,0feH,0ffH
DB 92H, 42H, 92H, 24H, 92H, 08H, 92H, 14H
DB 0ffH, 22H, 02H, 61H, 00H, 20H, 00H, 00H
bbs9:
;公
DB 000H,000H,000H,001H,080H,020H,040H,070H
DB 030H,028H,00EH,024H,084H,023H,000H,031H
DB 000H,010H,00EH,010H,010H,014H,060H,078H
DB 0C0H,030H,080H,001H,080H,000H,000H,000H
bbs10:
;司
DB 10H, 00H, 10H, 00H, 92H, 3fH, 92H, 10H
DB 92H, 10H, 92H, 10H, 92H, 10H, 92H, 10H
DB 0d2H, 3fH, 9aH, 00H, 12H, 40H, 02H, 80H
DB 0ffH, 7fH, 02H, 00H, 00H, 00H, 00H, 00H
rst: ret
END
标签:PUTCHARDOT,MOV,汉字,地址,64,DDRAM,LCALL,128,实验
From: https://www.cnblogs.com/bujidao1128/p/17416550.html