APP下载

基于FPGA和VHDL的LCD控制器设计

2012-07-25徐宏祥亓爱国尹冀波张春宇

微处理机 2012年3期
关键词:液晶显示液晶时序

徐宏祥,亓爱国,尹冀波,耿 爽,张春宇

(中国电子科技集团公司第四十七研究所,沈阳110032)

1 引言

液晶显示器(LCD)由于具有低压、微功耗、显示信息量大、体积小等特点,在移动通信终端、便携计算机、GPS卫星定位系统等领域有广泛用途,成为使用量最大的显示器件。液晶显示控制器作为液晶驱动电路的核心部件通常由集成电路组成,通过为液晶显示系统提供时序信号和显示数据来实现液晶显示。本设计是一种基于FPGA(现场可编程门阵列)的液晶显示控制器。与集成电路控制器相比,FPGA更加灵活,可以针对不同的液晶显示模块更改时序信号和显示数据。FPGA的集成度、复杂度和面积优势使得其日益成为一种颇具吸引力的高性价比ASIC替代方案。为此提出了将液晶显示器的控制转换到FPGA来完成的设计理念,利用VHDL硬件描述语言设计LCD控制器,实现了替代专用集成电路驱动控制LCD的作用。

2 硬件设计

设计主要以Xilinx公司的Spartan-3E系列FPGA芯片XC3S100E和广东金鹏电子公司的OCMJ4×8C液晶图文显示器为主要器件来完成。FPGA的结构与传统门阵列相似。器件中大量的可编程逻辑块(CLB,Configurable Logic Block)在芯片中央按矩阵排列,芯片四周为可编程输入/输出块(IOB,Input/Output Block),CLB行列之间及CLB和IOB之间具有可编程的互连资源(ICR,Inter Connect Resource)。CLB、IOB和ICR都由分布在芯片中的SRAM静态存储单元来控制,SRAM中的数据可决定FPGA的功能。这些数据可以在系统加电时自动或由命令控制从外部存储器载入。本设计实现的LCD控制器硬件结构框图如图1所示。

图1 LCD 控制器硬件结构框图

3 OCMJ4×8C液晶图文显示器

采用了广东金鹏电子公司的OCMJ4×8C液晶图文显示器。OCMJ4×8C模块内含GB 2312 16×16点阵国标一级简体汉字和ASCII 8×8点阵英文字库,输入区位码或ASCII码即可实现文本显示。它同时为用户提供位点阵和字节点阵两种图形显示功能,用户可以在指定的屏幕位置上以位为单位或以字节为单位进行图形显示。OCMJ4×8C模块显示屏幕点阵为128×64,每行可显示8个汉字或16个字符,其屏幕显示坐标关系如图2所示。其中,汉字坐标X=02H至09H,Y=00至03,ASCII码坐标X=04H至13H,Y=00至03。

图2 OCMJ4×8液晶显示器屏幕显示坐标关系

OCMJ4×8C液晶显示模块引脚功能说明如表1所示。

表1 OCMJ4×8C液晶显示模块引脚功能说明

LEDA/LEDK为背光源引脚,由用户接上相应的电阻调整LCD背光亮度,电阻阻值一般在10~30Ω之间。

4 液晶控制逻辑电路设计

液晶显示的控制逻辑可由FPGA产生,主要包括初始化模块、时钟模块、写数据模块以及读/写控制等几部分。

4.1 初始化模块

液晶在上电过程中,一般都需要用软件来初始化。在整个初始化过程中,数据都被送入到指令寄存器中。由于液晶的指令和数据线是公用的(可利用RS引脚来进行选择,高电平选择数据寄存器,低电平选择指令寄存器)。所以,初始化时应该将RS置为低电平。下面是OCMJ4×8C液晶显示模块的初始化流程:

(1)上电完成以后,进行功能设置,送数据“00110000”,延时2ms;

(2)关闭液晶显示,送数据“00001000”,延时2ms;

(3)打开液晶显示,送数据“00001100”,延时2ms;

(4)清屏,送数据“00000001”,延时2ms;(5)设定输入方式,送数据“00000110”。

这样,对液晶的初始化便宣告完成。下面是其部分VHDL程序:

4.2 写数据模块

液晶初始化完成以后,便可以写入数据。写入数据时,首先要选择数据寄存器,其次是送入要写数据的地址,最后再送入数据。由于数据是在使能信号E上升沿的时候送入,但是在使能信号E下降沿的时候才执行,所以,送完地址以后要在确定使能信号E为下降沿以后,才能继续送入数据。否则,数据就会被冲掉。数据写入的工作时序如图3所示。

图3 写数据时序

写数据过程的部分VHDL程序如下:

5 结束语

利用硬件描述语言VHDL设计LCD控制器的方法,具有减小电路板尺寸、易于集成到片上系统、缩小系统体积、方便修改、适应不同液晶显示器等特点,具有很好的可重用性;同时也是后续开发其他种类液晶显示控制器的基础。

在Xilinx的FPGA应用开发系统中,已经成功地利用本设计完成了系统中所需要的LCD显示功能。实际使用证明,本设计为嵌入式应用系统的人机界面中的LCD控制驱动与接口设计提供了一种可靠而实用的方案。表明该液晶显示控制器成功地替代了传统的ASIC液晶控制器,具有良好的应用前景。

[1] 潘松,黄继业.EDA技术实用教程[M].北京:科学出版社,2002.

[2] 刘乾,陈劲操.OCMJ液晶显示器的接口设计与应用[J].现代电子技术,2002(8):31-32.

[3] 徐志军,徐光辉.CPLD/FPGA的开发与应用[M].北京:电子工业出版社,2002.

[4] 江明,张辉,刘向宇.基于FPGA的LCD控制器设计与实现[J].电子元器件应用,2007,9(2):37-38.

[5] 韩伟,谢憬,毛志刚.基于FPGA的多功能LCD控制器的设计与实现[J].信息技术,2008(6):58-61.

猜你喜欢

液晶显示液晶时序
清明
不可压液晶方程组的Serrin解
《液晶与显示》征稿简则
基于不同建设时序的地铁互联互通方案分析
基于TRIZ理论液晶显示模块开发板的创新设计
基于FPGA 的时序信号光纤传输系统
基于ARM的雷达整车智能配电系统显控管理模块的设计与实现
基于模体演化的时序链路预测方法
122×32 点阵液晶显示汉字原理实验
液晶与显示2015年第30卷第1期 目录