ov7740摄像头_雷威视监控摄像头二码是无

ov7740摄像头_雷威视监控摄像头二码是无近日入手了一块正点原子家的OV7725摄像头模块,秉着小白尽可能学得透彻些的想法,选择了野火家的相同摄像头教学视频。链接如下:【单片机】野火STM32F103教学视频(配套霸道/指南者/MINI)【全】(刘火良老师出品)(无字幕)_哔哩哔哩_bilibili现对PPT和火哥所授内容进行整理:在各类传感器获取信息中,图像包含有最丰富的信息。但是摄像头模块仅用于获取输出图像,像利用摄像头进行人脸识别,图像识别之类功能,主要是依赖于识别算法,这是另外的技术。分类:摄像头按输出信号分类可分为模拟

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

近日入手了一块正点原子家的OV7725摄像头模块,秉着小白尽可能学得透彻些的想法,选择了野火家的相同摄像头教学视频。链接如下:【单片机】野火STM32F103教学视频 (配套霸道/指南者/MINI)【全】(刘火良老师出品) (无字幕)_哔哩哔哩_bilibili

现对PPT和火哥所授内容进行整理:

在各类传感器获取信息中,图像包含有最丰富的信息。但是摄像头模块仅用于获取输出图像,像利用摄像头进行人脸识别,图像识别之类功能,主要是依赖于识别算法,这是另外的技术。

分类:

摄像头按输出信号分类可分为模拟摄像头数字摄像头,而数字摄像头又可以根据图像传感器材料分为CCDCMOS两类。

接口类型:

数字摄像头有USB接口IEE1394火线接口千兆网接口。输出数字信号。

模拟摄像头多采用AV视频端子S-VIDEO。输出标准的模拟信号。

分辨率:

现在的数字摄像头分辨率一般从数十万到上千万;模拟摄像头的分辨率维持在41万左右,但由于输出的是模拟量,可以直接输入至电视或监视器,所以依据实际情况可以但没必要做那么高。

成像材料:

CCD是“电荷耦合器件”(Charge Coupled Device)的简称;

CMOS是“互补金属氧化物半导体”(Complementary Metal Oxide Semiconductor)的简称。

功耗:

CCD取像系统除了要多个电源外,其外设电路也会消耗相当大的功率。有的需要2~5W的功率;

CMOS光电传感器耗电量非常小,仅为CCD的1/8~1/10,有的只消耗20~50mW的功率。

现在主流的单反相机、智能手机都已普遍采用CMOS传感器。

OV7725摄像头
        镜头部件包含一个镜头座和一个可旋转调节距离的凸透镜,通过旋转可以调节焦距,正常使用时,镜头座覆盖在电路板上遮光,光线只能经过镜头传输到正中央的图像传感器,它采集光线信号,采集得的数据被缓存到摄像头背面的FIFO缓存中,然后外部器件通过下方的信号引脚获取拍摄得到的图像数据。若拆开摄像头座,在摄像头的正下方可看到PCB板上的一个方形器件,它是摄像头的核心部件,型号为OV7725的CMOS类型数字图像传感器。(勿触碰到,会影响成像质量)该传感器支持输出最大为30万像素的图像(640×480分辨率),它的体积小,工作电压低,支持使用VGA时序输出图像数据,输出图像的数据格式支持YUV(422/420)、YCbCr422以及RGB565格式。它还可以对采集得的图像进行补偿,支持伽玛曲线、白平衡、饱和度、色度等基础处理。

OV7725引脚图

OV7725传感器采用BGA封装(引脚在背面),引脚的分布如下:

ov7740摄像头_雷威视监控摄像头二码是无

 图中的非彩色部分是电源相关的引脚,彩色部分是主要的信号引脚;

管脚名称 管脚类型 管脚描述
RSTB 输入 系统复位管脚,低电平有效
PWDN 输入 掉电/省电模式(高电平有效)
HREF 输出 行同步信号
VSYNC 输出 场同步信号
PCLK 输出 像素时钟
XCLK 输入 系统时钟输入端口
SCL 输入 SCCB总线的时钟线
SDA I/O SCCB总线的数据线
D0…D9 输出 像素数据端口

所谓的SCCB总线,跟IIC基本一致(实际上SCCB总线也支持突发读写,所以可以说完全一致);

D0~D9,一般只取8根用来在VGA时序下每个时钟输出一个字节;

