




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息科学与工程学院EDA课程设计报告VGA接口显示器显示汉字设计组员姓名:班 级: 指导老师:时间: 目录摘要3一、设计任务:3二、VGA显示原理:3VGA的颜色编码:5三、设计方案:5四、调试过程:6五、VGA显示功能图:61顶层模块:82分频模块:83点阵模块:94时序控制模块:13八、改进方向:16总结17参考文献17 摘要由于FPGA芯片具有可靠性高、编程灵活、体积小等优点,采用其控制 VGA接口进行汉字显示,有效地解决了通用处理器控制VGA接口显示汉字的缺点。关键词:显示绘图陈列;现场可编程门陈列;VGA汉字显示一、设计任务: 使用VGA接口显示器显示汉字,此次演示显示“中国”两个字。二、VGA显示原理:VGA的汉字显示是利用VGA显示的原理,使用正确的时序信号对VGA接口相应的管脚进行控制输出RGB颜色信息来显示相应的字符信息其中VGA显示原理及时序信号的控制必须遵循VGA的工业标准。显示处理前端中的SRAM中存储的每一位数据对应相应LCD显示屏上一个像素点的亮和灭,“1”表示亮,“0”表示灭。在显示设备上显示汉字也就是按照汉字的点阵图向显示器上输出1或0的高低电平,从而在显示器上显示出具体的汉字 。常见的彩色显示器,一般由CRT(阴极射线管)构成,彩色是由G、R、B(绿:Green,红:Red,蓝:Blue)三基色组成。显示是用逐行扫描的方式解决,阴极射线枪发出电子束打在涂有荧光粉的荧光屏上,产生GRB三基色,合成一个彩色像素。扫描从屏幕的左边下一行的起始位置,在这期间,CRT对电子束 进行消隐,每行结束时,用行同步信号进行行同步;扫描完所有行,用场同步信号进行场同步,并使扫描回到屏幕的左上方,同时进行行场消隐,预备下一场的扫描。对于普通的VGA显示器,其引出线共含5个信号:G、R、B:三基色信号:HS:行同步信号;VS:场同步信号。对于5个信号的时序驱动,对于VGA显示器要严格遵循“VGA工业标准”,即640X480X60HZ模式。通常我们用显示器都满足工业标准,因此我们设计VGA控制时要参考显示器的技术规则。上述描述了行场扫描的时序要求:扫描的时候从屏幕的左上方开始,从左到右,从上到下进行扫描,每次扫完一行时候,电子束回到屏幕左边开始进行下一行的扫描,在这个期间中,CRT会对电子束进行行消隐,从行同步头开始扫描,每行结束后,用行同步信号进行行同步;扫描完所有行,用场同步信号进行场同步,并使扫描回到屏幕的左上方,同时行场消隐,预备下一场的扫描。所以时钟的频率为行场周期乘上频率525*800*60Hz约25MHz,行频为525*60=31.5KHz,其中60Hz表示场频率。VGA工业标准所要求频率: 时钟频率(Clock frequency):25.175MHz(像素输出频率); 行频(Line frequency ):31469Hz; 场频(Field):59.94Hz(每秒图像刷新频率);VGA的颜色编码:三、设计方案:FPGA芯片作为中央控制器控制整个系统的处理,根据自顶向下的设计流程,按照层次化、结构化的设计方法可以将FPGA系统划分为以下几个模块:顶层模块、分频模块、点阵模块、时序控制模块。系统工作原理:FPGA芯片读人配置信息,配置完成后,FPGA进人工作状态 ,将要显示的汉字的字模信息初始化到单口RAM 中,由系统时钟产生时序,程序根据时序信息控制VGA接口输出行、场同步及颜色信息到显示器上。 注意问题:一个时序驱动,时序偏差可能导致不正常的显示,另一个VGA信号电平驱动;上图描述VGA基本显示本次我们的也是在这上面进行改进,我们将50MHz的频率进行二分频,作为时钟频率输入然后进入显示控制处理电路把RGB三基色以及进行的行场同步信号处理经过控制后送入显示设备。框架图:四、调试过程: 本次调试过程中,程序出现了一些小小问题,虽然后面能够显示汉字,但修改了下程序颜色并不能很好的控制,进行了多次的程序改进以及进行调试认为设置的屏幕大小让汉字的颜色变化不是很明显,也有可能是下载程序时没有很好的下载,用的还是以前下载的程序导致颜色并没有改变,我们还是有所不足,需要更多的实践经验。五、VGA显示功能图:引脚图:仿真图:导出电路图:六、使用说明:1.打开Quartus新建工程,新建VHDL语言等一系列基本步骤。2.输入下列程序,编译,仿真,锁定引脚后在编译下载。锁定引脚要注意几个输入引脚与几个输出引脚,要根据你所拥有的芯片及其原理图的引脚进行锁定,否则会出现问题,上述引脚图可以进行参考。3.下载完成后如果在笔记本上显示结果还需要显示器的数据连接线且还要装驱动程序,个人建议还是在台式电脑上进行实验结果操作,把实验板通电后接上与电脑显示器的连接线按下你锁定的CLK50_in键后结果就能显示“中国”。七、程序设计模块:根据自顶向下设计方法层,首先定义顶功能块 。顶层模块处于重要的位置,定义好顶层模块功能后,才能进而分析哪些是构成顶层模块必要的子模块,然后进一步对各个子模块进行分解,直到达到无法进一步分解的底层功能块。顶层模块主要负责规定各个模块之间的数据信号和控制信号的连接关系,也就是实例化各子模块,并且接收RAM读取控制模块传来的汉字字模信息数据流,根据数据流信息中比特位为1的位赋予红色,为0的位赋予蓝色,即用红色表示汉字“中国”,用蓝色来表示点阵点背景。 1顶层模块: 定义顶层功能块,连接各模块数据信号和控制信号。library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity VGA_Module is Port ( clk50_in : in std_logic; -时钟频率50MHZ Red_out : out std_logic; -定义红色输出信号 Green_out : out std_logic; -定义绿色输出信号 Blue_out : out std_logic; -定义蓝色输出信号 hs_out : out std_logic; -水平同步时序输出 vs_out : out std_logic); -垂直同步时序输出end VGA_Module; 2分频模块: 时序的驱动是设计VGA显示的控制需要注意的一个重要问题,这也是实验是否成功的关键设计。时序不正确,必定不能正常显示,有时甚至会损坏显示设备。因此,对于时序的设计我们必须遵循VGA的工业标准,在设计中使用的分辨率为640480,实验采用的实验板提供的时钟频率为50 MHz,因此必须将系统进行分频设计,即进行二分频的设计。50 MHz的时钟频率经过分频后得到实验所需的25MHz频率,此频率将为顶层控制模块提供VGA控制模块和RA M读取控制模块的系统时钟。 architectureBehavioral of VGA_Module is signal Clk25: std_logic; -时钟分频为25 MHz signal Horizontal_Counter: std_logic_vector (9 downto 0); -结构体水平信号定义 signal Vertical_Counter: std_logic_vector (9 downto 0); -结构体垂直信号定义 begin -Generate 25Mhz Clock -形成所需的25MHz频率process (clk50_in) -进程时钟频率为50 MHz语句执行 begin if clk50_inevent and clk50_in=1 then if (Clk25 = 0)then Clk25 = 1 after 2 ns; else Clk25 = 0010010000 ) and (Horizontal_Counter = 0000100111 ) and (Vertical_Counter 1000000111 ) then Red_out = 0; Green_out = 0; Blue_out = 0110111000 ) -产生水平右移信号 and (Horizontal_Counter =0011101000) -或产生垂直右移信号 and (Vertical_Counter = 0011110111) then-或产生垂直左移信号 if(Pixel = 99) then -Line 1 Lets make our Text WHITE -输出一个行像素Pixel的三种颜色时间间隔信号 Red_out = char_L1(Line, Pixel); - Green_out = char_L1(Line, Pixel); Blue_out = 99) then Red_out = 0; Green_out = 0; Blue_out 0000000000 ) and (Horizontal_Counter 0001100001 )then hs_out = 0; -水平输出低电平0 else hs_out 0000000000 ) and (Vertical_Counter 0000000011 ) - 2+1 then vs_out = 0;-垂直输出低电平0 else vs_out = 1; -垂直输出高电平1 end if; Horizontal_Counter = Horizontal_Counter+0000000001; if (Horizontal_Counter=1100100000) then Vertical_Counter = Vertical_Counter+0000000001; Horizontal_Counter =0011101000) - First Line 232 and (Vertical_Counter = 0011110111) then -247 if (Line = 32) then Line:= 0; end if; end if; end if; if (Vertical_Counter=1000001001) then Vertical_Counter = 0000000000; Line:= 0; end if; end if; end process; end Behavioral; 八、改进方向: 1、可以增加颜色改为至8位256色。 2、可以通过设置延时程序调整程序使汉字进行颜色转变。 3、使显示的汉字更大。 4、通过改进程序,当输入不同信号时,显示不同的字。 5、通过熟悉硬件结构以及改进程序,将静态显示的字变成动态滚动的字。总结 经过本次课程设计,我们组加深了对VHDL的知识理解,尤其是编程设计,程序的调试以及结果的观察。比纯粹的理论教学课堂上学到的知识更多,更加深刻。实践教学方式对于我们工程运用专业是一个非常适合的教学方式,不仅锻炼了个人的动手能力,而且调动了学习的积极性,让我们从理论和实践相结合。 在课程中也出现了很多问题,比如还不能独立地设计出完整的程序,这也是最大的一个问题;还有在调试过程中也出现了很多问题;如:颜色并不能很好的控制、屏幕大小让汉字的颜色变化不是很明显。但我们都一一克服了。本次设计的不足是不能出现太多的变化,汉字的颜色不能产生渐变,程序也只是最基本的,虽然努力过了但并没有太多创新。所以在今后的设计中应该在理解、熟悉最基本的基础上实现更多的创新。最后感谢老师的帮助和指导,使我们
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 景观栈道施工方案(3篇)
- 海盐无尘室施工方案(3篇)
- 悬浮厨柜施工方案(3篇)
- 物业SOP考试题库及答案
- 安徽省马鞍山市当涂县2024-2025学年高二上学期第二次月考思想政治考试题目及答案
- 心理班面试题目及答案
- 小学文学知识题目及答案
- 蓝色简约秋季开学工作部署
- 读书伴我快乐成长1500字(9篇)
- 名篇阅读课程设计:唐诗五首
- 无纺布行业知识培训总结
- 2025年秋季教导处工作计划-深耕细作教研路笃行不怠启新程
- 党建品牌创新活动创新路径与实践探索
- 2025年保山辅警考试题库(附答案)
- 合同基础知识培训课件教学
- 2025年广西中考道德与法治试题答案详解讲评课件
- 高频振荡(HFOV)通气讲解课件
- T∕CAME 1-2019 家庭式产房建设标准
- 语文考试作文格子纸多种模板合集
- 计算机硬件系统的组成ppt课件
- 美丽的世界稀有矿物水砷锌矿
评论
0/150
提交评论