液晶显示接口电路设计_第1页
液晶显示接口电路设计_第2页
液晶显示接口电路设计_第3页
液晶显示接口电路设计_第4页
液晶显示接口电路设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、EDA技术课程设计任务书班级: 姓名: 学号: 设计题目: 液晶显示接口电路 一、设计目的进一步巩固理论知识,培养所学理论知识在实际中的应用能力;掌握EDA设计的一般方法;熟悉一种EDA软件,掌握一般EDA系统的调试方法;利用EDA软件设计一个电子技术综合问题,培养VHDL编程、书写技术报告的能力。为以后进行工程实际问题的研究打下设计基础。二、设计任务掌握液晶显示器(LCD)的基本原理,利用FPGA设计一个控制液晶显示模块(LCM)的接口电路,实现对LCM的有效控制,要求能显示中文和英文两种字符,下载并测试电路功能,分析芯片资源的占用情况。三、设计要求(1)通过对相应文献的收集、分析以及总结,

2、给出相应课题的背景、意义及现状研究分析。(2)通过课题设计,掌握计算机组成原理的分析方法和设计方法。(3)学习按要求编写课程设计报告书,能正确阐述设计和实验结果。(4)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现。四、设计时间安排查找相关资料(1天)、设计并绘制系统原理图(2天)、编写VHDL程序(2天)、调试(2天)、编写设计报告(2天)和答辩(1天)。五、主要参考文献1 江国强编著. EDA技术与实用(第三版). 北京:电子工业出版社,2011.2 曹昕燕,周凤臣.EDA技术实验与课程设计.北京:清华大学出版社,2006.53 阎石

3、主编.数字电子技术基础.北京:高等教育出版社,2003.指导教师签字: 年 月 日16液晶显示接口电路设计摘 要本文以显示汉字和字母字符为例,介绍LCD液晶显示器接口电路。设计采用ST7920控制器控制的液晶显示模块(LCM),利用FPGA实现对该模块的控制。设计从液晶显示器的原理入手,介绍了液晶显示模块的基本设计方法,其中FPGA技术为液晶显示模块提供控制信号和数据输入信号。设计采用的液晶显示器为点阵式,为16×16的点阵。对自定义汉字而言,在16×16的点阵上,根据汉字的字形,可以得到汉字的字模。而字母的显示设计要相对简单一些,因为有固定的字符库,根据字符库即可得到字符

4、相应的编码,而显示在16×8的点阵上。为了简化程序,可以将字模编码送入存储器中,然后利用FPGA控制技术,将字模编码送入显示模块中显示出来。关键词:EDA,FPGA,LCD,接口电路目 录第一章 绪论1§1.1 设计目的和意义1§1.2 设计任务及要求1第二章 总体设计2§2.1 液晶显示器工作原理2§2.2 系统设计5§2.2.1 LCD接口电路的设计5§2.2.2 自定义汉字的显示6§2.2.3 显示接口电路的顶层电路7§2.2.4 Mif文件8第三章 系统仿真9§3.1 字符输入9

5、7;3.1 仿真波形9第四章 源程序10第五章 结论13参考文献14第一章 绪论§1.1 设计目的和意义进一步巩固理论知识,培养所学理论知识在实际中的应用能力;掌握EDA设计的一般方法;熟悉一种EDA软件,掌握一般EDA系统的调试方法;利用EDA软件设计一个电子技术综合问题,培养VHDL编程、书写技术报告的能力。为以后进行工程实际问题的研究打下设计基础。由于液晶显示器具有工作电压低、功耗小、寿命长、易集成、方便携带并且显示信息量大、无辐射、无闪烁等优点,进行该设计能使我深入理解液晶显示的原理和方法,对以后使用和设计都意义重大。目前市场上大部分LCD的接口是模拟接口,存在着传输信号易受

6、干扰、显示器内部需要加入模数转换电路、无法升级到数字接口等问题,LCD的数字接口尚未形成统一标准,LCD的关键性的优势却很难充分发挥。但随着数字时代的到来,数字接口必将采用代替模拟接口。FPGA既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。§1.2 设计任务及要求掌握液晶显示器(LCD)的基本原理,利用FPGA设计一个控制液晶显示模块(LCM)的接口电路,实现对LCM的有效控制,要求能显示中文和英文两种字符,下载并测试电路功能,分析芯片资源的占用情况第二章 总体设计§2.1

7、 液晶显示器工作原理液晶显示器采用点阵式,不仅可以显示中英文字符,而且还可以显示图形,根据设计要求,能显示中文和英文两种字符。对于中文字符,我采用自定义汉字类型,而英文字符的显示由液晶显示模块内部提供。采用LMG-SSC12K64DLGY液晶显示模块,模块带有英文字库和BIG5码中文字库,可显示4行8个字符,且每个字符为16×16中文字。模块内部的液晶控制器为ST7920,ST7920内部内置了2MB中文字型ROM(CGROM),提供8192个中文字型(16×16点阵);16KB半宽字型ROM(HCGROM),126个西文字型(16×8点阵);64×16

