您的位置:首页 > 其它

基于SDRAM的图像存储显示系统——学习记录

2020-02-01 17:58 906 查看

基于SDRAM的图像存储显示系统
FPGA听起来是比较枯燥的学科,但是真正了解它,运用它,你会发现它将非常有趣。恭喜我们两名同学在快乐中制作出了新的作品,在老师的帮助下,两位同学合力完成了基于SDRAM的图像存储显示系统,跟大家分享一下学习过程吧!
首先是设计思路,我们的想法是基于FPGA的彩色图像实时采集显示工程,通上电后,FPGA设置摄像头的工作方式,通过摄像头实时采集外界的图像信息,图像信息经过FPGA储存到SDRAM,同时在FPGA中产生显示器的同步信号,从SDRAM中读取图像数据,通过VGA显示控制模块传输后发送到显示器上。
设计听起来是比较简单的,但是在我们的设计过程中,并没有直接使用别人的IP核,我们根据数据手册设计出来了SDRAM模块接口代码,这也是本项目最大的难点与亮点。大家都知道,程序是模块的灵魂,一个优秀代码的完成也不是一蹴而就的,它需要花费相当多的时间和精力去调试错误,修补漏洞。在SDRAM接口设计过程中,从架构的搭建,到每一个逻辑代码的编写,都是我们独立完成的。当然不论是设计还是调试,这过程中都会遇到很多的难题,在一次次的困难面前,我们都没有选择放弃,互相商量寻找解决方案,一个路不通就回过头来选择另外一条,找到合适的解决方案。就是这样的坚持,我们才设计出了属于自己的SDRAM接口,并运用到此项目中去。
项目计划得到潘老师的认可后,我们投入到了准备中来。先说硬件的准备,我们准备了明德扬MP801 V2.0开发板一块,带有VGA接口的显示器一台,VGA接口连接线,OV7670摄像头一个。软件上使用了Quartus II 13.0编译软件,并且设计了规整的结构图,如下图所示。

准备好这一切后,我们就开始设计代码了,经过在明德扬的学习,我们的代码写的非常的规整,以下是TOP层次源码。
在这里插入图片描述








综合编译完成后,我们将生成的比特流文件下载到至明德扬MP801开发板中,并用VGA线将开发板与显示器相连接。至此,我们的作品算是初步的完成了。当然连接好后在调试的过程中也是遇到了一定的问题,比如摄像头采集后显示的图像亮度过低,通过调节摄像头的配置寄存器,画面变得明亮起来。经过多次调试,我们的作品终于完美出炉啦,为大家展示一下。
一、硬件展示
连接好的FPGA板

摄像头采集图片信息,画面实时的显示在显示器上


二、参数分享
1、OV7670摄像头:分辨率640480,帧率30帧/秒,输出图像为RGB565格式;
2、VGA:分辨率640480,帧率60帧/秒,输出图像为RGB565格式。
以上就是我们的作品,设计看起来很简单,但是由于自己设计的SDRAM模块接口,整个制作还是耗费了我们相当多的时间和精力,并且在程序的设计中我们还是非常的用心和细心的,感谢潘老师悉心指导,教会我们严谨的逻辑思路,教会我们写简洁的代码,教会我们独立完成项目。
想要成为一位合格的FPGA工程师,就要适当的放弃“拿来主义”,像我们的一样,试着去尝试去制作属于自己的模块,只有在实践中不断的试错,才可以得到提升与进步,感兴趣的同学也可以试着自己做一下,相信大家经过勤加学习、多加练习、刻苦钻研、不懈努力,一定可以成为优秀的FPGA工程师。

  • 点赞
  • 收藏
  • 分享
  • 文章举报
至简设计法 发布了8 篇原创文章 · 获赞 4 · 访问量 951 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: