基于FPGA的LCD显示控制系统的毕业设计.docx

上传人:b****5 文档编号:28888950 上传时间:2023-07-20 格式:DOCX 页数:41 大小:1.03MB
下载 相关 举报
基于FPGA的LCD显示控制系统的毕业设计.docx_第1页
第1页 / 共41页
基于FPGA的LCD显示控制系统的毕业设计.docx_第2页
第2页 / 共41页
基于FPGA的LCD显示控制系统的毕业设计.docx_第3页
第3页 / 共41页
基于FPGA的LCD显示控制系统的毕业设计.docx_第4页
第4页 / 共41页
基于FPGA的LCD显示控制系统的毕业设计.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

基于FPGA的LCD显示控制系统的毕业设计.docx

《基于FPGA的LCD显示控制系统的毕业设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的LCD显示控制系统的毕业设计.docx(41页珍藏版)》请在冰豆网上搜索。

基于FPGA的LCD显示控制系统的毕业设计.docx

基于FPGA的LCD显示控制系统的毕业设计

基于FPGA的LCD显示控制系统的毕业设计

第一章绪论

一.3选题的背景与意义

液晶,是一种在一定温度范围内呈现既不同于固态、液态,又不同于气态的特殊物质态,它既具有各向异性的晶体所特有的双折射性,又具有液体的流动性。

一般可分热致液晶和溶致液晶两类。

在显示应用领域,使用的是热致液晶,超出一定温度范围,热致液晶就不再呈现液晶态,温度低了,出现结晶现象,温度升高了,就变成液体;液晶显示器件所标注的存储温度指的就是呈现液晶态的温度范围。

液晶由于它的各向异性而具有的电光效应,尤其扭曲向列效应和超扭曲效应,所以能制成不同类型的显示器件(LiquidCrystalDisplay简称LCD)。

在平板显示器件领域,目前应用较广泛的有液晶(LCD)、电致发光显示(EL)、等离子体(PDP)、发光二极管(LED)、低压荧光显示器件(VFD)等。

 液晶显示器件有以下一些特点①低压微功耗,②平板型结构,③被动显示型(无眩光,不刺激人眼,不会引起眼睛疲劳),④显示信息量大(因为像素可以做得很小),⑤易于彩色化(在色谱上可以非常准确的复现),⑥无电磁辐射(对人体安全,利于信息保密),⑦长寿命(这种器件几乎没有什么劣化问题,因此寿命极长,但是液晶背光寿命有限,不过背光部分可以更换)。

之前,一般流行采用单片机来控制驱动LCD。

采用单片机控制LCD的显示在设计上相对比较简单。

可以通过KEIL等软件的编写方便地控制LCD的图形以及字符的现实。

但是由于单片机的顺序执行结构。

决定了在现实图片或者字符的同时,单片机本身无法处理其他数据或者执行其他的运算命令。

这在某种程度上大大地降低了工作的效率。

而采用FPGA来控制LCD则不存在这个问题。

但是由于FPGA不像单片机,可以直接使用控制语句来方便地控制LCD。

因此需要编写大量的代码来控制LCD。

因为这个原因,采用FPGA的设计一般都会再一次通过单片机来驱动LCD的显示。

本课题主要任务是设计基于FPGA的LCD控制器,兼顾好程序的易用性,以方便之后模块的移植和应用。

最后在FPGA上的任意位置显示任意的16*16D的中文字符以及16*8的英文字符,另外要能根据输入数据的变化同步变化LCD上显示的内容。

同时要能将储存模块中的图片数据正常地显示在LCD上。

该课题的研究将有助于采用FPGA的系列产品的开发,特别是需要用到LCD得采用FPGA的产品的开发。

同时可以大大缩短FPGA的开发时间。

另外,由于模块的易用性,也将使得更多的采用FPGA的产品之上出现LCD,增加人机之间的交互性,为行业和我们的生活带来新的变化。

一.3.1

一.3.2

一.4LCD的控制、应用和市场的发展现状

在技术方面,因集成式的控制芯片具有包括了缩小了IC的体积、低功率消耗、降低封装的成本、节省电路板的数量及体积等优点,并使材料成本及LCD后段组装成本得以降低,因此许多厂商纷纷朝向高集成度控制芯片发展,并积极开发视讯应用的控制芯片。

而最新趋势SmartPanel,在制程上则有简化流程、减少材料成本等优点。

根据相关资料显示,SmartPanel可降低约10%~15%的成本,这也是国外一些大厂所钟爱的方式。