8、位字符显示RAM(DDRAM),64×16位字符产生RAM(CGRAM),64×32个字节的绘图RAM(GDRAM),以及256点的ICON RAM(IRAM)。通过对ST7920的指令操作,可实现文字和图形的混合显示、清屏、光标移位、显示开关、光标显示/隐藏、显示字体闪烁、光标移位、显示移位、垂直画面旋转、反白显示、休眠等功能。ST7920内部有两个8位的寄存器:数据寄存器(DR)和指令寄存器(IR)。通过数据寄存器可以存取DDRAM/ CGRAM/ GDRAM/IRAM的值,以及目标RAM的地址;通过指令命令选择数据寄存器的存取对象,每次的数据寄存器存取动作都将自动地以

9、上次选择的目标RAM地址来进行写入和读取。表2-1 LMG-SSC12K64DLGY液晶显示模块的外部引脚引脚号符号电平功能1VSSGND(0V)2VDDH/LDC+5V3N.CN.C4RSH/L寄存器选择5R/WH/L读/写6EH,H 指向 L使能信号7DB0H/LD08DB1H/LD19DB2H/LD210DB3H/LD311DB4H/LD412DB5H/LD513DB6H/LD614DB7H/LD715A(+)DC+5VLED背光+16K(-)0VLED背光+从外部引脚可知,此LCM有八条数据线DB7DB0,三条控制线RS、R/W、E,可以方便地与微处理器、微控制器或者FPGA相连,通过

10、向LCM送入数据和指令,就可以使LCM正常工作,这里选择与FPGA相连。ST7920的寄存器选择信号RS及读写控制信号R/W可选择控制接口4种读写模式,如表2-2所示。表2-2 ST7920的基本操作RSR/W功能说明LL写指令到指令寄存器(IR)LH读出忙标识(BF)及地址计数器(AC)的状态HL写数据到数据寄存器(DR)HH从数据寄存器(DR)中读出数据ST7920的指令集包括基本指令和扩充指令,其中基本指令有11条(见表3),扩充指令有7条(见表4),每条指令的长度都为8位。两类指令的选择由选择控制位RE决定,RE=0,为基本指令,RE=1,为扩充指令。将RE的状态更改后,后续指令将维持

11、在这一状态,除非再次更改RE状态,否则使用相同指令集时,无需重新设置RE。表2-3 ST7920的基本指令表指令指令码描述RSR/WDB7DB6DB5DB4DB3DB2DB1DB0清屏0000000001清除屏幕,光标回原位返回000000001X设DDRAM地址为0,显示回原位,其内容不变输入方式设置00000001I/DS设光标移动方向并指定显示是否移I/D=1:增加;0:减少S=1:显示移动;默认0显示开关控制0000001DCBD=1:显示;0:关闭C=1:光标打开;0:光标关闭B=1:光标位字符闪烁;0:不闪烁移位000001S/CR/LXXS/C=1:显示移动;0:光标移动R/L=

12、1:右移;0:左移功能设置00001DLX0REXXDL=1:8位接口RE:选择控制位CGRAM地址设置0001AC5AC4AC3AC2AC1AC0设CGRAM地址DDRAM地址设置0010AC5AC4AC3AC2AC1AC0设DDRAM地址写数CG/DDRAM10D7D6D5D4D3D2D1D0写数据到内部RAM(DDRAM/CGRAM/GRAM)读数据由CG/DDRAM11D7D6D5D4D3D2D1D0从内部RAM(DDRAM/CGRAM/GRAM)读出数据ST7920在接收指令前,FPGA必须先确认ST7920处于空闲状态,即读取的忙信号位BF为0时,才能接收新的指令。若在送出一条指令

13、前不检查BF状态,则需要延时一段时间,确保上一条指令执行完毕。ST7920的每条指令长度为8位,但是自定义字型的编码为16位,必须通过连续写入DDRAM两个字节数据的形式完成显示,先写入高字节(DB15DB8),再写入低字节(D7D0)。ST7920字型ROM提供8192个点的16×16中文字形图像以及126个16×8点的数字/符号图像,它使用两个字节(中文字形)或一个字节(数字/符号)提供字型编码选择,配合DDRAM将要显示的字型码写入到DDRAM中,硬件将自动的依照编码从CGROM或HCGROM中将要显示的字型显示在液晶屏上。ST7920的CGRAM提供四个16

14、5;16点的自定义图像空间,可实现造字功能。自定义字型一次最多只能定义4个,使用者也可以将内部字型未提供的图像字型定义到CGRAM中,便可通过 DDRAM 显示在屏幕中。§2.2 系统设计FPGAST7920LCD液晶显示屏行驱动器组列驱动器组RSDB0DB7R/WELCM§2.2.1 LCD接口电路的设计图2-1 FPGA与液晶模块的接口电路FPGA与液晶模块的接口电路如图2-1所示。其中,D0D7为数据总线接口,R/W=1时,为读操作,R/W=0时,为写操作。RS为寄存器选择信号,为0时为选择命令寄存器,为1时选择数据寄存器。对LCM的写命令操作可分为如下几个步骤:1)

