12864液晶编程以及PROTUES仿真Word文档下载推荐.docx
- 文档编号:15086185
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:13
- 大小:610.27KB
12864液晶编程以及PROTUES仿真Word文档下载推荐.docx
《12864液晶编程以及PROTUES仿真Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《12864液晶编程以及PROTUES仿真Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。
逻辑电源地
4
VCC
5.0V
逻辑电源正
5
V0
LCD驱动电压,应用时在VEE与V0之间加一2K可调电阻
6
RS
数据\指令选择:
高电平:
数据D0-D7将送入显示RAM;
低电平:
数据D0-D7将送入指令寄存器执行
7
R/W
读\写选择:
高电平:
读数据;
写数据
8
E
读写使能,高电平有效,下降沿锁定数据
9
DB0
数据输入输出引脚
10
DB1
11
DB2
12
DB3
13
DB4
14
DB5
15
DB6
16
DB7
17
RST
L
复位信号,低电平有效
18
VOUT
-10V
LCD驱动电源
2.指令描述
(1)显示开/关设置
H
CODE:
R/WRSDB7DB6DB5DB4DB3DB2DB1DB0
功能:
设置屏幕显示开/关。
DB0=H,开显示;
DB0=L,关显示。
不影响显示RAM(DDRAM)中的内容。
(2)设置显示起始行
R/WRSDB7DB6DB5DB4DB3DB2DB1DB0
行地址(0~63)
功能:
执行该命令后,所设置的行将显示在屏幕的第一行。
显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。
Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。
(3)设置页地址
页地址(0~7)
执行本指令后,下面的读写操作将在指定页内,直到重新设置。
地址就是DDRAM的行地址,页地址存储在X地址计数器中,A2-A0可表示8页,读写数据对页地址没有影响,除本指令可改变页地址外,复位信号(RST)可把页地址计数器内容清零。
DDRAM地址映像表如表3.2所示。
表3.2RAM地址映像表
Y地址
0
1
2
………
61
62
63
DB0
∫PAGE0
DB7
X=0
∫PAGE1
X=1
………………
……
∫PAGE6
X=6
∫PAGE7
X=7
(4)设置列地址
列地址(0~63)
DDRAM的列地址存储在Y地址计数器中,读写数据对列地址有影响在对DDRAM进行读写操作后,Y地址自动加一。
(5)状态检测
BF
ON/OFF
RST
读忙信号标志位(BF)、复位标志位(RST)以及显示状态位(ON/OFF)。
BF=H:
内部正在执行操作;
BF=L:
空闲状态。
RST=H:
正处于复位初始化状态;
RST=L:
正常状态。
ON/OFF=H:
表示显示关闭;
ON/OFF=L:
表示显示开。
(6)写显示数据
L
D7
D6
D5
D4
D3
D2
D1
D0
写数据到DDRAM,DDRAM是存储图形显示数据的,写指令执行后Y地址计数器自动加1。
D7-D0位数据为1表示显示,数据为0表示不显示。
写数据到DDRAM前,要先执行“设置页地址”及“设置列地址”命令。
(7)读显示数据
R/WRSDB7DB6DB5DB4DB3DB2DB1DB0
基本操作时序:
①读状态:
输入:
RS=L,R/W=H,CS1或CS2=H,E=H
输出:
D0~D7=状态字
②写指令:
RS=L,R/W=L,D0~D7=指令码,CS1或CS2=H,E=高脉冲
无
③读数据:
RS=H,R/W=H,CS1或CS2=H,E=H
D0~D7=数据
④写数据:
RS=H,R/W=L,D0~D7=数据,CS1或CS2=H,E=高脉冲
由RAM地址映射表可知LCD显示屏由两片控制器控制,分别用CS1和CS2控制。
每个内部带有64X64位(512字节)的RAM缓冲区,对应关系如图3-2所示。
图3-2LCD地址映射图
整个屏幕分左、右两个屏,每个半屏右8页,每页有8行,注意数据是竖行排列,如表3.2。
显示一个字要16*16点,全屏有128*64个点,故可显示32个中文汉字。
每两页显示一行汉字,可显示4行汉字,每行8个汉字,共32个汉字。
而显示数据需要16*8个点,可显示数据是汉字的两陪。
屏幕是通过CS1、CS2两信号来控制的,不同的组合方式所选的屏幕是不同的,对应关系如表3.3所示。
表3.3屏幕选择表
CS1
CS2
选屏
0
全屏
1
左屏
右屏
不选
(8)操作
设定开始页地址和列地址;
设定读写模式,进行读写操作。
只有理解了液晶显示器各个指令【4】的功能,再结合单片机的指令系统,就能编写C语言程序来达到混合显示汉字与数字的目的。
通过程序将字的代码写入相应的DDRAM地址,就可以再相应的位置显示相应的字。
3.汉字字模提取
液晶显示器件(LCD)独具的低压、微功耗特性使他在单片机系统中特得到了广泛的应用,常用的液晶显示模块分为数显液晶模块、点阵字符液晶模块和点阵图形液晶模块,其中图形液晶模块在我国应用较为广泛,因为汉字不能象西文字符那样用字符模块即可显示,要想显示汉字必须用图形模块。
液晶模块显示汉字方法:
使用图形液晶模块以点阵形式来显示汉字和图形,每8个点组成1个字节,每个点用一个二进制位表示,存1的点显示时在屏上显示一个亮点,存0的点则在屏上不显示,最常用的16×
16的汉字点阵由32个字节组成。
以在我国应用较为普及的液晶显示驱动控制器12864为例,在液晶屏上竖向8个点为1个字节数据,通过字模提取软件按照先左后右,先上后下的方式对汉字进行字模提取。
图3-3字提取方格
由于D0-D7是从上到下排列的,最上面8行是上一页,我们先提取上面一页的数据16个,在按照相同的方法提取下一页的数据16个,在分别写入对应的DDRAM地址,就可以显示我们所需要的字。
简单的字可手工制作,也可以用起模软件zimo221【5】提取标准的宋体汉字,不过本文所用的液晶显示屏用这款软件要设计纵向取模并且要反字节,否则将显示乱码。
数字只需起汉字的一半数据就可以了,如图3-3所示的左边8列或者右边8列。
下面是仿真程序:
仿真效果显示:
字模软件取字方法:
字模软件设置如下图所示;
下面是仿真代码:
;
*******************************************
12864液晶控制显示
刘东福
org0000h
ljmpstart
org0030h
start:
d_portequp1;
设置接口定义
cs1equp2.4;
cs2equp2.3;
eequp2.0;
rwequp2.1;
rsequp2.2;
rstequp2.5;
main:
clrp2.5
lcalldl
setbp2.5
main1:
***********************************
clrcs1;
//////开左片
clrcs2;
////开右边
mova,#3fh;
/////开显示器
lcallwrzhiling
mova,#0c0h;
设///置起始行
mova,#0b8h;
设置/页地址
mova,#40h;
设置页地址
************************************
main2:
movdptr,#tab
movr5,#00h;
送字的偏移地址。
movr4,#30h;
字的上半部分循环送初值
main3:
;
显示字的上半部分
mova,r5
movca,@a+dptr
lcallwrdata
incr5
djnzr4,main3
********************************************
为字的下半部分设置列地址与页地址
mova,#0b9h;
字的下半部分循环送初值。
*********************
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 12864 液晶 编程 以及 PROTUES 仿真