• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

OV5640摄像头显示设计Verilog代码Quartus AX301开发板

10/14 10:38
1029
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-241112195P5126.docx

共1个文件

名称:OV5640摄像头显示设计Verilog代码Quartus  AX301开发板

软件:Quartus

语言:Verilog

代码功能:

本实验将采用 500 万像素的 OV5640 摄像头模组(模块型号:AN5640)为大家显示更高分辨率的视频画面。OV5640 摄像头模组最大支持 QSXGA (2592x1944)的拍照功能,支持 1080P、720P、VGA、QVGA 视频图像输出。本实验将 OV5640 配置为 RGB565 输出,先将视频数据写入外部存储器,再从外部存储器读取送到 VGA、LCD 等显示模块。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在AX301开发板验证,AX301开发板如下,其他开发板可以修改管脚适配:

AX301开发板.png

设计文档:

OV5640 摄像头显示例程

1 实验简介

本实验将采用 500 万像素的 OV5640 摄像头模组(模块型号:AN5640)为大家显示更高分辨率的视频画面。OV5640 摄像头模组最大支持 QSXGA (2592x1944)的拍照功能,支持 1080P、720P、VGA、QVGA 视频图像输出。本实验将 OV5640 配置为 RGB565 输出,先将视频数据写入外部存储器,再从外部存储器读取送到 VGA、LCD 等显示模块。

2 实验原理

2.1 OV5640 传感器简介

OV5640 摄像头模组采用美国 OmniVision(豪威)CMOS 芯片图像传感器 OV5640,支持自动对焦的功能。OV5640 芯片支持 DVP 和 MIPI 接口,本实验所用 OV5640 摄像头模组通过 DVP 接口和 FPGA 连接实现图像的传输。

2.1.1 OV5640 的参数说明

像素:硬件像素 500W;

感光芯片:OV5640;

感光尺寸:1/4;

功能支持:自动对焦, 自动曝光控制(AEC),自动白平衡(AWB);

图像格式 : RAW RGB, RGB565/555/444, YUV422/420 和 JPEG 压缩;

捕获画面:QSXGA(2592x1944),1080p,1280x960,VGA(640x480),QVGA(320x240)

工作温度:-30~70℃, 稳定工作温度为 0~50℃

2.1.2 OV5640 的寄存器配置

OV5640 的寄存器配置是通过 FPGA 的 I2C 接口来配置。用户需要配置正确的寄存器值让 OV5640 输出我们需要的图像格式,实验中我们把摄像头输出分辨率和显示设备分辨率配置成一样的,OV5640 的摄像头输出的数据格式在以下的 0x4300 的寄存器里配置,在我们的例程中 OV5640 配置成 RGB565 的输出格式。

关于 OV5640 的寄存器还有很多很多,但很多寄存器用户无需去了解,寄存器的配置用户可 以按照 OV5640 的应用指南来配置就可以了。如果您想了解更多的寄存器的信息,可以参考 OV5640 的 datasheet 中的寄存器说明。

2.1.3 OV5640 的 RGB565 输出格式

OV5640 在 HREF 信号为高时输出一行的图像数据,输出数据在 PCLK 的上升沿的时候有效。 因为 RGB565 显示每个像数为 16bit, 但 OV75640 每个 PCLK 输出的是 8bit,所以每个图像的像数分两 次输出,第一个 Byte 输出为 R4~R0 和 G5~G3, 第二个 Byte 输出为 G2~G0 和 B4~B0,将前后 2 个 字节拼接起来就是 16Bit RGB565 数据。

3 程序设计

前面的实验已经为本实验做了大量的铺垫,包括 I2C 寄存器的配置、外部存储器的读写,本程序一个比较关键的地方在于视频同时读写,如果做到读写不冲突?在设计帧读写模块时就已经考虑到这点,所以有帧基地址选择,最大 4 帧选择,每次读视频帧地址和正在写的帧地址是不同的,而是上次写入的帧地址,这样就可以避免读写冲突,避免视频画面裂开错位。

cmos_8_16bit 模块完成输入 8bit 数据到 16bit 数据,数据位宽变成 2 倍,时钟频率不变,所以 16bit 数据是隔一个时钟周期有效,并不是一直有效。

信号名称 方向 说明
rst in 异步复位输入,高复位
pclk in 传感器像素时钟输入
pdata_i in 传感器 8bit 数据输入
de_i in 数据有效(HREF)
pdata_o out 16bit 数据输出
hblank out de_i 延时一个时钟周期
de_o out 数据输出有效

cmos_8_16bit 模块端口

部分代码展示:

//////////////////////////////////////////////////////////////////////////////////
//  CMOS sensor 8bit data is converted to 16bit data                            //
//                                                                              //
//  Author: meisq                                                               //
//          msq@qq.com                                                          //
//          ALINX(shanghai) Technology Co.,Ltd                                  //
//          heijin                                                              //
//     WEB: http://www.alinx.cn/                                                //
//     BBS: http://www.heijin.org/                                              //
//                                                                              //
//////////////////////////////////////////////////////////////////////////////////
//                                                                              //
// Copyright (c) 2017,ALINX(shanghai) Technology Co.,Ltd                        //
//                    All rights reserved                                       //
//                                                                              //
// This source file may be used and distributed without restriction provided    //
// that this copyright statement is not removed from the file and that any      //
// derivative work contains the original copyright notice and the associated    //
// disclaimer.                                                                  //
//                                                                              //
//////////////////////////////////////////////////////////////////////////////////
//================================================================================
//  Revision History:
//  Date          By            Revision    Change Description
//--------------------------------------------------------------------------------
//  2017/7/19     meisq          1.0         Original
//*******************************************************************************/

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1355

  • 2-241112195P5126.docx
    下载

相关推荐