电信周煜人力资源管理经管营销专业资料.doc

电信周煜人力资源管理经管营销专业资料.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电信周煜人力资源管理经管营销专业资料

课程设计(论文) 题 目 PS2键盘控制VGA图片切换 姓 名 朱栋梁 专业班级 12电子信息工程1班 学 院 信息科学与工程学院 完成日期 2014年12月30日 摘 要 简单的介绍了用已有的PS2键盘控制模块(ps2_module)和VGA显示模块(VGA_Ctrl)相结合的用PS2键盘控制VGA切换图片的系统设计,并且通过数码管来显示PS2键盘键值。 关键词: PS2;VGA;切换图片 目 录 摘 要 1 第1章 概述和原理 1 1.1 概述 1 1.2 原理 1 第2章 设计过程 1 第3章 设计结果 1 第4章 总结 1 参考文献 1 附 录 电路或者源代码 2 1 顶层模块程序 2 2 数码管动态扫描显示模块程序 4 3 PS2键盘模块程序 6 4 VGA键盘显示模块程序 8 概述和原理 1.1 概述 采用PS2键盘输入,用相应模块(ps2_module)获得其键值,当按下不同键时,返回不同的键值,来切换显示不同图片,将得到的键值用数码管(DTcontrl)显示,图片存在响应的ROM0~9中,最后锁相环(alp9llo)产生25M脉冲,供给VGA显示模块(VGA_Ctrl)。 1.2 原理 VGA显示模块 基于FPGA的VGA显示控制器,一组VGA视频信号包含5个有效信号:行同步信号 HS TTL电平,场同步信号 VS TTL电平,三基色信号:R、G、B 0.7 ~1.0V p_p。 VGA显示器进行显示时采用逐行扫描方式,是从屏幕的左上方开始逐点扫描,每行(640个点)扫描完成后,产生行同步负脉冲,并进行行消隐,然后回到下一行的最左边,开始新一行的扫描,直到屏幕的最右下方,即扫描完一帧图像(共480行),然后产生场同步负脉冲,并进行场消隐,最后又回到屏幕的最左上方,开始下一帧的扫描。VGA显示模式(640*480)的行、场扫描时序如下图(1),图所示是行扫描时序,单位是像素,即输出一个像素的时间间隔。图中各时间段的像素时间分别是:Ta(行同步头)=96,Tb=40,Tc=8,Td(行图像)=640,Te=8,Tf=8,Tg(行周期)=800. 图(2)是场扫描时序,单位是行,即输出一行图像的时间间隔。图中各时间段为:Ta(场同步头)=2,Tb=25,Tc=8,Td(场图像)=480,Te=8,Tf=2,Tg(场周期)=525. VGA图像显示扫描示意图:行计数数器的计数时钟可以采用25.2MHz,行计数器的溢出信号可作为场计数器的计数时钟。由行场计数器控制行场同步信号的产生,并在图像显示区域输出对应像素点的RGB数据,就能显示出相应的图像。 设计过程 首先调用数码管动态扫描程序,将键值显示在数码管上 DTcontrl decode8(CLK,count,oDTsel,oDTdata); 其中count与pdata的关系为assign count = {24'h000000,pdata}; 然后调用PS2键盘模块,获得其键值(pdata) ps2_module X2(CLK, RST,KBclk, KBdata,pdata, ps2Done); 将相应图片添加到ROM中 ROM0 uuu7(ram_addr,vga_clk,ram_data[0]); ROM1 uuu8(ram_addr,vga_clk,ram_data[1]); ROM2 uuu2(ram_addr,vga_clk,ram_data[2]); ROM3 uuu3(ram_addr,vga_clk,ram_data[3]); ROM4 uuu4(ram_addr,vga_clk,ram_data[4]); ROM5 uuu5(ram_addr,vga_clk,ram_data[5]); ROM6 uuu6(ram_addr,vga_clk,ram_data[6]); nit_gray u0(ram_addr1,vga_clk,ram_data[7]); lenna uuu1(ram_addr1,vga_clk,ram_data[8]); ROM9 uuu9(ram_addr,vga_clk,ram_data[9]); 再编写一个锁相环,产生25MHz脉冲给VGA显示器 alp9llo u1(CLK,clk25Mhz); 不同的键值给VGA显示器不同的显示内容 always@(pdata) if(pdata==8'h6c) vga_data=ram_data[7]; else if(pdata==8'h75) vga_data=ram

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档