欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 毕业论文 > 计算机毕业论文

基于FPGA的VGA彩色图片的显示

时间:2015-09-02  作者:刘慧朱勇
f[6];

 

R=fopen('R.txt','r');

G=fopen('G.txt','r');

B=fopen('B.txt','r');

out=fopen('out.txt','w');

while(!feof(R) || !feof(G) || !feof(B))

{

fscanf(R,'%d',&r);

fscanf(G,'%d',&g);

fscanf(B,'%d',&b);

t=start++;

for(int i=5;i>=0;i--)

{

buf[i]=t%16;

t=t>>4;

}

//输出数据地址

for(i=0;i<6;i++)

fprintf(out,'%X',buf[i]);

//数据打印部分

fprintf(out,': 00');

fprintf(out,'%X',b/16);

fprintf(out,'%X',b%16);

fprintf(out,'%X',g/16);

fprintf(out,'%X',g%16);

fprintf(out,'%X',r/16);

fprintf(out,'%X',r%16);

fputc(' ',out);

}

printf('任务以结束! ');

}

时钟信号50MHZ进过FPGA上的锁相环进行分频处理得到25MHZ的时钟信号。

parameter Length = 128;//定义图片显示的大小

parameter Width = 128;

always @ (posedge VGA_CLK ) //行计数达到计数周期将重置

begin

if(H_Cnt==H_Tg-1) H_Cnt <=0;

else H_Cnt<= H_Cnt +1;

end

always @ ( negedge Hs)//场计数达到计数周期将重置

begin

if(V_Cnt==V_Tg-1) V_Cnt <=0;

else V_Cnt <= V_Cnt +1;

end

always @ ( posedge VGA_CLK )//产生行同步信号

begin

if(H_Cnt<=H_Ta-1) Hs<=0;

else Hs<=1;

end

always @ (V_Cnt)//产生场同步信号

begin

if(V_Cnt<=V_Ta-1) Vs<=0;

else Vs<=1;

end

always @ ( posedge VGA_CLK )

begin //在显示器上显示范围的控制

if(H_Cnt>=H_Ta+H_Tb+H_Tc &&

H_Cnt <=H_Ta+H_Tb+H_Tc+length-1 &&

V_Cnt>=V_Ta+V_Tb+V_Tc &&

V_Cnt <=V_Ta+V_Tb+V_Tc+width-1)

begin // ROM读取控制和数据处理

R<={Rom_Data[23:16],2'd3};

G<={Rom_Data[15:8],2'd3};

B<={Rom_Data[7:0],2'd3};

address<=address+1;//ROM地址加1

end

else

begin

R<=10'd0;

G<=10'd0;

B<=10'd0;

end

要把一幅图像的数据写入ROM,首先必须解决的就是写入文件的格式问题。一般的方法是通过编程器把Intel Hex,或者二进制文件.bin逐字节写入ROM。而图像都具有固定的格式,如BMP,JPEG,GIF等,其中的BMP格式图像是一种很常见的图像格式,没有经过压缩处理,且文件结构相对简单,易于处理,在本设计中采用了BMP图像作为研究对象。将BMP文件直接转化为Intel Hex文件比较困难,因此可先将BMP格式文件转化成mif格式文件,再由Quartus II 9.0直接将mif文件转化为Intel Hex文件,最后再将图像数据烧写入ROM中,本设计中,我们首先通过MATLAB将要显示的图片进行处理得到RGB三个颜色的分量,然后通过编程将各颜色分量生成一个mif文件,用于初始化LPM_ROM,利用Quartus II 9.0自带的MegaWizard Plug-In Manager创建存储RGB值的ROM模块, 同样利用Quartus II 软件生产一个存储器初始化(.mif)文件,其大小为Word size=32,Number of words =16384,将生产的RGB颜色值导入到mif文件中。

结 语

VGA接口显示器给我们提供了一个方便的显示方案,通过FPGA构造显示时序、以及ADV7123实现数模转化,在面积和速度上能够满足我们大部分的显示应用。实践证明基于FPGA 和ADV7123的VGA显示接口能够很好地在多种场合应用。


参考文献
[ 1 ] 潘松,黄继业. EDA 技术实用教程[M] . 科学出版社,1999 :2622265.
[ 2 ] 夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2006.
[ 3 ]夏宇闻.复杂数字电路与系统的Verilog HDL设计技术[M].北京:北京航空航天大学出版社,1998.
[ 4 ] 刘宝琴.数字电路与系统[M].北京:北京清华大学出版社,1993.

查看相关论文专题
加入收藏  打印本文
上一篇论文:基于FPGA的SPI接口时序模拟
下一篇论文:基于JSP/Servlet项目申报系统的设计与实现
毕业论文分类
行政管理毕业论文 工商管理毕业论文
护理毕业论文 会计毕业论文
会计专业毕业论文 英语专业毕业论文
大学毕业论文 硕士毕业论文
计算机毕业论文 市场营销毕业论文
物流管理毕业论文 法学毕业论文
相关计算机毕业论文
最新计算机毕业论文
读者推荐的计算机毕业论文