马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 dodoee 于 2021-11-7 15:55 编辑
Jude20211024-20211107
在网上下载了 Pmod-CAM-5M.rar ,它是基于Zedboard和ov5640 的Demo,我的摄像头是ov5642的,做了一些修改,实现了视频的采集并通过VGA输出。ov5642的代码压缩包ov5642cam_zed.rar稍后会上传 1. ZedBoard和Ov5642的连接 把 Pmod-CAM-5M.rar解压后,有四个文件夹,根据02和03文件夹的Referece 和Schematic 连接摄像头ov5642到zedboard的JA和JB上,需要注意的是PWDN,STROEBE,FREX 可不接,摄像头模块一般都有晶振接在了XCLK上,XCLK可以不接在ZedBoard 上。连接VGA显示器到ZedBoard的VGA接口上。 2. Vivado 和SDK Vivado 和SDK的教程网上很多,自己找,直接解压ov5642cam_zed.rar(我修改并实现好的),用vivado直接打开Vivado_OV5640_ImageShow.xpr工程, 连接zedboard的Jtag 和UART 到电脑,vivado左下角点击Openhardware manager ,然后program device,看到zedboard 下载bitstream 完成,再点击file-> launch SDK ,选择到工程目录下的Vivado_OV5640_ImageShow_BD\sdk,打开SDK ,然后直接run ,打开secure CRT连接COM,可看到程序的打印信息,在VGA显示器可看到摄像头ov5642采集的实时图像。由于原工程内只实现了640x480 的解码,所以图像不清晰。如果自己修改了代码,需要run Synthesis ,run Implementation,generate bitstream ,再Open hardware manager …… 3. 修改 1) design_1_PIC_LAY_0_0.v 87行 加入了BUFG; 2) PIC_LAY.v 195行 加入了门控时钟; 3) CCD_Capture.v 由于源代码错误,修改较多,具体看代码; 4) 程序的修改,ov5640.c 修改了很多,主要是ov5640 和ov5642的很多寄存器不同,ov5640.h中加入了ov5642的寄存器配置,具体看代码。 4. 系统介绍 系统框图如下,PS (上面四个IP)部分只是通过IIC来配置ov5642,PL(PIC_LAY_0一个IP)部分实现ov5642的数据采集和存储,并转换为VGA的数据输出。
5. 仿真及设想 工程目录下Vivado_OV5640_ImageShow_BD\Vivado_OV5640_ImageShow.sim我加入了简单的testbench,仿真时需要修改Reset_Delay,reset时间修改短一点,CCD_Capture.v的X_Cont 和Y_Cont 也要修改短一点,否则仿真时间太长。) 原代码只实现了640x480分辨率的解码,可在PL中加入一个IIC receiver IP,并设置一些配置分辨率的寄存器,通过编程来实现分辨率的动态配置,初学者可以作为练手的项目做一下。 ov5642的连接 和采集的图像,效果不是很好......
|