通过FPGA驱动OV5640调试记录
2014-11-12 10:21
134 查看
最近无聊,想通过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 仿真图如下:
经过漫长的原理图设计,原理图如下:
其中的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 仿真图如下:
相关文章推荐
- OV5640 sensor 偏绿调试记录
- 2440 OV2640 200W摄像头驱动调试(作者:wogoyixikexie@gliet)
- 2440 OV2640 200W摄像头驱动调试(作者:wogoyixikexie@gliet)
- 帮朋友调试S5pv210 OV3640 wince6.0 摄像头驱动
- Android 4.0 触摸屏驱动调试记录
- Android BCM4330 蓝牙BT驱动调试记录
- MEGA32驱动LCD12864 C源程序(调试通过)和原理图
- Wince6.0 下Camera(OV3640) 驱动开发全程记录
- Android BCM4330 蓝牙BT驱动调试记录
- Android BCM4330 蓝牙BT驱动调试记录
- 自娱自乐6之Linux gadget驱动5(自编gadget驱动,包涵与之通讯的主机usb驱动,已调试通过)
- Wince6.0 下Camera(OV3640) 驱动开发全程记录
- Android 4.0 触摸屏驱动调试记录 及 git patch相关内容
- Android BCM4330 蓝牙BT驱动调试记录
- android驱动一些外设调试记录
- Nand 驱动调试记录
- Android 4.0 触摸屏驱动调试记录
- [转]Android 4.0 触摸屏驱动调试记录
- Android BCM4330 蓝牙BT驱动调试记录
- [置顶] 自娱自乐6之Linux gadget驱动5(自编gadget驱动,包涵与之通讯的主机usb驱动,已调试通过)