OV7670_SDRAM_LCD视频显示系统框架

来源:互联网 发布:京瓷6525安装网络打印 编辑:程序博客网 时间:2024/06/05 11:53

1

前面的部分我们详细详解了如何使用FPGA驱动OV7670,SDRAM,LCD,使用FPGA来驱动OV7670,SDRAM和LCD各个部分其实并不是太难,今天,我们就来完成我们的终极目的,将CMOS采集的数据进行再LCD上进行显示。由于OV7670_SDRAM_LCD这个视频显示系统结构最庞大,整理一下最后的思路,将OV7670视频下时系统整体架构详细的分析给大家,也算是在CMOS摄像头入门开发商,画上一个完整的句号。详细的代码不做阐述,也不会去讲如何实现,这里只讲框架和思路!


2

     

        系统主要是包含4个大的模块,外部CMOS摄像头驱动模块,SDRAM BANK选择模块,SDRAM控制模块和外部数据显示模块(LCD或VGA)。其中CMOS摄像头驱动模块和LCD显示模块此时我们不需要再次讲解,这次我着重讲解的是如何利用SDRAM作为CMOS数据的缓存区,因为CMOS采集数据和LCD显示数据的时钟频率不相同,所以我们需要使用SDRAM来作为数据的缓存区,保证CMOS采集的数据可以完全显示在LCD上。

一般FPGA开发板上只要一个SDRAM芯片,而每个SDRAM又包含多个BANK,各个BANK之间互相不影响数据的读取和写入,所以我们可以采用一帧图片保存在一个BANK中,在本项目中我们采用两个BANK就可以完成我们所需要的功能,一个BANK用来写入CMOS的数据,此时另一个BANK用来供LCD读取显示,保证数据显示的完整性。所以我们采用乒乓操作来实现我们的功能,SDRAM BANK模块就是为了实现乒乓操作而产生的模块。

在使用过程中,SDRAM的操作都是采用突发读和突发写,并不是产生一个字节就要将数据写入SDRAM中,这样会为了提高SDRAM的读写效率,我们需要采用FIFO来作为临时数据的缓存,来同步CMOS产生的数据与SDRAM读写时序,保证数据可以完全写入SDRAM中,同理读FIFO也是为了实现相同的效果,只不过是为了实现读取的同步。

原创粉丝点击