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在低电平时有效。

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 怎么用c语言编写单片机流水灯程序,单片机编程入门:单片机流水灯程序[通俗易懂]

    怎么用c语言编写单片机流水灯程序,单片机编程入门:单片机流水灯程序[通俗易懂]今天就来教教大家怎么玩玩51单片机,当然了,首先有一个必要的条件就是你必须要会c语言,目前大学里面有开的关于微机原理的课的,上课的时候,老师还说:“你们要多学学汇编语言,对你们以后学习单片机有用”,而事实上后来才发现c语言才是最重要的。要想玩单片机,就必须要知道最重要的是什么,对于一块51单片机的开发板来说,最重要的就是要认认真真的看它的原理图,原理图才是最重要的。今天先说说最基本的,就是怎么玩流…

  • 蓝屏代码0x000000be_电脑蓝屏0*000000ed怎么解决

    蓝屏代码0x000000be_电脑蓝屏0*000000ed怎么解决windows系统相信大家最怕的就是遇到蓝屏的问题了,不太好解决,这不有朋友反馈电脑出现蓝屏代码0x000000BE的问题,电脑此时已经不能用了,那么要怎么解决呢?如果不知道如何操作的话,不妨先试试小编教大家的方法。蓝屏代码0x000000BE是什么意思?0x000000BE错误表示硬件设备的驱动程序试图向只读内存错误地写入数据,这个错误一般是因为硬件设备驱动程序存在BUG或安装不正确引起的。解决…

  • 一款新型的智能家居WiFi选择方案——SimpleWiFi在无线智能家居中的应用

    一款新型的智能家居WiFi选择方案——SimpleWiFi在无线智能家居中的应用

  • Python正则表达式教程_python正则表达式匹配中文

    Python正则表达式教程_python正则表达式匹配中文????今天我们来学习python的正则表达式的部分,先说下为什么要学习这一部分呢,当然是因为正则表达式处理文本类型的数据实在是太方便了。为以后进入nlp领域打打基础!先给大家推荐一个网站:用于正则表达式验证.大致就长这个样子。这里写目录标题1.基础知识2.贪婪模式和非贪婪模式3.反斜杠的用途4.中括号的用法5.匹配启始和结束位置6.括号的用法—组选择7.正则表达式切割字符总结1.基础知识普通字符:普通字符的含义就是字节匹配他们。特殊字符:它们出现在正则表达式中,不是直接匹配他们,而是

  • 列举出linux文件和目录常用的命令_查看centos根目录下有哪些内容

    列举出linux文件和目录常用的命令_查看centos根目录下有哪些内容目录命令总览ls(英文全拼:listfiles):列出目录及文件名cd(英文全拼:changedirectory):切换目录pwd(英文全拼:printworkdirectory):显

  • python安装jieba库教程_pygame库

    python安装jieba库教程_pygame库方法一:使用pycharm里的检索项(此方法适用于需要使用pycharm的小伙伴)1、打开pycharm,在File下打开Settings。2、在ProjectInterpret菜单栏下,点击”+”号。3、在上方的检索框中输入需要下载的库的库名,点击下方InstallPackage。4、如出现:package”jieba”installsuccessfully的字样,库安装成功。方法二:自行下载第三方库通过指令安装1、…

发表回复

您的电子邮箱地址不会被公开。

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