RISC-V MCU中文社区

【分享】 mcu200t配置OV5640寄存器

发表于 全国大学生集成电路创新创业大赛 2023-05-27 21:48:18
0
1511
1

mcu200t配置OV5640寄存器

团队编号:CICC2136
团队名称:芯如止水

OV5640介绍

OV5640 的寄存器配置是通过 FPGA 的 I2C(也称为 SCCB 接口)接口来配置,需要配置正确的寄存器值让 OV5640 输出我们需要的图像格式

OV5640 SCCB 的写传输协议如下图所示:


上图中的 ID ADDRESS 是由 7 位器件地址和 1 位读写控制位构成(0:写 1:读),OV5640 的器件地
址为 7’h3c,所以在写传输协议中,ID Address(W)= 8’h78(器件地址左移 1 位,低位补 0);Sub-address(H)
为高 8 位寄存器地址,Sub-address(L)为低 8 位寄存器地址,在 OV5640 众多寄存器中,有些寄存器是可改
写的,有些是只读的,只有可改写的寄存器才能正确写入;Write Data 为 8 位写数据,每一个寄存器地址对
应 8 位的配置数据。

下表是本程序用到的关键寄存器的配置说明



mcu200t连接ov5640说明

可以利用下图的PMOD数字接口连接ov5640


值得注意的是,需要注释掉system.v中的gpioB相关语句,同时修改管脚约束文件

  //gpioB
  //inout wire [31:0] gpioB,//GPIOB00~GPIOB31

  output             cam_rst_n    ,
  output             cam_pwdn     ,
  output   wire      cam_scl      ,
  inout    wire      cam_sda

之后可以在顶层添加驱动模块,用于连接ov5640

//I2C配置模块    
i2c_ov5640_rgb565_cfg u_i2c_cfg(
    .clk           (i2c_dri_clk),
    .rst_n         (ck_rst),
    .i2c_done      (i2c_done),
    .i2c_data_r    (i2c_data_r),
    .cmos_h_pixel  (H_CMOS_DISP),
    .cmos_v_pixel  (V_CMOS_DISP),
    .total_h_pixel (TOTAL_H_PIXEL),
    .total_v_pixel (TOTAL_V_PIXEL),    
    .i2c_exec      (i2c_exec),
    .i2c_data      (i2c_data),
    .i2c_rh_wl     (i2c_rh_wl),
    .init_done     (cam_init_done)
    );    

//I2C驱动模块
i2c_dri 
   #(
    .SLAVE_ADDR  (SLAVE_ADDR),               //参数传�??
    .CLK_FREQ    (CLK_FREQ  ),              
    .I2C_FREQ    (I2C_FREQ  )                
    ) 
   u_i2c_dri(
    .clk         (CLK100MHZ   ),   
    .rst_n       (ck_rst     ),   
    //i2c interface
    .i2c_exec    (i2c_exec  ),   
    .bit_ctrl    (BIT_CTRL  ),   
    .i2c_rh_wl   (i2c_rh_wl ),   
    .i2c_addr    (i2c_data[23:8]),   
    .i2c_data_w  (i2c_data[7:0]),   
    .i2c_data_r  (i2c_data_r),   
    .i2c_done    (i2c_done  ),  
    .i2c_ack     (), 
    .scl         (cam_scl   ),   
    .sda         (cam_sda   ),   
    //user interface
    .dri_clk     (i2c_dri_clk)               //I2C操作时钟
);

可以配置摄像头的LED等点亮

喜欢1
用户评论

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板