VGA时序输出:由HREF、VSYNC、PCLK和D0~D9数据线共同组成;

XCLK:系统时钟输入接口,摄像头内部自带有一个晶振。

OV7725功能框图

ov7740摄像头_雷威视监控摄像头二码是无

 控制寄存器——标号①处的是OV7725的控制寄存器,它根据这些寄存器配置的参数来运行,而这些参数是由外部控制器通过SCL和SDA引脚写入的,SCL与SDA使用的通讯协议SCCB跟I2C十分类似,在STM32中我们完全可以直接用I2C硬件外设来控制。

关于寄存器配置——于OV7725_datasheet文档中的Register Set(寄存器组)部分。最重要的是COM7寄存器,可负责配置输出分辨率等。

野火家将配置分辨率过程封装成了一个函数,可通过修改函数配置方便地修改分辨率。而且,生产OV7725的公司对寄存器组的文档描述并不完善,野火对寄存器的配置也都是部分来自网上流传、部分来自厂家。如果自己修改了某个寄存器的配置,可能会影响很大,但是并未在文档中记录。

所以建议如果不是特别感兴趣,没有必要去看寄存器组部分文档。

文档 OV7725 Software Application 也提供了许多寄存器的配置。后面讲解火哥不会介绍为什么往某个寄存器写入某个值,想探究的话自己找对应寄存器的描述(虽然可能找不到)自行理解。

通信、控制信号及时钟——标号②处包含了OV7725的通信、控制信号及外部时钟,其中PCLK、HREF及VSYNC分别是像素同步时钟、行同步信号以及帧同步信号,这与液晶屏控制中的VGA信号是很类似的。RSTB引脚为低电平时,用于复位整个传感器芯片,PWDN用于控制芯片进入低功耗模式。注意最后的一个XCLK引脚,它跟PCLK是完全不同的,XCLK是用于驱动整个传感器芯片的时钟信号,是外部输入到OV7725的信号;而PCLK是OV7725输出数据时的同步信号,它是由OV7725输出的信号。XCLK可以外接晶振或由外部控制器提供,若要类比XCLK之于OV7725就相当于HSE时钟输入引脚与STM32芯片的关系,PCLK引脚可类比STM32的I2C外设的SCL引脚。

感光矩阵——标号③处的是感光矩阵,光信号在这里转化成电信号,经过各种处理,这些信号存储成由一个个像素点表示的数字图像。

数据输出信号——标号④处包含了DSP处理单元,它会根据控制寄存器的配置做一些基本的图像处理运算(如白平衡、色度、饱和度等等)。这部分还包含了图像格式转换单元及压缩单元,转换出的数据最终通过 DO-D9引脚输出,一般来说我们使用8根据数据线来传输,这时仅使用D2-D9引脚。④区的FIFO是芯片内部的,相当于stm32的SARM芯片,用于缓存一些东西。而整个OV7725芯片还外接了一个FIFO缓存芯片。两者不同。

SCCB时序——外部控制器对OV7725寄存器的配置参数是通过SCCB总线传输过去的,而SCCB总线跟I2C十分类似(基本一致),所以在STM32驱动中可直接使用片上I2C外设与它通讯。

SCCB的三步写操作 “发设备地址”—>“发寄存器地址”—>“发数据” 与I2C的写操作一样;

SCCB的两步写操作和两步读操作配合使用 “发设备地址”—>“发寄存器地址”—>“再次发送设备地址”—>“读数据” 与I2C的读操作一样。

像素输出时序——主控制器控制OV7725时采用SCCB协议读写其寄存器,而它输出图像时则用VGA或QVGA时序,其中VGA在输出图像分辨率为480*640时采用,QVGA是Quarter(四分之一) VGA,其输出分辨率为240*320,这些时序跟控制液晶屏输出图像数据时十分类似。且QVGA的输出分辨率刚好与4.3寸的TFTLCD屏分辨率一致,故在实验中采用QVGA时序输出像素。后面的时序讲解也为QVGA时序。

(像素输出不用SCCB是因为SCCB只有一根数据线,输出太慢。用D0~D9作为数据线会快得多)

OV7725输出图像时,一帧帧地输出,在帧内的数据一般从左往右,从上到下,一个像素一个像素地输出(也可通过寄存器修改方向)。

ov7740摄像头_雷威视监控摄像头二码是无

