00. 学习在PL端使用OV7725摄像头

拿到摄像头,我们先来研究它的引脚:
OV7725功能框图

输入端口:

Port Function
XCLK 系统时钟输入
FSIN 帧同步信号输入
RSTB 系统reset信号输入,低电平有效
PWDN 关机模式选择
SCL SCCB协议时钟输入(类似IIC)
SDA SCCB协议数据输入(类似IIC)

输出端口:

Port Function
HREF 行同步信号输出
PCLK 像素时钟输出
VSYNC 垂直同步信号输出
D[9:0] 10-bit RGB数据

Step 1. 读出OV7725的RGB数据并拼成一帧图像

假设摄像头正常工作,自身产生的24MHz的PCLK作为输出给到读取数据的模块中。一系列像素同步信号(VSYNC,HREF)和本身的RGB像素信息也同样传给模块中。作为时序控制电路应有RST_n信号。所以该Verilog模块的输入输出端口就很清晰了(如下图)

Diagram

Ports

Port name Direction Type
sys_rst_n input wire
ov7725_pclk input wire
ov7725_href input wire
ov7725_vsync input wire
ov7725_data input wire [ 7:0]
ov7725_wr_en output wire
ov7725_data_out output wire [15:0]

Signals

Name Type Description
pic_flag wire
ov7725_vsync_dly reg
cnt_pic reg [3:0]
pic_valid reg
pic_data_reg reg [7:0]
data_out_reg reg [15:0]
data_flag reg
data_flag_dly1 reg

Constants

Name Type Value Description
PIC_WAIT 4’d10