1、论文题目 基于FPGA的LCD驱动显示电路的设计与实现姓 名 孙 涛学 院 宝鸡文理学院专 业 电子信息工程指导教师 王 春 英2023 年 04月10日基于FPGA的LCD驱动显示电路的设计与实现作者姓名: 薛文平指导教师: 田勇单位名称: 嵌入式系统工程系专业名称: 电子信息工程(集成电路设计与系统方向)东北大学东软信息学院2023年5月Design and Implementation of LCD Drive Display Circuit based on FPGAby Xue WenpingSupervisor: Lecturer Tian Yong Northeastern Un
2、iversity Neusoft Institute of InformationMay 2023毕业设计(论文)任务书毕业设计(论文)题目:基于FPGA的LCD驱动显示电路的设计与实现设计(论文)的基本内容: 本课题重要研究了运用FPGA来驱动字符型液晶显示器模块。课题关键是对驱动芯片的各个引脚和时序进行控制。本系统开发环境为Windows XP,开发语言为Verilog HDL。设计的目的是为了在LCD液晶显示器上显示任意大小写英文字符和阿拉伯数字,能根据输入数据的变化同步变化LCD上显示的内容所有功能所有用硬件描述语言编程实现下载到Xilinx公司的开发板上进行调整。完全可以取代传统的运
3、用单片机来驱动液晶显示,且比之有更好的抗干扰性,更高的可靠性。毕业设计(论文)专题部分:题目:设计或论文专题的基本内容:学生接受毕业设计(论文)题目日期第 1 周指导教师签字:2023年11月30日基于FPGA的LCD驱动显示电路的设计与实现摘要本课题重要任务是设计基于FPGA的LCD驱动电路的设计和实现,兼顾好程序的易用性,以方便之后模块的移植和应用。控制器部分采用Verilog语言编写,主体程序采用了状态机作为重要控制方式。最后实现使用FPGA在LCD上显示任意的英文字符和阿拉伯数字,此外要能根据输入数据的变化同步变化LCD上显示的内容。同时要能将储存模块中的数据正常地显示在LCD上。该课
4、题的研究将有助于采用FPGA的系列产品的开发,特别是需要用到LCD的产品的开发。同时可以大大缩短FPGA的开发时间。此外,由于模块的易用性,也将使得更多的采用FPGA的产品之上出现LCD,增长人机之间的交互性,为行业和我们的生活带来新的变化。本文中对FPGA,LCD,ModelSim,Xilinx ISE8.2i硬件设计工具等进行了简朴的介绍,对其功能进行了简朴的描述,并了解了LCD液晶显示器的发展历史,平常应用以及相对比于其他种类显示器的优缺陷,并对基于FPGA的LCD液晶显示器驱动电路未来的发展趋势进行了展望。关键词:FPGA,LCD,状态机,VerilogDesign and Imple
5、mentation of LCD Drive Display Circuit based on FPGAAbstractIn this project, the main object is to design a LCD controller based on FPGA, and at the same time emphasize on the convenience for the later application and migration.The program of the controller is written by Verilog language, and the ma
6、in body of the program used state machine as the primary control method. displayed picture which was put earlier. In this project, I finally realized the following function. The first one is to display any English and figureon character any position of the display screen. The second one is the displ
7、ay information will instantaneously update as the input data changes. The research of this project will contribute to the developing process of those products which use FPGAs, especially those products also use LCD. And at the same time, it can reduce dramatically on the developing time. In addition
8、, for the convenience of this controller, more and more FPGA based products will come out with LCD screen. This change will enhance the interaction between human and the machine, and bring innovation to the industry and our lives.In this project, FPGA, LCD, ModelSim, Xilinx ISE8.2 I hardware design
9、tools simply introduces its functions were a simple description, and understanding the LCD monitor the development history, and relative everyday applications than in other types of monitor based on FPGA advantages and disadvantages, and the LCD monitor driver circuit future development trends are d
10、iscussed. Key words:, FPGA, LCD, State Machine, Verilog目录任务书I摘要IIABSTRACTIII第1章绪论11.1选题背景11.2 LCD液晶显示器的发展现状11.3选题目的3第2章关键技术介绍42.1FPGA简介42. 2LCD简介42.2.1LCD的简介42.2.2TC 1602液晶模块简介52.3 系统软件图6第3章系统分析73.1FPGA的设计方法73.2Verilog HDL和VHDL的异同73.3TC1602液晶模块的工作方式83.4系统开发环境113.5系统任务的可行性分析12第4章系统设计134.1系统概述134.2系统的
11、功能结构设计134.2.1接口电路设计134.2.2液晶模块的内部显示地址134.3流程图和状态机的设计144.3.1 FPGA 向液晶显示屏控制芯片发送指令的流程图144.3.2 状态机15第5章系统实现175.1系统硬件开发环境介绍175.2系统的实现175.2.1电路图175.2.2系统主程序代码节选19第6章系统测试236.1系统测试236.1.1仿真波形236.2 对TC1602液晶显示器进行FPGA验证23第7章结论24参考文献25致谢27第1章绪论1.1选题背景本课题重要任务是设计基于FPGA的LCD驱动显示电路的设计与实现。兼顾好程序的易用性,以方便之后模块的移植和应用。最后在
12、FPGA上的任意位置显示任意的英文和数字,此外要能根据输入数据的变化使LCD液晶显示器上显示的内容产生变化。本课题的研究有助于采用FPGA的系列产品的开发,特别是需要用到基于FPGA的LCD产品的开发。同时可以大大缩短FPGA的开发时间。增长人机之间的交互性,为行业和我们的生活带来新的变化。FPGA是FieldProgrammable Gate Array的缩写,即现场可编程门阵列,它是在GAL、CPLD、PAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了原有可编程器件门电路数有限的缺陷,又克服了定制电路的局限性。我们平时所说的
13、LCD,它的英文全称为LiquidCrystalDisplay,直译成中文就是液态晶体显示器,简称为液晶显示器。液晶是一种几乎完全透明的物质。它的分子排列决定了光线穿透液晶的途径。到20世纪60年代,有人发现给液晶充电会改变它的分子排列,导致光线的扭曲或折射,这个发现引发了人们发明液晶显示设备的念头。1.2 LCD液晶显示器的发展现状初期的时候,技术还不成熟,LCD液晶显示器重要被应用于电子表、计算器等领域。世界第一台真正意义上的液晶显示设备出现在20世纪70年代初,它被称之为TN-LCD(扭曲向列)液晶显示器。虽然是用单色显示的方式,但它仍然被推广到了电子表、计算器等领域。和TN技术不同的是
14、,TFT的显示采用“背透式”的照射方式假想的光源途径是从下向上,而不是像TN液晶那样从上至下。 光源途径设计成从下向上的作法是在液晶的背部设立特殊光管,光源照射时通过下偏光板向上透出。由于上下夹层的电极改变成为FET电极和共通电极,在FET电极导通时,液晶分子的表现也会改变,可以通过使用遮光和透光的方法来达成显示的目的,响应时间提高到80ms左右。由于TFT具有比TN更高的对比度,更丰富的色彩和更快的荧屏更新频率,所以TFT俗称“真彩”。相比较于DSTN,TFT的重要特点是给每个像素都配置了一个半导体开关器件。由于每个像素都可以通过点脉冲来直接控制,因而每个节点都显得更独立,并可以连续控制。这
15、样的设计方法不仅提高了显示屏的反映速度,并且也可以精确控制显示的灰度,这就是TFT色彩比DSTN更为逼真的因素。2023年以后LCD液晶显示器技术开始走上成熟发展之路、但仍然生存在CRT显示器阴影下(CRT直译中文为:阴极射线管,英文名称为Cathode-RayTube)。传统的CRT显示器的发展历程为从黑白到彩色和从球面到柱面再到平面直角最后直至纯平的发展。在这段非常快速前进的历程中,显示器的视觉效果在跳跃性提高,带宽、画质、分辨率、刷新和色彩率等各项指标均有非常大的提高。目前主流的纯平显示器色彩真实,图像无扭曲,画面清楚,视角更广阔,并且在设计时还充足考虑到了人类的视觉构造,好的纯平显示器
16、在长时间使用之后,眼睛不会感到疲劳等一系列优势。但是同期的液晶显示器存在画面延时,色彩还远不够真实,可视角度削弱等缺陷,所以,在2023年以前,LCD液晶显示器一直生活在CRT显示器的阴影下。但是与此同时我们也对比看到LCD液晶显示器宽广的发展前景:可以说纯平显示器是CRT显示器发展的最高水平,然而,由于CRT显示器的基本工作原理是依靠高电压激发的游离电子轰击显示屏而产生各种各样的图像,技术已经十提成熟,没有太多的发展余地。受限于此,传统CRT显示器在体积、重量、功耗等方面露出自己的劣势。当时,由于液晶面板厂商基本都是第三代以前的生产线,在切割15、17吋等主流尺寸液晶面板的时候成本居高不下,
17、所以,在那个年代,LCD的售价也自然居高不下,15吋LCD液晶显示器售价达成4000元以上,和当时同样显示面积的17吋CRT显示器2023多元的价格主线没有任何优势,所以,在那个年代,LCD液晶显示器只是一些奢侈玩家的摆设品。通过2023年LCD液晶显示器大幅度调价,消费者发现LCD液晶显示器的价格与CRT显示器进一步接近了,特别是大尺寸LCD液晶显示器的售价和同尺寸的CRT显示器相比甚至有一些尺寸开始有优势。大家在关注液晶显示器的同时,开始注意到在液晶显示器具有一些独特的优势。1、大大提高桌面运用率 2、易于悬挂、拼接 3、接口更丰富、DVI成为标准配置 4、分辨率更高,相同尺寸的可视面积更
18、大从2023年开始,各大显示器厂商开始意识到一个重要的问题,要提高LCD液晶显示器的市场地位,他们当务之急是解决LCD液晶显示器拖影问题。所以,我们可以注意到,LCD液晶显示器响应时间技术从2023年开始飞速发展,从初期的50ms到2023的1ms,这完全是一个质的改变。2023年以前,还是有很多40毫秒甚至是50毫秒的产品的,它们充其量只能应付一些基本的文本办公,游戏应用主线无从谈起。不少初期的用户有这种体验,在CRT上玩惯魔兽之后,忽然换成一台响应时间为30ms的LCD液晶显示器上进行游戏,感觉自己操作以后技能和任务迟迟没有发生变化,这就是LCD液晶显示器初期被游戏玩家严重诟病的一个地方。
19、1.3选题目的本课题重要任务是设计基于FPGA的LCD驱动电路的设计和实现,兼顾好程序的易用性,以方便之后模块的移植和应用。最后在FPGA上显示任意的英文字符和数字,此外要能根据输入数据的变化同步变化LCD液晶显示器上显示的内容。同时要能将储存模块中的数据正常地显示在LCD液晶显示器上。 第2章关键技术介绍2.1FPGA简介FPGA(FieldProgrammable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物;它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的局限性,又克服了原有可编程器件门电
20、路数有限的缺陷。目前主流的FPGA仍然是基于查找表技术的,它已经很大限度上超过了先前版本FPGA的基本性能,并且还整合了用户常用功能(如时钟管理、RAM和DSP)的硬核(ASIC型)模块。FPGA芯片重要提成6个部分,他们分别是:基本可编程逻辑单元、可编程输入输出单元、完整的时钟管理、丰富的布线资源、嵌入块式RAM、内嵌的底层功能单元和内嵌专用硬件模块。其的基本特点重要有: 1、FPGA可以做为其它的半定制或全定制ASIC电路中的试样片。 2、采用FPGA设计的ASIC电路,用户不需要投片生产,就可以得到想要的芯片。3、FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。4
21、、FPGA的内部有非常丰富的触发器和IO引脚。5、FPGA是ASIC电路中开发费用最低、设计周期最短、风险最小的器件之一 2.2LCD简介2. 2.1LCD的简介LCD显示器是Liquid Crystal Display 的简称,LCD液晶显示器的构造是在两片平行的玻璃之中放入液态的晶体,两片玻璃的中间具有很多垂直的和水平的细小电线,通过为不同的液晶单元供电来控制杆状水晶分子方向的改变,将光线折射出来产生画面。液晶显示器具有的一些独特优势:1、大大提高桌面运用率 大屏幕液晶显示器轻薄的机身对提高桌面运用率是显而易见的。19英寸的CRT显示器其厚度普遍有40cm之巨,而当时相同尺寸的液晶显示器厚
22、度不超过4cm,大大节约了桌面空间。随着双头输出显卡的普及,越来越多的用户需要同时使用两台显示器,笨重硕大的CRT显示器显然不再适合,液晶显示器才是最佳对象。2、易于悬挂、拼接 大屏幕液晶显示器大多数均设有VESA标准的悬臂接口,可以方便与各种各样的悬臂支架配合应用在特殊的场合中,而液晶显示器特有的窄边框设计使其在拼接成屏幕墙的时候更加完美。而CRT由于重量及外形因素,悬挂及拼接电视墙相对成本要高很多,且效果并不抱负。3、接口更丰富、DVI成为标准配置 传统的D-Sub模拟接口和数字化的DVI视频接口已经成为当时大屏幕液晶显示器事实上的标准配置。大家不仅可以通过数字化的视频接口享受无信号失真的
23、干净画面和操控的便利性,还可以通过传统D-Sub接口兼容旧显卡让两台主机共用同一台显示器。多数大屏幕液晶显示器还配备了其它模拟视频输入接口和3.5毫米音频输入接口以供多媒体应用,部分产品甚至还配备USBHub。而小屏幕液晶显示器由于产品普遍定位较低和可供运用空间有限,只有在某些高端型号才配备部分上述接口。4、分辨率更高,相同尺寸的可视面积更大传统的CRT显示器分辨率普遍要比同尺寸的液晶显示器要低,17英寸CRT显示器的分辨率普遍为1024*768,而17英寸普屏LCD液晶显示器支持12801024,同时它的可视面积相称于19英寸CRT显示器的可视面积。更高的分辨率可以在屏幕上显示更多的资讯,即
24、使以后观看19201080的HDTV节目源也不至于丢失太多的像素。此外,更大显示面积令用户在欣赏电影时候不再只局限于一个视觉效果最佳的“皇帝位”,即便是23人也能同时看到相同质量的画面。2.2.2TC 1602液晶模块简介一、TC 1602液晶模块是一种用57点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等,最常用的为2行16个字。TC 1602液晶模块的一些重要技术参数:1、逻辑工作电压(VDD):+4.5 +5.5V2、LCD驱动电压(VDD - VL):+4.5 +13.0V3、工作温度(Ta): 0 60C(常温)/-20 75 C(宽温
25、)4、工作电流: 2.0mA5、屏幕视域尺寸: 62.5 16.1mm二、TC 1602字符液晶模块特点1、可与8位或者4位微解决器直接连接;2、内置字符发生器ROM可提供160种工业标准字符,涉及所有大小写字母、阿拉伯数字及日文片假名,以及32个特殊字符或符号显示;3、内置RAM可根据用户需要,自行设计定义字符或符号;4、+5V单电源供电;5、低功耗。2.3 系统软件软件开发环境是运用Xilinx工具,Xilinx工具是世界领先的可编程逻辑完整的解决方案的供应商,研发,制造并且销售应用范围广泛的高级集成电路,软件设计工具。并且,可以定义系统级功能的IP核(Intellentual Prore
26、rty),Xilinx工具长期以来一直致力于推动FPGA产业技术的更新和发展。Xilinx开发工具不断地升级,由初期的Foundation系列逐步发展到如今目前的ISE9.1i系列,工具集成了FPGA开发板所需要的所有功能,本次项目设计我所采用的是Xilinx ISE8.2i硬件设计工具。相对容易使用并且有着独一无二的PLD设计环境。Xilinx ISE8.2i硬件设计工具将先进的技术与灵活性,方便使用性的图形界面结合一起,使您在短时间设计出您想要设计的硬件设计。Xilinx ISE8.2i,不管您经验如何,都是硬件设计新手的最佳选择工具。Mentor公司的ModeSim是业界最优秀最可靠的H
27、DL语言仿真软件,它可以提供简易的仿真环境,是业界唯一在单内核支持VHDL和Verilog混合仿真的仿真软件。ModelSim采用直接优化的编译技术,Tcl/TK技术和单一内核仿真技术,使在编译仿真时候速度快,编译的代码与平台关系无关,便于保护IP核,个性化的图形界面和用户接口,全面支持VHDL和Verilog语言对IEEE标准的准确,除众多优势之外,它还可以支持C/C+功能调试和调用。ModelSim最大的特点是强大的调试功能,先进数据流窗口,可快速追踪到产生不定或者错误状态的最终因素,性能分析工具帮助分析性能的上下瓶颈,加速仿真速率,检查保证测试的完备性能,多种模式下的波形比较功能,先进的
28、Signal Spy强化功能,地址访问VHDL或者Verilog和VHDL混合设计中的最底层信号,并且支持加密IP,可与Matlab的Simulink的联合仿真功能。此外,ModeSim的特点尚有,RTL级和门级电路的优化,具有集成性能分析,对SystemC的直接编译可以与HDL任意混合。所以说,它是目前世界上对系统级别硬件描述语言综合仿真工具最全面支持的工具。第3章系统分析3.1FPGA的设计方法一般用到的FPGA的设计方法有“自顶向下”和“自下而上”这两种。到目前为止大规模FPGA设计经常所采用的设计方法是“自顶向下”的设计方法。所谓“自顶向下”设计方法就是采用可以完全独立于芯片厂商以及他
29、们的产品结构的描述语言,在功能级设计上对设计的产品进行定义,然后再结合其功能仿真技术,最后保证对产品的设计的对的性,在对其功能定义完毕后,运用逻辑综合技术,把功能描述转换成某一具有具体结构芯片的网表文献,输出最后要给厂商的布局布线器再进行布局布线。布局布线的结果还可以返回同一仿真器,进行涉及时序和功能的后验证,以此来保证由于布局布线所带来的门延时和线延时不会影响到设计的性能。“自顶向下”的优越性是比较显而易见的。第一,由于它的功能描述可以完全独立于芯片结构,在进行设计的最初阶段,设计师完全可以不受芯片结构的约束,集中所有精力对产品进行设计,因此可以避免了传统设计方法所带来的重新再设计风险,在最
30、大限度上缩短了设计周期。第二,设计的再运用得到了保证。目前的电子产品正在向着模块化方向发展。所谓模块化就是对以往设计得成果进行修改、组合和再运用,产生全新的或派生设计。而“自顶向下”的功能描述可与芯片结构无关。因此,可以以一种IP(Intelligence Property 知识产权)的方式进行存档,方便将来的重新运用。第三,在设计规模上大大提高。简朴的语言描述就可以完毕复杂的功能,且不需要手工绘图。最后,在芯片的选择上更加灵活。设计师可在较短的时间内采用所能见到的各种结构芯片来完毕同一功能描述,从而在设计规模、速度、芯片价格及系统性能规定等方面进行平衡,选择最佳结果。目前最为常用的功能描述方
31、法是采用均已成为国际标准的两种硬件描述语言VHDL和Verilog HDL。本课题使用的为Verilog HDL。3.2Verilog HDL和VHDL的异同Verilog HDL和HDL都是用于逻辑设计的硬件描述语言,并且都已成为IEEE标准。VHDL是在1987年成为IEEE标准,而Verilog HDL则是在1995年才正式成为IEEE标准。之所以VHDL比Verilog HDL更早成为IEEE标准,是由于VHDL是美国军方组织开发的,而Verilog HDL 只是从一个普通的民间公司的私有财产转化而来,基于Verilog HDL的优越性,才成为的IEEE标准,因而有更强的生命力。 VH
32、DL 其英文全名为VHSIC HARDWARE DESCRIPTION Language,而VHSIC则是Very High Speed Integerated CIRCUIT的缩写词,译为甚高速集成电路,所以VHDL准确的中文译名为甚高速集成电路的硬件描述语言。 Verilog HDL和VHDL作为描述硬件电路设计的语言,他们共同的特点在于:可借用高级语言的精致结构来简化电路行为的描述、支持逻辑设计中层次与范围的描述、能形式化地抽象表达电路的行为和结构、具有电路仿真与验证机制以保证设计的对的性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性涉及进
33、去)、便于文档管理、易于理解和设计重用。 在这些共同点的基础上,Verilog HDL和VHDL又各有其自己的特点。由于Verilog HDL早在1983年就已推出,至今已有近二十年的应用历史,因而Verilog HDL拥有更广泛的设计群体,成熟的资源也远比VHDL丰富。与VHDL相比Verilog HDL的最大优点是:它是一种非常容易掌握的硬件描述语言,只要有C语言的编程基础,通过一段时间的学习,再加上一段实际操作,就可以掌握这种设计技术。但是掌握VHDL设计技术就比较困难。这是由于VHDL不是很直观,需要有Ada编程基础,一般认为需要较长时间的专业培训,才干掌握VHDL的基本设计技术。目前
34、版本的Verilog HDL和VHDL在行为级抽象建模的覆盖范围方面也有所不同。一般认为Verilog HDL在系统级抽象方面比VHDL略差一些,而在门级开关电路描述方面比VHDL强得多。3.3TC1602液晶模块的工作方式本课题中使用的TC 1602液晶模块采用标准的16脚接口,其引脚功能如下:第1脚:VSS为电源地,接GND。第2脚:VDD为电源,接+5V电源。第3脚:VL为液晶显示器对比度调节端,接地电源时对比度最高,接正电源时对比度最弱,对比度过高的时候显示器上会产生“鬼影”,在使用的时侯可以通过一个10K左右的电位器来调整其对比度。第4脚:RS为寄存器选择端,低电平时选择为指令寄存器
35、,高电平时选择为数据寄存器。第5脚:RW为读写信号线端,低电平时进行得是写操作,高电平时进行的是读操作。当RW为高电平RS为低电平时可以读忙信号,当RW和RS共同为低电平时可以显示地址或者写入指令,当RW为低电平RS为高电平时可以写入数据。假如不需要读操作,那么该引脚可直接接地。第6脚:E端为使能端,当E端由高电平转变为低电平时,液晶模块开始执行命令。第714脚:D0D7为8位双向数据线。第15脚:BLA背光电源正极(+5V)输入引脚。第16脚:BLK背光电源负极,接GND。 TC 1602液晶模块内部自带标准字库,内部的字符发生存储器(CGROM)存储了192个57点阵字符,32个510点阵
36、字符。除此之外尚有字符生成RAM(CGRAM)512字节,供用户自定义字符。如表3.1所示,这些字符有:大小写的英文字母、阿拉伯数字、日文假名和常用的符号等,每一个字符都固定有一个的代码相相应,例如大写英文字母“A”所相应的代码是01000001B(41H),需要显示时模块就把地址41H中所代表的点阵字符图形显示出来,就能在TC 1602液晶显示器上看到字母“A”。表3.1 CGROM和CGRAM中字符代码与字符图形相应关系TC 1602液晶模块内部的控制器共有11条控制指令,如表3.2所示。它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示
37、。功能:送20H“空代码”到所有的DDRAM中,清除所有显示数据,并将DDRAM地址计数器(AC)清零,光标返回至原始状态,设立I/D=H,AC为自动加一的输入方式。指令2:光标复位。功能:不改变DDRAM中的内容,只将DDRAM地址计数器(AC)清零光标返回到原始状态,若有滚动效果,撤消滚动效果,将画面拉回到home位。表3.2 1602液晶模块内部的控制器共有11条控制指令指令3:输入方式设立。功能:设立光标的移动方向,并且指定整体的显示有没有移动,用来设立需要显示字符的输入方式,在计算机的读/写DDRAM或CGRAM后,地址指针的修改方式,反映在效果上,写入字符画面或光标的移动。该子令的
38、两个参数位I/D和SH拟定了字符的输入方式。I/D表达计算机读/写DDRAM或CGRAM后,地址的修改方式,也是光标的移动方式:I/D=0:光标自右往左移动,AC减一。I/D=1:光标自左往右移动,AC加一。SH表达在写入字符时,是否允许显示画面的滚动方式:SH=0:允许滚动。SH=1:严禁滚动。指令4:显示开关控制。功能:该指令用来控制闪烁,光标及画面的开和关。有三个状态位:B、C、D:B:控制光标是否闪烁,高电平闪烁,低电平不闪烁;C:控制光标的开与关,高电平表达有光标,低电平表达无光标;D:控制整体显示的开与关,高电平表达开显示,低电平表达关显示。指令5:光标或显示整体显示移位位置。功能
39、: S/C和R/L相应操作:0 0:光标由右向左移动且AC减一。显示不动0 1:光标由左向右移动且AC加一。显示不动1 0:所有显示由右向左移动,光标跟随移动,AC减一1 1:所有显示由左向右移动,光标跟随移动,AC加一指令6:功能设立命令。功能:设立接口数据位数以及显示模式。DL:高电平时为8位数据接口模式,DB0到DB7有效,低电平时为4位数据接口模式,DB4到DB7有效。在这种模式下传送的方式为先告4位,后低4位。N:低电平时为单行显示,高电平时双行显示 F:低电平时显示5x7的点阵字符,加光标,高电平时显示5x10的点阵字符,加光标。指令7: CGRAM地址设立。功能:将CGRAM地址
40、送入AC中。随后计算机岁数据的操作是对CGRAM的读/写操作。指令8:DDRAM地址设立。功能:将DDRAM地址送入AC中。N为低电平时,DDRAM范围为80H到FFH,N为高电平时,第一行DDRAM地址范围为80H到BFH,第二行DDRAM地址范围为C0H到FFH。指令9:读忙标志位及地址。功能:最高位(BF)为忙信号位,低7位为地址计数器的内容。BF=1:内部正在执行操作,此时要执行下一指令需要等待,到BF=0在继续执行。指令10:写数据。功能:写数据到CGRAM 或DDRAM。RS为高电平,RW为低电平,为数据的写操作;RS和RW均为低电平,为指令的写操作。执行写操作后,地址自动加/减1
41、(更具输入方式设立指令)。指令11:读数据。功能:从CGRAM 或DDRAM读出8位数据。假如从DDRAM读数据,则执行读操作后,地址自动加/减1(更具驶入方式设立指令)。其中,CLK、RST 分别是50MHZ时钟和复位输入信号,RST低电平有效,RS、RW、E和data分别为与液晶显示屏控制芯片连接的控制信号。RS为寄存器选择控制输出信号,当RS 为低电平时,表达数据总线传输的是命令控制信号,当RS为高电平时,表达数据总线传输的是数据信号;RW为读/写控制输出信号,当RW为低电平时,表达向液晶显示屏控制芯片写数据,反之,为读取数据;E为读/写操作允许控制脉冲输出信号,高电平有效;data 为
42、数据信号。然后介绍一下FPGA 向液晶显示屏控制芯片发送指令的流程,上电后,必须传送给液晶显示屏控制芯片初始化命令,初始化结束后,还要传输指定地址、计数器地址和显示字符的编码数据,。接通电源后,FPGA 向液晶显示屏控制芯片发送指令的流程如下图所示。3.4系统开发环境 硬件配置:TC1602液晶模块操作系统: Windows xp仿真工具:ModelSim开发语言:Verilog3.5系统任务的可行性分析在系统设计的过程中,要基于高级数字系统设计与验证的指导思想为设计方法,一方面要对本设计的算法实现有一个整体上的学习以及周边知识的了解,思想上保持统一,实现整体框图设计,然后对流程图设计,以求最
43、简化。再由流程图,准确提取出数据通道和控制单元。在数据通道的提取中,规划出所需要的单元模块,模块之间链接的关系。并且考虑最终生成系统的可行性。控制单元也是系统的一个重要组成部分,控制单元可由状态机的转移来实现,规定合理控制各个状态的转移条件。控制单元生成的数据发送到数据通道所需的信号,同时接受来自数据通道解决过的状态信号,到达监控整个设计单元实现的过程。控制单元的控制信号由数据通道解决,把解决的结果反馈给控制单元。数据通道电路重要由计数器,寄存器,RAM,比较器和LCD。数据通道重要实现根据控制单元送来的信号,生成对数据信号的判断。第4章系统设计4.1系统概述本次项目所设计的系统是基于FPGA
44、的LCD驱动显示电路的设计与实现,控制器部分采用Verilog语言编写,主体程序采用了状态机作为重要控制方式。最后实现使用FPGA在LCD上显示任意的英文字符和阿拉伯数字,此外要能根据输入数据的变化同步变化LCD上显示的内容。同时要能将储存模块中的数据正常地显示在LCD上。4.2系统的功能结构设计4.2.1接口电路设计TC1602液晶显示模块可以和51系列单片机直接接口,下图为是S51增强型实验板的液晶接口电路(图4.1)P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.4P3.5P3.6P1.0D1D2D3D4D5D6D7RSRWED0BLKGUNVLBLAVCC12345678
45、141516VCC(+5V)对比度背光R147W10KAT89S51LCD TC1602图4.1接口电路设计4.2.2液晶模块的内部显示地址液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表达不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图4.2是TC1602液晶模块的内部显示地址。图4.2液晶模块的内部显示地址4.3 流程图和状态机的设计4.3.1FPGA 向液晶显示屏控制芯片发送指令的流程图如图4.3所示,一方面接通电源,发送功能控制字,假如等待时间大于15毫秒的时候,反复发送功能控制字。之后发送模式控制字,发送成
46、功后,再发送打开显示控制字。发送初始化命令,发送成功后,假如等待时间大于等于1.64毫秒,那么发送DDRAM地址,再发送需要西安市字符的编码,然后再循环依次发送DDRAM地址和需要显示字符的编码。接通电源等待大于等于15ms反复发送功能控制字发送模式控制字发送打开显示控制字完毕初始化命令等待大于等于1.64ms发送DDRAM地址发送需要显示字符的编码图4.3根据上述流程图(图5.1),可以采用状态机状态机实现对液晶显示屏控制芯片的控制。由于执行不同的操作过程,需要的时间也不同样,因此采用计数器与状态机配合的方式。为每个状态机设立不同的时间(也就是延迟计数值的不同),计数器与状态设立延迟计数值相比较,并且给状态机发出计数时间到的信号,告知状态机转换到下一个状态,直到所有的数据传送完毕后,再循环向液晶显示屏控制芯片发送显示字符的编码数据。4.3.2状态机状态机如图(图4.4)所示,其中S 0S 7S 1S 6S 4S 3S 5S 2!resetDatacnt10Datacnt=39Datacnt=
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100