- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学生实验报告
系别 电子信息学院 课程名称 《EDA综合实验》 班级 14无线技术 实验名称 VGA彩条信号显示控制电路设计 姓名 实验时间 2016年11 月28 日 学号 指导教师 王红航 成绩 批改时间 2016年 月 日 报 告 内 容 一、实验目的和任务
1.学习VGA图像显示控制电路设计。
二、实验原理介绍
1.VGA简介
VGA显示器总是从屏幕的坐上角开始扫描,先水平扫描完一行(640个像素)到最右边,然后再回到最左边(期间CRT对电子束作行消隐),换下一行,继续扫描,知道扫描到屏幕的最右下角(480行),这样就扫描完了一帧图像,然后再回到屏幕的最左上角(期间CRT对电子束进行场消隐)。这样的扫描在标准的VGA模式(640*480@60HZ)下,每秒需要扫描60帧,这样算来每一个像素点的扫描周期大约为40ns。
VGA接头与底座
2.VGA的时序
VGA行同步信号HS和场同步信号VS的时序图如图2.1和图2.2所示, T1为行同步消隐(约为6μs);T2为行显示时间(约为26μs);T3为场同步消隐(两个行周期);T4为场显示时间(480个行周期)。 显示器每扫描完一行,再扫描一下行时会花一定时间来准备,因此要满足时序要求,见图2。
同样每扫描完一帧,再扫描下一帧行时也会花一定时间来准备,因此也要满足其时序要求,见图3
图象信号显示的颜色种类与表示R、G、B三基色的二进制数位数有关,表1列出了8种颜色的编码方式。
表一
三、设计代码(或原理图)、仿真波形及分析
通过按键S1来显示VGA的工作模式,若工作模式为显示字符模式,再通过4*4键盘来显示VGA的字符
。
设计代码:
module VGA(clk,md,hs,vs,r,g,b,mmmd);
input clk,md;
output r,g,b;
output hs;
output vs;
wire r,q,b,vs,hs;
reg clock;
reg[3:1] rgbp,rgbx,rgby;
reg[9:0] hcnt,vcnt;
reg hs_enable,vs_enable,hs1,vs1;
reg[1:0] mmd;
output [1:0]mmmd;
wire[3:1] rgb;
always@(posedge clk) //2分频
clock=~clock;
always@(posedge clock) //行计数800
begin
if(hcnt==799)
hcnt=0;
else
hcnt=hcnt+1;
end
always@(posedge clock) //同步头有效信号
begin
if((hcnt640+16)(hcnt640+16+96))
hs1=1b0;
else
hs1=1b1;
end
always@(posedge clock) //场计数640
begin
if(hcnt640)
hs_enable=1b1;
else
hs_enable=1b0;
end
always@(posedge hs1) //产生行同步有效信号
begin
if(vcnt==524)
vcnt=0;
else
vcnt=vcnt+1;
end
always@(posedge hs1) //产生场同步有效信号
begin
if((vcnt480+10)(vcnt480+10+2))
vs1=1b0;
else
vs1=1b1;
end
always@(posedge hs1)
begin
if(vcnt480)
vs_enable=1b1;
else
vs_enable=1b0;
end
always@(posedge clock) //竖彩条
begin
if(hcnt80) rgbx=3b000;//黑
else if(hcnt160) rgbx=3b001;//蓝
else if(hcnt240) rgbx=3b010;//红
else if(hcnt320) rgbx=3b011;//品
else if(hcnt400) rgbx=3b100;//绿
else if(hcnt480) rgbx=3b101;//青
else if(hcnt560) rgbx=3b110;//黄
else if(hcnt640) rgbx=3b111;//白
else rgbx=3b010;//
end
always@(posedge
文档评论(0)