为降低控制IC成本,众多IC厂商纷纷推出集成式的单芯片控制IC。

美国的Genesis最早推出集成式IC,将ADC、Scaler、OSD(内置菜单)与PLL(锁相环)为一颗单芯片控制IC。

接着更进一步集成入DVI组件,形成LCD双模控制IC。

其组件集成数量持续增多,并渐渐添加Video的功能。

当前Genesis最高集成度的产品,集成入的组件已经包括ADC、Scaler、PLL、OSD、TCON与DVI,仅剩Video的功能以及SDRAM的组件尚未集成。

随着市场竞争的加剧,液晶显示器厂商的成本压力越来越大,必须采用更简单的线路设计实现液晶显示器的功能,以期降低成本,才能在市场竞争中立于不败之地。

LCD控制IC必将向高集成度方向发展,以满足市场需要。

而在LCD的应用以及市场方面,虽然手机仍然是中小尺寸液晶显示屏(LCD)的最主要应用设备,但便携导航设备(PND)、数码相框和MP3/便携媒体播放器(PMP)等新型设备,正在该市场的销售额中占有越来越大的份额。

由于这些产品所使用的显示屏大于手机所用的显示屏,因此在供应商的工厂中同样需要更多的面板,这对于LCD面板生产商来说是个绝好的机会。

各种中小尺寸LCD的产能扩张和价格下降,促进了其应用领域的多元化。

这又进一步刺激了需求,并吸引许多其它产品来采用中小型LCD,如白色家电和零售标牌。

大多数行业内的公司认为,为了利用手机市场和新兴产品,中小尺寸显示屏供应商必须相应地平衡和调整策略,否则就可能错失整个市场。

1、导航设备

PND的主要功能是显示GPS信息,因此能否显示详细并准确地图影像非常关键。

这使得许多PND制造商把目光转向了更加精确的小型LCD。

这方面出现的需求促使iSuppli公司把2011年PND显示屏市场的出货量预测提高到了6,050万部。

2006年的出货量为1,080万部,2006-2011年出货量的年复合增长率是41.3%。

iSuppli以前预测2011年出货量是5,400万部。

尽管中小尺寸LCD价格下降,但2011年PND显示屏的营业额将从2006年的3.24亿美元上升到7.76亿美元,年复合增长率为19.1%。

2007年一年,PND显示屏销售额将比2006年的3.24亿美元增长近一倍,达到6.35亿美元。

2、媒体播放器

但PND不是推动中小尺寸显示屏市场繁荣的唯一消费电子产品。

MP3/PMP目前是使此类显示屏出货量增长最快的领域之一。

iSuppli公司预测,2011年底MP3/PMP单位出货量将达到2.05亿,而2007年预计为1.63亿。

这相当于2011年显示屏销售额将达到16亿美元,略低于2007年的17亿美元,这主要是因为中小型LCD价格随着产能扩张和制造工艺改进而不断下降。

推动显示屏单位出货量增长的因素包括:

①消费电子公司苹果和它的iPod产品线,以及距苹果最近的竞争对手紧追不舍,从而推动MP3/PMP市场整体增长。

②MP3音乐播放器变身进入了PMP领域。

有源矩阵LCD供应商正在紧盯这个市场,以防止AMOLED供应商染指。

③因为PMP是消费电子产业中增长最快的领域之一,而且随着更多的产品涌现,将需要更多的LCD来满足需求。

数码相框和便携DVD播放器等其它应用每年需要的显示屏越来越多。

这些应用需要较大的显示屏(约7.0英寸),因此它们的需求增长可能对产能分配和供需平衡造成较大的影响。

一.5课题的主要研究内容和重点、难点

本课题的主要内容是基于FPGA的LCD控制器的设计研究,并兼顾程序的易用性以方便以后模块的移植。

该课题设计到FPGA得应用,LCD驱动的研究,字符以及图像显示模式的研究等知识。

并利用QUARTUSII实现相关模块的设计,在FPGA上实现对LCD的控制,显示任意中文,英文和图像。

本课题研究重点及难点:

1、12864-12的液晶模块指令集较为复杂,采用FPGA设计需要定义的变量和状态将会很多;

2、中英文字符的显示部分程序要考虑到程序的易用性,方便将来移植后的使用;

3、图形显示部分,由于12864-12内部图形显示GDRAM的地址寻址方式的独特性,并不是始终从0到15循环,而是随着行数的增加会做一个移位。