若使用D2~D9数据线,图像格式设置为RGB565,进行数据输出时,D2~D9数据线会在1个像素同步时钟PCLK的驱动下发送1字节的数据信号,所以2个PCLK时钟可发送1个RGB565格式的像素数据。像素数据依次传输,每传输完一行数据时,行同步信号HREF会输出一个电平跳变信号,每传输完一帧图像时,VSYNC会输出一个电平跳变信号。

 

ov7740摄像头_雷威视监控摄像头二码是无

 理解时序图:

        HREF为低电平的时候,传输的电平无效,只有HREF为高电平时才有效。用D2~D9传输数据,每个像素同步时钟PCLK传输一个字节数据。所以根据RGB565(5+6+5=16bit=2byte),两个PCLK时钟能够传输一个像素点。

        PCLK由低变高时,D2~D9传输数据;PCLK由高变低时,D2~D9可以改变将要传输的数据。

        HREF用于控制(外接)FIFO,可以用来指示哪些信息是有效的。因为PCLK是一直不停跑的,所以D2~D9数据线中的数据也一直被发出。那么外部的控制器如何判断这些电平是否有效呢?总不可以全部数据都接收吧!因为数据无效期间HREF处于低电平,这样外部控制器可以在读取数据前先判断HREF是否为高电平,不是的话就不接收数据。

ov7740摄像头_雷威视监控摄像头二码是无
OV7725帧时序

每传输完一行数据时,行同步信号HREF会输出一个电平跳变信号,240*320的话,传输一帧图像数据,HREF会进行240次跳变。

每传输完一帧图像时,VSYNC会输出一个电平跳变信号。VSYNC在低电平时有效。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190246.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微信小程序onLoad、onShow、onHide、onUnload区别[通俗易懂]

    微信小程序onLoad、onShow、onHide、onUnload区别[通俗易懂]onLoad:页面第一次加载时触发,从跳转页面返回时不能触发,可以传递参数onShow:页面显示或从后台跳回小程序时显示此页面时触发,从跳转页面返回时触发,不能传递参数onHide:页面隐藏,例如使用wx.navigateTo只是打开新页面并不关闭原页面onUnload:页面被卸载,例如使用wx.redirectTo重定向一个页面原页面已经关闭当初始化或打开一个新…

    2022年6月15日
    377
  • webstorm的永久激活码2021【2021.8最新】

    (webstorm的永久激活码2021)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月26日
    251
  • C++函数模板(模板函数)详解

    C++函数模板(模板函数)详解定义用法:函数模板的原理延申用法2.1为什么需要类模板2.2单个类模板语法2.3继承中的类模板语法案例1:案例2:2.4类模板的基础语法2.5类模板语法知识体系梳理1.所有的类模板函数写在类的内部复数类:2.所有的类模板函数写在类的外部,在一个cpp中2.5总结关于类模板的几点说明:2.6类模板中的static关键字案例2:以下来自:C++类模板遇上static关键字…

    2022年4月4日
    50
  • Web Proxy Auto-Discovery Service[通俗易懂]

    Web Proxy Auto-Discovery Service[通俗易懂]WinHTTPWebProxyAuto-DiscoveryService服务处于正在运行状态。但是有一天早上来发现全部电脑都无法上网。PINGISA都不通。重新启动后正常。我检查系统日志里面有3条关于WEB代理的日志:1。TheWinHTTPWebProxyAuto-DiscoveryServicehasbeenidlefor15minutes,i

    2022年6月21日
    104
  • springboot集成elasticsearch注意事项

    springboot集成elasticsearch注意事项一、elasticsearch基础  这里假设各位已经简单了解过elasticsearch,并不对es进入更多的,更深层次的解释,如有必要,会在写文章专门进行es讲解。  Elasticsearch是一个基于ApacheLucene(TM)的开源搜索引擎。无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。  但是,Lucene只是一个…

    2022年6月24日
    20
  • 3d工具收集_3d图表走势综合版

    3d工具收集_3d图表走势综合版Poser是Metacreations公司推出的一款三维动物、人体造型和三维人体动画制作的极品软件。用过Poser2与Poser3的朋友一定能感受到Poser的人体设计和动画制作是那么的轻松自如,制作出的作品又是那么生动。而今Poser更能为你的三维人体造型增添发型、衣服、饰品等装饰。让你的设计与创意轻松展现。Mixamo:在线3D动漫角…

    2022年8月23日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号