i.MX8M Plus开发板支持OV5640摄像头

在安防、工业物联、机器人、多媒体等领域的产品开发过程中,都需要进行图像采集,这要求硬件具备摄像头接口来实现。 i.MX 8M Plus 是 NXP 推出的一款具有高可靠性,适合用于机器学习和视觉、高级多媒体和工业物联网的处理器。启扬 IAC-IMX8MP-Kit 开发板基于 NXP i.MX8M Plus 四核 Arm Cortex-A53 处理器,主频达 1.6GHz,同时集成了神经网络加速单元(NPU),提供高达 2.3TOPS 的计算能力;集成了双图像处理单元 ISP,输入速率高达 375M 像素 /s,分辨率可达 12MPix/s,支持两路摄像头输入,集成的 ISP 可处理高动态范围(HDR)的快速多重曝光、图像增强等复杂的图像处理任务。

启扬 i.MX8M Plus 开发板引出两路 MIPI-Camera 接口,支持两路摄像头同时输入,应用于多领域实现图像采集功能。

根据官方资料,i.MX8M Plus 支持 ov5640、ov2775 和 basler camera,本次将简单了解 如何在 i.MX8M Plus 开发板上测试  ov5640 摄像 头模块

ov5640 摄像头模块简介

OV5640 是豪威科技生产的 500W 像素的 CMOS 图像传感器,最高支持 2624*1964 分辨率(物理尺寸),对应 2592*1944(图像尺寸)。该传感器内部集成了图像处理的电路,包括自动曝光控制(AEC)、自动白平衡( AWB) 等。同时该传感器支持 LED 补光、 MIPI(移动产业处理器接口,多用于手机等)输出接口和 DVP(数字视频并行,在设计 HDMI 显示时,就用的这个)输出接口选择、 ISP(图像信号处理)以及自动聚焦控制(AFC)等功能。

开发板摄像头接口原理图

查看源码以及开发板原理图文件

 

参考原理图,当前的 evk 使用 gpio4_IO0 作为 power down pin,gpio4_IO1 作为 reset pin,但是让我们看一下 i.mx8mp-evk.dts 文件

ov5640_1: ov5640_mipi@3c {
               compatible = "ovti,ov5640";
               reg = <0x3c>;
               pinctrl-names = "default";
               pinctrl-0 = <&pinctrl_csi0_pwn>, <&pinctrl_csi0_rst>, <&pinctrl_csi_mclk>;
               clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>;
               clock-names = "xclk";
               assigned-clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>;
               assigned-clock-parents = <&clk IMX8MP_CLK_24M>;
               assigned-clock-rates = <24000000>;
               csi_id = <0>;
               powerdown-gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>;
               reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
               mclk = <24000000>;
               mclk_source = <0>;
               mipi_csi;
               status = "disabled";
 
               port {
                       ov5640_mipi_1_ep: endpoint {
                               remote-endpoint = <&mipi_csi1_ep>;
                               data-lanes = <1 2>;
                               clock-lanes = <0>;
                       };
               };
        };

如果想把 I2C3 连接到 ov5640 上,要按照原理图的定义,改变掉电针和复位针。

&i2c3 {       
      /delete-node/ov2775_mipi@36;
}; 
&ov5640_1 {
       pinctrl-0 = <&pinctrl_csi1_pwn>, <&pinctrl_csi1_rst>, <&pinctrl_csi_mclk>;
     
        csi_id = <1>;        
        status = "okay";
};


请使用浏览器的分享功能分享到微信等