物联网外设学习笔记-摄像头(二)

CMOS摄像头使用说明

OV7670 一般摄像头模块
简介
OV7670 一般模块指骑飞电子推出的低成本数字输出CMOS摄像头,其摄像头包含30w像素的CMOS图像感光芯片, 3. 6mm焦距的镜头和镜头座,板载CMOS芯片所需要的各种不同电源(电源要求详见芯片的数据文件),板子同时引出控制管脚和数据管脚,方便操作和使用。

OV7607一般摄像头模块
管脚定义

如图,控制传感器所需的管脚定义如下:

  1. 3V3-----输入电源电压(推荐使用3.3, 5V 也可,但不推荐使用)
  2. GDN-- - --接地点
  3. SIO_ C—SCCB 接口的控制时钟(注意:部分低级单片机需要上拉控制,和I2C接口类似)
  4. SIO_ D- - SCCB 接口的串行数据输入(出)端(注意:部分低级单片机需要上拉控制,和I2C接口类似)
  5. VSYNC—帧同步信号(输出信号)HREF-—行同步信号(输出信号)
  6. PCLK-—像素时钟(输出信号)
  7. XCLCK—时钟信号(输入信号)D0-D7—数据端口(输出信号)
  8. RESTE—复位端口(正常使用拉高)
  9. PWDN-—功耗选择模式 (正常使用拉低)

接口定义
控制方式说明

采集图像数据需要严格按照OV公司的芯片时序进行,这些时序包括:
(1) SCCB 通讯时序,其作用是设置芯片内部寄存器,以控制图像的各种所需功能。其时序和一-般的I2C 时序相似,部分低级单片机要接上拉电阻。
在这里插入图片描述
(2)行输出时序
行输出时序可以用来控制一行像素的输出情况,HREF即一行输出的开始和结束信号,同时在像素同步时钟的同步下,输出8位的像素信号

行输出时序图
(3)全帧输出下的时序情况:
该图显示的是一副图像的输出的情况下,个控制信号和数据信号的输出。图中,VGA=640X480大小的情况下,帧同步信号,行同步信号如图:
在这里插入图片描述
采集图像的基本方法
(1)单片机直接采集
在这里插入图片描述

如图,这种方法是最简单,最直接,但也是最不好实现的方法,原因是 多数的CMOS芯片(如ov7670)的时钟速度可高达24M,一 般单片机的I0端口速度根本不可能达到,所以需要高速MCU。这对多数用户来讲有些不现实。
但也不是完全没有办法在低速上实现采集,方法也很简单,那么就是降低CMOS的输出速度,不过这需要靠外部的晶振和内部的PLL电路以及像素时钟速度,帧速等多个寄存器共同设置,并且要和MCU的Io速度匹配才可实现。
(2)高级32位芯片直接使用
某些32位的ARM核,MIPS核,x86核直接带有camera接口,可以直接使用,典型的如三星的arm9,sc2440 等。该采集方法请参考具体的芯片器件数据手册。
(3) DMA方式的采集方法
这种方法一般需要具有DMA功能的16位以上的高级单片机来实现,通过DMA方式,直接从总线或者I0口采集数据送入内存,内存中的数据可以存储,计算,保留,或者供显示使用。
(4)间接采集并显示的方法(推荐使用)
这种方法是最容易实现,能够直接看到采集的图像内容。实现采集就显示的功能,这种方法具有较高帧速,一般QVGA可保证在30帧左右的速度。
实际上,这种间接的办法其实就是将CMOS输出的数据直接送到显示屏(如
TFT显示器的内存中)进行显示的,数据并不经过MCU (所以对MCU而言是,
间接采集),也无法经过MCU,因此可以达到较高的帧速。

猜你喜欢

转载自blog.csdn.net/qq_34623621/article/details/98205055