同时LCD屏幕上的点阵也被拆分为上下两个半屏,分别对应Y地址的0-8和9-15这导致了取模后的图形所对应的数组,如若按普通方法则不能正常显示。

一.6课题研究预期目标

本课题研究预期目标主要包括采用FPGA控制LCD在任意位置显示任意中文以及英文字符,和在LCD上显示储存模块中的图像数据。

课题研究预期理论目标:

1、掌握FPGA对LCD的控制方法,为课题研究做好理论准备;

2、通过FPGA对LCD的控制,使得任何开发者都可以较为容易地通过此显示控制模块,在液晶上显示所需的内容。

3、算法实现:

对于12864-12的特殊图形RAM对应LCD的显示方式,采用特定算法,使得取模后的图像所对应的数组,无需经过处理便可以通过FPGA(Filed-ProgrammableGateArray)在LCD上显示。

课题研究预期技术目标:

1、中文及英文字符在LCD上的正常显示;

2、图像数据在LCD上的正常显示;

3、输入变动的数据能在LCD上的同步刷新显示;

第二章系统总体设计

二.3系统设计要求

根据本系统设计要求,使用VHDL语言,利用Altera提供的FPGA/CPLD开发集成环境QuartusⅡ调试开发。

要求能够方便地使用所开发的LCD控制模块,在LCD屏幕上的任意位置显示任意的中文以及英文字符,同时可以根据输入的动态数据进行动态输出,另外在图片显示模式下可以直接将取模后的图片显示在LCD上。

 

二.3.1

二.4系统总体设计框图

系统设计总体框图如图2-1所示,在系统上电后,FPGA将首先对系统进行初始化操作,在初始化操作中最重要的是寄存器的复位,显示开关的控制,功能设置以及对显示屏幕进行清屏。

之后通过显示控制模块对LCD进行显示的控制。

显示控制模块主要负责在LCD显示多行字符时进行换行操作,在用户指定数据在屏幕的指定显示位置时设置该位置所对应的RAM的值,以及在图像显示时进行的ROM地址重映射算法,和对LCD显示区对应RAM进行的写入操作。

其中的数据分别来自中英文字符模块,动态数据模块,以及图像数据模块。

对此模块的设计,主体结构以状态机来实现。

图2-1系统设计总体框图

二.5系统开发资源选用

2.3.1液晶模块选用

FYD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集。

利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4行16×16点阵的汉字,也可完成图形显示。

低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

1、基本特性:

●低电源电压(VDD:

+3.0--+5.5V)

●显示分辨率:

128×64点

●内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)

●内置128个16×8点阵字符

●2MHZ时钟频率

●显示方式:

STN、半透、正显

●驱动方式:

1/32DUTY,1/5BIAS

●视角方向:

6点

●背光方式:

侧部高亮白色LED,功耗仅为普通LED的1/5—1/10

●通讯方式:

串行、并口可选

●内置DC-DC转换电路,无需外加负压

●无需片选信号,简化软件设计

●工作温度:

0℃-+55℃,存储温度:

-20℃-+60℃

2、外观尺寸图:

FYD12864-0402B点阵图形液晶显示模块外观尺寸如图2-2所示:

图2-2FYD12864-0402B点阵图形液晶显示模块外观尺寸图

3、模块接口说明:

串行接口管脚信号,如表2-1所示:

表2-1串行接口管脚信号说明

并行接口,如表2-2所示:

 

表2-2并行接口说明

二.5.1FPGA选用

XC2S50系列开发板是针对FPGA的初、中级学习者设计,帮助用户降低学习成本和加快用户快速进入可编程逻辑器件设计开发领域,提供一个帮助用户快速开始可编程逻辑器件学习之旅的硬件平台。

针对FPGA初、中级学习者设计,该核心板可配合与之配套的实验主板进行相应的实验,也可做为CPLD、FPGA研发的原形。

核心板简单实用、扩展性好,尤其适合前期用户开发验证用。

板上提供ISP接口、并将FPGA的部分引脚引出。

方便用户开发自己的产品,最大限度的为用户节约学习成本和加快学习的速度。

核心板上拥有下面资源:

●FPGA主芯片:

XC2STQ144

●有源晶振:

40MHz

●支持JTAG下载,SlaveSerial下载

●实验用法:

核心板可以作为原型板,用户可以根据自己需要自行扩展。

也可配合EDA实验主板进行可编程逻辑器件的入门学习用。

第三章系统硬件设计

三.3系统设计总体框图

系统设计总体框图如图4-1所示,在系统上电后,FPGA将首先对系统进行初始化操作,在初始化操作中最重要的是寄存器的复位,显示开关的控制,功能设置以及对显示屏幕进行清屏。

