STM407ZET6+OV5640调试心得

时间:2024-03-27 14:43:09

最近一个项目用了STMF407ZET6 +OV5640,调试了好几天做些总结;


STMF407ZET6 开发板用的是正点原子的开发板,OV5640摄像头用的是秉火摄像头;

这其中有一个大坑,开发板的DCMI接口跟摄像头的接口不一样,要重新用杜邦线进行连接;

本人是在正点原子的“”15,ATK-OV5640摄像头模块“”源码上进行修改的。


调试摄像头先调试SCCB接口,SCCB接口跟IIC接口类似,一根时钟线,一根数据线;

先能正确读写OV5640的寄存器后,再进行DCMI接口的配置;

一、SCCB接口的调试

跟IIC类似,直接用正点原子的代码就行,注意下OV5640地址为0x78就可以了;

二、DMCI接口调试

也是参考正点原子的代码,重点注意的地方是:

DCMI管脚 HREF和应该一致: VSYNC  和 OV5640的寄存器配置应该一致,这个细节问题,困扰了我好几天,才发现出来:

  1、/* DCMI 配置*/ 
  DCMI_InitStructure.DCMI_CaptureMode = DCMI_CaptureMode_Continuous;
  DCMI_InitStructure.DCMI_SynchroMode = DCMI_SynchroMode_Hardware;
  DCMI_InitStructure.DCMI_PCKPolarity = DCMI_PCKPolarity_Rising;
  DCMI_InitStructure.DCMI_VSPolarity = DCMI_VSPolarity_High;
  DCMI_InitStructure.DCMI_HSPolarity = DCMI_HSPolarity_Low;

  DCMI_InitStructure.DCMI_CaptureRate = DCMI_CaptureRate_All_Frame;
  DCMI_InitStructure.DCMI_ExtendedDataMode = DCMI_ExtendedDataMode_8b;
  DCMI_Init(&DCMI_InitStructure);

2、OV5640寄存器配置

参考文档 :OV5640_camera_module_software_application_notes_1.3_Sonix .pdf                第31页

STM407ZET6+OV5640调试心得

STM407ZET6+OV5640调试心得


相应的0X4740寄存器应该为默认值0x20


三、HREF、VSYNC管脚电平时序

STM407ZET6+OV5640调试心得


此信号为正确的HREF、VSYNC信号


至此,大功告成!!!!欧耶!!!!