低成本单片机系统的液晶显示器显示技术研究
2014-09-22 来源:dzsc
1.前言
随着电子技术的迅速发展,使得电子电路的设计日趋复杂,单片机因为具有高集成度、高稳定性和成本低廉等特点,因而在电子设计中得到越来越广泛的应用。
第一,使用数码显示管虽然成本低廉,但是显示内容非常有限且单一,不能满足越来越多的显示需求;第二,使用CRT或者彩色液晶显示器可以显示更多的内容,但是存在着设计复杂化、提高设计成本和浪费资源等弊端。因此,实际工作中迫切需要一种简单实用,成本低廉,设计简单的显示其产品。
2.基本原理LC0811-SL由液晶显示器控制器和液晶显示器面板以及发光二极管背光三部分组成。其中液晶显示器显示控制器是整个显示器的核心部分。其内部结构图如图1所示。
2.1 电源
液晶显示器使用5V直流电源,电源供给示意图如图2所示。
2.2 管脚功能定义
LC0811-SL具有16个管脚(PIN),具体功能定义如表1、表2所示。
2.3 寄存器
LCD控制器有2个8位寄存器,指令寄存器(IR)和数据寄存器(DR)。
指令寄存器(IR)是一个只写寄存器,既用于存储指令代码如清显示或者光标移位,又用来存储显示数据RAM(DD RAM)地址或者字符发发生器RAM(CG RAM)地址。
数据寄存器(DR)是一个读写寄存器,用于暂存对DD RAM或CG RAM读/写的数据,数据写入DR是通过一个显示控制器的内部操作自动写入到DD RAM或CG RAM.同时,DR也用来存储从DD RAM或CG RAM读出的数据。当地址信息写入IR,通过一个内部操作从DD RAM或CG RAM读出数据到DR,此时的数据传输完全通过读DR来完成。执行完一个从DR的读操作后,数据保存在DD RAM或CG RAM,下一地址送到DR,为下一个读周期做准备,如表2所示,寄存选择器(RS)信号决定两个寄存器中的哪一个被选中。
2.4 忙标志(BF)
当忙标志位是1(即高)时执行一个内部操作并且下一个指令是不能被接受的。
当RS=0并且执行完一个读操作时,忙标志位输出到DB7,下一个指令只有在忙标志位为0(即低)时才能够被写入。
2.5 地址计数器(AC)
地址计数器分配地址给D D R A M或C GRAM,当一个指令的地址写入IR,地址信息从IR送到AC,这个指令同时决定DD RAM或CGRAM的选择。从DD RAM或CG RAM完成一次读/写操作后,地址计数器(AC)自动减1或者加1,当RS=0并且读操作完成后,AC中的内容输出到DB0DB0~DB7.
2.6 显示数据存储器(DD RAM)
DD RAM用8位字符代码的形式来存储显示数据,容量是80*8或者80字节,DD RAM不用于显示时,可用作通用的数据R A M.
DD RAM地址是用AC来设置并且用16进制表示,这个地址计数器可以通过“Set DD RAMAddress”指令进行写操作,用“Read BusFlag and Address”指令进行读操作。如图3所示,在读/写时,数据位DB0~DB6代表DDRAM地址,DB7为忙标志位。
2.7 字符发生器ROM(CG ROM)
字符发生器ROM(CG ROM)从8位字符代码产生5×7点阵或者5×10点阵字符图形,能够产生等于192种5×7点阵字符图形和32种5×10点阵字符图形。
2.8 字符发生器(CG RAM)
CG RAM是一个64×8位的RAM,可以对其编程自定义字符图形,在5×7点阵下,可以写8种类型的字符图形,在5×10点阵下,可以写4种类型的字符图形。可以使用字符代码00H~07H,从CG RAM写字符程序到DDRAM,不使用CG RAM存储单元时可以用作普通的RAM.
例如:写一个5×7字符图形程序到CGRAM存储单元(如01H)步骤如下:
a)用“Set DD RAM Address”指令置CGRAM指针到字符代码01H的第一行;
b)用“Read Bus Flag and Address”指令写自定义字符的嘴上一行;
c)如果I/D位在“Entry Mode Set”命令中已经置位,CG RAM地址自动增加,然后,再继续回到b),写完字符的所有行;
d)写完所有7行数据,用“Set DD RAMAddress”指令将地址计数器恢复到一个DDRAM存储单元。
e)显示写入的自定义字符,在DD RAM地址里用“Write Data to CG or DD RAM”指令显示01H这个字符。
2.9 控制器
a)LCD控制器具有4位或者8位模式,当使用4位模式时,数据传送使用数据位D B 4~D B 7进行两个4位操作,DB0~DB3不使用,在时令周期完成之前, 数据传送两次, 先传送高四位(DB4~DB7的数据,假设接口数据是8位字长),然后传送低四位(DB0~DB3的数据,假设接口数据是8位字长),4 位数据传送完成后, 检查忙标志(BF),两个四位操作后接着传送忙标志位和地址计数器的数据;b)当使用8位模式时,数据传送使用完整的8位散居据总线DB0~DB7.
2.10 初始化
2.10.1 复位电路初始化
打开电源,显示器可以通过内部电路进行初始化,进入初始化后,可以开始执行指令,直到初始化结束忙标志)(BF)位保持忙状态,VCC电压升高到4.5V后,忙标志(BF)保持10ms有效。
1)清显示
2)功能设置
DL=1:8位接口操作
N=0:一行显示
F=0:5×7点阵字符显示
3)显示开/关控制
D=0:显示关
C=0:光标关
B=0:闪烁关
4)入口模式设置
I/D=0:+1(增量模式)
S=0:不显示移位操作
如果内部电源可提供的复位时间不能满足(0.1ms
2.10.2 软件初始化
软件初始化一般在内部电路不能满足条件,无法正常初始化的情况下使用,软件初始化流程如图3所示。
3.应用实例
单片机系统通过数据总线直接与显示器进行连接,可以很方便的组成单片机显示系统,基本原理图如图4所示。
这是一个典型的单片机显示系统电路,具有较强的通用性,可以广泛的应用于电子工程设计中。考虑到使用上的方便快捷和通用性,可以把单片机系统和显示器的接口用标准接插件进行扩展,单片机系统部分采用插座XS1,液晶显示器部分使用插头XP1.这样,使系统的通用性和简捷性得到加强。
4.结语
由于它本身具有比较完善的字符显示能力,可以显示大量字符图形,突破了普通数码显示管只能显示数字和简单英文的局限性,能充分满足单片机系统的数据信息的显示。实际使用中,LC0811-SL液晶显示器能够为单片机系统提供良好的人机界面。