首页 > 代码库 > 通过FPGA驱动OV5640调试记录

通过FPGA驱动OV5640调试记录

   最近无聊,想通过FPGA来驱动OV5640,达到高速并行的图像处理。其中使用了8个sensor。是Omnivision的500W高清摄像头。主要用于手机,pad,等移动设备的主摄像头。在网上搜索了一把,包括谷歌和百度。都没发现太有价值的信息。后面自己硬着头皮开始自己来弄。应该用fpga控制ov5640我属于首创。

 经过漫长的原理图设计,原理图如下:

其中的DOVDD使用的是D1.8V,这样就可以使用内部的LDO,外部只需要2.8V和1.8V。在使用DOVDD为1.8V时,可以不连接DVDD这个电源1.5V。然后自动对焦电源和AVDD都连接到2.8V上。所以原理图设计如上图。

Sensor调试步骤和思路:

1.sensor使用的是DVP接口,也就是数字摄像头接口。

2.其中的DOVDD和AVDD最好是同时上电。

3.RESET信号,在复位完成后应该为高电平。复位过程中为低电平有效。

4.PWDN为sensor电源关闭管脚,其中高电平有效。sensor启动后应该PWDN=0;为低电平。

5.sensor的SCCB控制的写ID为0x78.

8.sensor在使用的时候,XCLK必须要有。可以是24M或是26M时钟。

 在完成上面8步工作后,应该是没问题的。前提是代码正常。我使用的代码是FPGA控制的,是Verilog代码。下面是Verilog写的控制器在modsim下面的仿真。下面是gage level 仿真图如下:




通过FPGA驱动OV5640调试记录