15、 RS=0,R/W=0,EN=0;设定工作方式为写命令寄存器。2) RS=0,R/W=0,EN=1,DB=具体命令字;使能LCM,将命令字写入LCM。3) RS=0,R/W=0,EN=0;写命令工作结束。对LCM的写显示数据操作可分为如下几个步骤:1) RS=1,R/W=0,EN=0;设定工作方式为写数据寄存器。2) RS=1,R/W=0,EN=1,DB=具体显示数据;使能LCM,将显示内容写入LCM。3) RS=1,R/W=0,EN=0;写显示数据结束。程序设计时,可采用状态机控制各个步骤的进行。§2.2.2 自定义汉字的显示对于自定义汉字的显示,首先需要获得自定义汉字的字模。我设

16、计的是显示“农电”两个字,根据字模可以得到这两个汉字的编码,每取8个点作为一个字节,如果最后不足8个点则补满8位。ST7920提供16×16的点阵,可以显示四个自定义的汉字,农电两个字的字模就是由16×16点阵而来的。“农”“电”两字的字模如下:农的字模:DB 00H 00H 00H 80H 00H 80H 01H 00H 3FH F3H 21H 04H 02H 00H 05H 00HDB 08 84H 18H 48H 28H 30H 48H 10H 88H 08H 0AH 04H 0CH 03H 00H 00H 电的字模:DB 00H 00H 01H 80H 01H 80

17、H 01H 80H 1FH F8H 11H 88H 11H 88 1FH F8H DB 1FH F8H 11H 88H 11H 88H 11H 88H 1FH F8H 01H 83H 01H FFH 00H 00H要注意的是:1) 在将字模放入CGRAM之前,一定要先设定CGRAM的地址。2) 在显示数据之前,一定要把自定义汉字的字模放入CGRAM中。3) CGROM的内容确定后,要指定在液晶屏上的显示位置,即设定DDRAM的地址。§2.2.3 显示接口电路的顶层电路图2-2 显示接口电路的顶层电路原理图lpm模块为存储器模块,自定义汉字的字模编码就存储在里面并且当控制信号到来时,将

18、字模送入lcdcgram模块并通过该模块显示出字形。sclk为系统时钟,start为启动显示信号,clear为清零信号,lcden为LCM使能输入端,lcdr/w为LCM读/写输入端,lcdd/i为LCM寄存器选择输入端,lcdd70为LCM数据输入端。lpm_rom0中存放的是RAM的地址和字模编码,大大简化了程序的设计。§2.2.4 Mif文件自定义字形显示“农”“电”时,依据字形的字模数据设置存储器的存储数据,存储器的mif文件内容图2-3所示。图2-3 农电的mif文件第三章 系统仿真§3.1 字符输入此电路的仿真主要关注在时钟及输入信号的控制下,FPGA是否能够输

19、出满足LCM时序的控制信号。若存储器中存放数据,仿真的波形如图3-1,3-2所示。由波形图可看出,在时钟信号的作用下,对LCM的操作为写操作,与送入LCM的数据mif文件一致。图3-1为“农”字的部分输入§3.1 仿真波形图3-2 自定义字形仿真波行第四章 源程序显示“农”“电”两个自定义字行的VHDL的源程序如下:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;ENTITY lcdcgram ISPORT(sclk,start,

20、clear :in std_logic; prom_data:in std_logic_vector(8 downto 0); en,r_w,rs:out std_logic; promadr:buffer std_logic_vector(7 downto 0); db:out std_logic_vector(7 downto 0); leddata:out std_logic_vector(8 downto 0);END lcdcgram;ARCHITECTURE arch OF lcdcgram IStype state is(s0,s1,s2);signal sta ,clr_sta

21、:state;signal clk:std_logic;signal count:std_logic_vector(8 downto 0);signal reg_rs:std_logic_vector(0 to 10);signal lcddata:std_logic_vector(8 downto 0);signal init:std_logic;signal lcx:std_logic;beginprocess(sclk)beginif clear='1' then count<="000000000"elsif sclk'event an

22、d sclk='1' then count<=count+1;end if;end process;clk<=count(8);-process(clear,start,sclk,clk)process(clear,start,sclk)beginif sclk'event and sclk='1' thenif clear='1' then sta<=s0; init<='0' promadr<="00000000"case clr_sta is when s0=>

23、rs<='0'r_w<='0'en<='0'clr_sta<=s1; when s1=>rs<='0'r_w<='0'en<='1'clr_sta<=s2;db<="00000001" when s2=>rs<='0'r_w<='0'en<='0'clr_sta<=s0; when others=>null; end case;else if start ='1' then lcx<=clk; if lcx='0' and clk='1' then if promadr<="01001011" then lcddata<=prom_data; leddata<=lcddata; case sta is when s0=>rs<=(not lcddata(8);r_w<='0'en<='0'sta<=s1; when s1=>rs<

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论