之后通过显示控制模块对LCD进行显示的控制。

显示控制模块主要负责在LCD显示多行字符时进行换行操作,在用户指定数据在屏幕的指定显示位置时设置该位置所对应的RAM的值,以及在图像显示时进行的ROM地址重映射算法,和对LCD显示区对应RAM进行的写入操作。

其中的数据分别来自中英文字符模块,动态数据模块,以及图像数据模块。

对此模块的设计,主体结构以状态机来实现,如图3-1所示

图4-1系统设计总体框图

三.4系统硬件资源选用

3.2.1液晶模块选用

本设计选用了带ST7920驱动的LCD12864-12模块来进行设计和调试。

该模块自带字库。

其中,12864-12汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵),128个字符(8X16点阵)几64X256点阵显示RAM(GDRAM)。

三.5

 

第四章系统软件设计

本章首先对该系统的各个模块的设计思路进行描述,并给出框图。

首先介绍了初始化模块的设计,然后介绍了分别针对字符以及图片的写入数据模块。

之后介绍了本设计中最关键的显示控制模块,并列举了详细的设计方法。

最后给出系统设计的整体BlockDiagram。

四.3初始化模块设计

四.3.1LCD模块初始化设计

对12864-12模块的初始化采用状态机的方式,通过资料中给出的12864-12模块的说明,选择所需要的初始化命令,结合特定的时钟频率,对LCD进行初始化。

最终使屏幕清屏,显示区对应RAM复位,LCD的功能则设置为所需要的功能。

其中,字符显示模块的初始化流程图如图4-1所示:

 

图4-1字符初始化流程图

其中直至写数据这一步骤之前都为起始的初始化动作。

与字符显示不同,图片的现实需要使用特殊指令集中的指令,因此需要在功能设定时做出改动。

而同时,在对GDRAM的地址以及内容进行操作时,必须保持绘图显示的关闭状态,因此在初始化时,需要将绘图显示关闭。

但是由于写数据这一指令属于常规指令集,因此在设置完GDRAM地址后,需要重新使用功能设定,将指令集的使用改回常规指令集。

当数据全部写入完毕,则可以通过再次使用特殊指令集,开启图像显示,将GDRAM中的数据显示在屏幕上。

图片显示模块的初始化流程图如图4-2所示:

 

图4-2图片显示初始化流程图

四.3.2时钟模块初始化设计

由LCD初始化的流程图可得大部分指令的执行时间为72us,而清除显示和地址归位则需要4.6ms,为72us的64倍左右,因此需要选择一个合适的时钟来作为ENABLE信号的输入。

时钟电路的设计:

由于FPGA开发板上自带的晶振频率为50MHZ,而所需要的时钟频率则需要小于13.9KHZ,因此需要一个分频器对其进行分频。

这里采用简单的计数器对其进行分频,计数器上限经过计算设为4000.经过分频后的时钟信号频率为12.5KHZ,满足实验需要。

在分频之后由于时钟信号需要同时控制LCD模块以及FPGA的模块,因此需要编写一个程序,使得两者之间同步。

最终的时钟控制模块如图4-3所示:

 

图4-3时钟模块

其中CLOCK_LOGIC模块的设计通过几个触发器来实现,部分程序如下:

componentDFF

port(d:

instd_logic;

clk:

instd_logic;

q:

outstd_logic);

endcomponent;

signalsig1,sig2,sig3:

std_logic;

begin

sig1<=notsig2;

sig3<=notclock;

out_clk<=sig2;

mydff1:

DFFportmap(d=>sig1,clk=>clock,q=>sig2);

mydff2:

DFFportmap(d=>sig2,clk=>sig3,q=>enable);

四.3.3字符显示前初始化模块的设计

1、初始化部分的状态机设计

根据字符模块初始化的流程图如图4-4所示:

图4-4LCD初始化流程图

因此,此部分的状态机设计如下:

whenIDLE=>--空闲状态

ifflag='0'then

state<=CLEAR;

flag<='1';

else

state<=IDLE;

endif;

whenCLEAR=>--清屏状态,使LCD屏幕上显示全白

ifdiv_counter2

state<=CLEAR;--一个0到64的计数器对其进行延迟处理

else

div_counter2<=0;

state<=RETURNCURSOR;

endif;

whenRETURNCURSOR=>--地址归位,使DDRAM地址复位

ifdiv_counter2

state<=RETURNCURSOR;

else

