《FPGA的点阵式液晶显示控制模块的设计方案(自动保存的)》由会员分享,可在线阅读,更多相关《FPGA的点阵式液晶显示控制模块的设计方案(自动保存的)(19页珍藏版)》请在金锄头文库上搜索。
1、摘要:随着人们生活水平的提高, 对显示器的要求也随之提高了。 液晶作为 一种新兴的显示器,以其节电、低辐射、体积小、散热小等优点,迅速成为最受 欢迎的显示器之一。 并且它不仅能把想要知道的数据以数字形式表示出来, 它甚 至可以很直观方便的以汉字与图表的形式表示出来,后者的功能是一般的七段 LED数码管所不能实现的。而且液晶显示器是纯数字设备因此与此连接的设备也 是数字的,从而可以减少在数模转换过程中的信号损失和干扰, 其次不需要进行 时钟频率、向量的调整。而基于 FPGA空制的液晶显示器以其快速性和稳定性的 优势受到了越来越多的研究。本设计我们采用的液晶的型号是 GDM1286,4 在理解其显
2、示原理和引脚结构 的基础上, 把该液晶分为 8页,这样可以只用其中的一部分来进行显示。 我们主 要设计的是显示模块部分的编程, 为了简化设计, 把该部分分为控制显示程序和 字库的调用模块。字库对于编写控制模块的程序,我们要用到 Quartus II 软件 来编译和仿真程序。 Quartus II 软件自带的仿真器支持波形文件作为激励。关键字:液晶 FPGA Quartus II 控制一引言1.1 课题的来源、意义近年来越来越多的设备上都是用液晶进行显示的, 它与传统的CRT显示器相 比最大的优点就是耗电更量低并且体积更小。一般说来,液晶的耗电量还不到 CRT显示器的一半,而体积还不到后者的 1
3、/4。而相比较于LED数码管,它可以 显示的信息要更丰富。我们都知道,LED数码管只能显示数字,这对于普通设备 上的简单显示也就足够了, 但对于稍微复杂的字母汉字以及图像的显示, 就完全 不能和液晶显示器相比了。 所以单从人机交互的方面考虑, 液晶无疑是最理想的, 从而液晶显示器成为了现在工业仪表和工业控制等领域的主流显示器。由于用普通的原理图方式来设计和管理包含上万甚至几十万、 上百万个晶体 管的集成电路是十分复杂甚至不可能实现的,而这正是 FPGA芯片的优点所在。 而且近几年用综合工具把可综合风格的 HDL 模块转换成具体电路发展非常迅速, 大大提高了复杂数字系统的设计生产率。 所以FPG
4、A产品已经从最初的通信行业 扩展到消费电子、军事航天、汽车电子等行业。而传统的用于控制液晶显示的单片机或DSP由于运算速度方面不是令人 满意,显示显示效果并不理想。研究人员因而把目标转移到FPGA芯片上来。1.2 课题的研究意义和发展现状1.2.1 课题的研究意义现代计算机与通信系统的电子设备中广泛使用了数字信号处理的专用集成 电路。它们主要用于数字信号的传输所必须的滤波、变换、编码、解码、加密、 解密、校验、压缩、解压等,对于处理这些以大量的数学运算为基础的处理,传 统的 C、Pascal 、Fortran 、Basic 语言或汇编语言这几种常用的编程语言都可以。 如果只研究算法,只在通用的
5、计算机上运行程序或利用通用的 CPU来设计专用的 微处理器嵌入系统,掌握上述语言就足够了。如果需要设计和制造能进行快速计算的硬件逻辑专用电路, 必须学习数字电 路的基本知识和硬件描述语言。因为现代复杂数字逻辑系统的设计都是借助于 EDA工具完成的,无论电路系统的仿真和综合都需要掌握硬件描述语言。近年来数字信号处理(DSP系统的研究人员一直在致力于研究出更快的算 法来实现对信号的即时处理。 当产生比较可靠的算法后, 就通过各种编程语言及 仿真软件来仿真实现。 但随着信息技术的快速发展以及人们对设备的智能化、 微 型化、低功耗方面的要求的提高, 很多工程项目都要求系统的实时响应。 所以我 们的处理
6、系统在接受到信号后必须在毫秒甚至微秒级的时间内处理完成并送到 的相应的输出模块中。 这时通用的微处理器或专用与信号处理的微处理器显然是 无法实现的。对于这些复杂的运算,只能用专用的高速硬线逻辑电路即 FPGA器件来实现。 在FPGA勺高速大规模集成电路的基础上实现对数字信号的实时处理。而现代专 用集成电路的设计是通过电子设计自动化(EDA工具实现的。1.2.2 课题的发展前景FPG柯以用硬件描述语言(HDL的程序设计硬件,其好处主要体现在:理 解容易,电路的调试速度快,维护简单,有很多易于掌握的仿真、综合和布局布 线工具,还有可以用C语言配合HDL来做逻辑设计的布线前后的仿真并验证功能 是否正
7、确。CPLD能完成任何数字器件的功能。上至高性能 CPU下至简单的74系列电 路,都可用CPLD实现。这些器件如同一张白纸或是一堆积木,可以通过原理图 或硬件描述语言自由设计一个数字系统。 再通过 QuartusII 等软件仿真, 还可以 事先验证设计的正确性。在完成PCB以后,还可以利用在线修改能力,随时修改 设计而不必改动硬件电路。使用CPLD器件,可以大大缩短设计时间,支持可重复擦写,减少PCB面积, 提高系统的可靠性。PLD的这些优点使得它在90年代后得到飞速发展。二 点阵式液晶显示控制模块的原理介绍2.1 点阵式液晶显示控制模块基本原理2.1.1 显示控制模块的基本原理该模块通过对F
8、PGA芯片编程,并通过调用显示ROM文件中的字库,把相应的二进制 显示代码逐条送到显示驱动电路,再经放大后送到点阵式液晶显示出来。2.1.2显示控制模块的原理框图我们根据2.1 .1对点阵式液晶显示控制模块的描述,设计如图2 1的原理框图。 显示驱动控制器FPGA控制信号显示数据控制信号显示 驱动 电路驱动时序显示数据显示数据液晶显示控制模Ga是用来做主控制芯片的图2 -1I显示液 晶(LCD微控制器。显示RO图中FP M中包含有要显示的字库或图形的代码,Li I -调用其二进制代码,别独立的部分,所以对于相同的FPrGA控制程序,配置只需改变要显示的ROM中fgA就是通过显示控制电路查询并
9、送到点阵式液晶进行显示。 显示Rom与fpga是两个分的字库就可以改变显示内容,而不必对fpGa做另外的修改。通过这种方式控制设计的硬件的好处在于易于理解、易于维护、调试电路速度快、有很多易于掌握的仿真、综合和布局布线工具,还可以用C语言配合HDL来做逻辑设计的布线前和布线后仿真并验证功能是否正确。2.2系统硬件介绍2.2.1 GDM 12864图形点阵式液晶的介绍一、GDM 12864的硬件组成VEEDB0DB7RETD/I,R/WCS2CS1图I 2 C 点 如止面图2 121阵弍液晶主要験示,是GIC1和I&2分别为左半个和右半个2864的工作时序成原理图12864的原理图。其中I 的列
10、驱动器。DM件/IC3为行驱动器,、GDRR64EIC3ADDRESS12(LCD3X 64PANELDOTSKINN64+1N+2BusyWireBusyRead dataBusyRead dataDB0-DB7Checkaddresscheckaddress Ncheckaddress N+1Output registerAddress N Address N+1图2-3 GDM12864 引脚时序图输入输出缓冲寄存器( I/O )输入缓冲控制器控制决定芯片是否可用。 如果CS1和CS2是上升沿,输入 或输出数据不会动作,因此内部数据不变。但是 RSTE和ADC却可以照常运行, 不受其影响
11、。输入寄存器输入寄存器用来连接不同运行频率的嵌入式微处理器 (MPU而且输入寄 存器还用来暂时存储没写入显示ROM的数据。当 CS1和CS2是正值时,R/W和 RS选择输入寄存器,来自MPU勺数据写到输入寄存器,并送到显示RAM锁存器 的数据在使能信号E的下降沿自动写入显示数据 RAM输出寄存器当CS1和CS2是上升沿并且RS=H被存储的显示RAM勺数据送到输出寄 存器,输出寄存器存储显示RAM勺临时数据。当CS1和CS2是上升沿并且R/W=H RS=L,数据总线的数值就能读出了。重置打开电源时对RSTB终端设置一个较低的值,系统能够被初试化。当RSTB是0时,系统从MPL接受指令,接下来的程
12、序就可以运行了。忙碌标记忙碌标记决定KS0108B是否运行。当忙碌标记是高电平时, KS0108B在内 部运行,当忙碌标记是低电平时,KS0108B就可以就收数据或命令了。显示开关触发器显示开关触发器决定晶振的开关。 当触发器置 0时,选择性和非选择性的电 压都会体现在输出端子部分;当触发器置1时,不管显示RAM勺数据是什么,非 选择性电压都会传输到输出端子。显示开关触发器能够通过指令改变状态。当 RSTB是低电平时,显示数据就会消失,触发器的状态就会通过读指令输出到 DB5X页寄存器X页寄存器表明内部消失数据 RAM勺页数。计数功能取消,相应的地址被指 令置 1 。Y地址计数器Y地址计数器指
13、定内部显示 RAM 勺数据地址。该地址被指令置1并且伴随读 写显示数据自动加 1。 1 四、 GDM 12864 的主要参数指标GDM 12864 是一种图形点阵液晶显示器,它主要由行驱动器和列驱动器 以及128X64全点阵液晶显示器组成,可完成图形显示,也可以显示8X4个的(16 X 16点阵)汉字。主要技术参数和性能指标:1。电源:VDD为+5V。模块内自带-10V负压,用于LCD的驱动电压;2。显示内容:128(列)X 64(行)像素点;3。全屏幕点阵;4。七种指令;5。与CPU接口采用8位数据总线并行输入输出和8条控制线;6。占空比: 1/64 ;7。工作温度: -10 +55 ,存储
14、温度: -20+60;2.2.2 FPGA 芯片的介绍在本设计中我们采用 ALTERA公司MAX700C系列的FPGA芯片。该系列有四个 专用输入, 它们可以作为每个宏单元和 I/O 引脚的高速、 全局控制信号, 如时钟 (clock )、清除( Clear )和输出使能( Output Enable )等。MAX700啲逻辑阵列块(LAB有16个宏单元组成,多个LAB通过可编程连 线阵列(PIA)和全局总线;连在一起。全局总线有所有的专用输入、I/O弓I脚和宏单元的提供信号。LAB的输入信号有:来自通用逻辑输入的 PIA的36个 信号;用于寄存器的辅助功能的全局控制信号;从I/O引脚到寄存器
15、的直接 输入通道,用于实现高密度的 MAX700C器件的快速建立时间。在MAX700C中逻辑阵列实现组合逻辑,给每个宏单元提供5个乘积项。乘积 项选择矩阵分配这些乘积项作为到或门和异或门的主要输入逻辑, 以实现组合逻 辑函数,或把这些乘积项作为宏单元组中触发器的辅助输入,即清除(Clear )、置位(Preset )、时钟(Clock)和时钟使能(Clock Enable)控制。每个宏单元 的一个乘积项可以反向后回会送到逻辑阵列。 这个可共享的乘积项能够连接到同 一个LAB中任何其他乘积项上。根据设计的逻辑需要,Quartus II开发环境将 自动优化乘积项的分配。作为寄存器功能, 每个宏单元的触发器可以单独地编程为具有可编程时钟控 制的D触发器、T触发器、SR触发器或JK触发器。另外,只要需要,也可将触 发器旁路,实现组合逻辑工作方式。每个触发器也支持异步清除和异步置位功能, 乘积项现在矩阵分配乘积项去 控制这些操作。虽然乘积项驱动触发器的置位和复位信号是高电平有效,但是, 在逻辑阵列中将信号反向可得到低电平有效控制。 此外,每一个触发器的