div_counter2<=0;

state<=SETMODE

endif;

whenSETMODE=>--点设置,选择整体画面的移位方式

state<=SWITCHMODE;

whenSWITCHMODE=>--显示状态开

state<=SHIFT;

whenSHIFT=>--控制游标的移动和显示移位

state<=SETFUNCTION;

whenSETFUNCTION=>--功能设置

state<=SETDDRAM1;

whenSETDDRAM1=>--设置DDRAM地址

state<=WRITERAM;

其中,由于时钟信号的周期约为80us,而CLEAR清屏和RETURNCURSOR点设定这两个操作需要4.6ms的操作时间,因此在这两个状态中加入了计数器用以延迟,延迟时间为时钟周期的64倍,约为5.12ms.这样设计可以最大化地提高LCD的响应速度。

2、字符显示的数据选择

●清除显示(对应状态机状态为CLEAR)对应的数据接口的数据(DB7~DB0)为00000001,RS,RW为0;

●地址归位(对应状态机状态为RETURNCURSOR)对应(DB7~DB0)的数据为00000010,RS,RW为0;

●点设定(对应状态机状态为SETMODE)选择整体画面不移位,DDRAM地址+1,因此对应DB7~DB0数据为00000110,RS,RW为0;

●显示状态开(对应状态机状态为SWITHMODE),光标显示关,字符不反白,因此对应DB7~DB0数据为00001100,RS,RW为0;

●游标和显示控制(对应状态机状态为SHIFT)选择AC=AC+1,因此对应DB7~DB0数据为00010100,RS,RW为0;

●功能设定(对应状态机状态为SETFUNCTION)选择8为数据线接口,以及基本指令集动作,因此对应DB7~DB0数据为00110000,RS,RW为0;

●DDRAM(对应状态机状态为SETDDRAM)地址的设定则根据需要设定,对应DB7~DB0数据为10000000~10011111之间,RS为1,RW为0;

另外,根据模块引脚说明,FPGA还需要同时控制其他几个引脚。

其中,为了选择并行的数据发送模式,PSB引脚应为H。

RET引脚则由FPGA控制在经过一段时间的L复位后跳为H。

初始数据的赋值:

psb<='1';

rs<='1'whenstate=WRITERAMorstate=READRAMelse

'0';-- 当状态为读写RAM时,RS为1

rw<='0'whenstate=CLEARorstate=RETURNCURSORorstate=SETMODEorstate=SWITCHMODEorstate=SHIFTorstate=SETFUNCTION

orstate=SETCGRAMorstate=SETDDRAMorstate=WRITERAMelse'1';--当状态为如上时,RW为0

data<="00000001"whenstate=CLEARelse

"00000010"whenstate=RETURNCURSORelse

"00000110"whenstate=SETMODEelse

"00001"&open_display&open_cur&blank_curwhenstate=SWITCHMODEelse

"00010100"whenstate=SHIFTelse

"001"&datawidth8&'0'&exinstruction_off&"00"whenstate=SETFUNCTIONelse

"10000000"whenstate=SETDDRAMelse

……

四.3.4图片显示前初始化模块的设计

1、图片显示初始化的状态机设计

图片显示时需要用到扩充指令集。

在基本指令集设置的时候需要将SETFUNCTION,功能设计,中的RE设为1.而在扩充指令集的功能设定中也要将RE设为1,同时在显示模块写入图片数据时,需要将图片显示关闭,然后转入基本指令集进行数据的写入,直至写入数据完毕再使用扩充指令集,打开图片显示。

因此,其状态机设计与字符显示不同的部分如下:

whenSHIFT=>--游标和显示移位,这一部和字符显示部分一样

state<=SETFUNCTION1;

whenSETFUNCTION1=>--设置8位数据传输方式

state<=SETFUNCTION2;

whenSETFUNCTION2=>--启用特殊指令集

ifflag_p='0'then--这个选择结构用于选择打开或者关闭显示,

state<=DRAWFUNOFF;--默认为关闭显示,只有当图像数据写入完成

else--才会使flag_p等于1,这时打开显示。

state<=DRAWFUNON;

endif;

whenDRAWFUNOFF=>--关闭显示

state<=SETGDRAM;

whenSETGDRAM=>--设置GDRAM起始地址

state<=DRAWFUNR;

whenDRAWFUNR=>--在使用写入数据命令前,必须转会常规指令集

state<=CLEARRAM;--使GDRAM中数据清0

2、图片显示初始化数据的选择

其中与字符显示不同的指

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1