ov7725摄像头调试经验-寄存器配置

     之前调过一款摄像头,是MT9V034, 最近在调的是OV7725摄像头,感觉OV7725摄像头比MT9V034要难,特别是寄存器配置,要想玩转一款摄像头,必须要熟悉它的寄存器配置,而且要亲自去调试,然后才能对它有很好的理解。下面是自己的一点见解,可能不完全对,不过希望对初学者有所帮助吧。

一、将所有寄存器的值复位到默认值状态。

   寄存器地址       寄存器名称      寄存器值

     0x12                COM7                   0x80      //复位

二、 设置图像输出格式。

   寄存器地址       寄存器名称      寄存器值

    0x12                  COM7               0X40    //QVGA(320*240 ),YUV输出格式

    0x29                  HOutSize      0X50 //    QVGA(320*240), 0x28  (160)

    0x2C                 VOutSize       0X78 //   QVGA (320*240),0x3C  (120)

    0x17                  HSTART        0X3F     //QVGA(320*240 )

    0X18                 HSIZE             0X50     //QVGA(320*240 )

    0X19                 VSTRT            0X03   //QVGA(320*240 )

    0X20                 VSIZE             0X78     //QVGA(320*240 )

----------------------------------------------------------------------------------------------------------------------------------

12 COM7 00 RWCommon Control 7
Bit[7]: SCCB Register Reset
0: No change
1: Resets all registers to default values
Bit[6]: Resolution selection
0: VGA
1: QVGA
Bit[5]: BT.656 protocol ON/OFF selection
Bit[4]: Sensor RAW
Bit[3:2]: RGB output format control
00: GBR4:2:2
01: RGB565
10: RGB555
11: RGB444
Bit[1:0]: Output format control
00: YUV
01: Processed Bayer RAW
10: RGB
11: Bayer RAW

-------------------------------------------------------------------------------------------------------------------------------


三、和图片曝光强弱有关的寄存器

1、自动曝光

   寄存器地址       寄存器名称      寄存器值
  0X0D                     COM4           0X40     //整个窗口进行自动曝光

--------------------------------------------------------------------------------------------------------------------------

0D COM4 41 RWCommon Control 4
Bit[7:6]: PLL frequency control
00: Bypass PLL
01: PLL 4x
10: PLL 6x
11: PLL 8x
Bit[5:4]: AEC evaluate window
00: Full window
01: 1/2 window
10: 1/4 window
11: Low 2/3 window
Bit[3:0]: Reserved
-------------------------------------------------------------------------------------------------------------------------

0x13                   COM8             0XFF       //     打开自动增益(AGC)、自动白平衡(AWB)、自动曝光(AEC)

-------------------------------------------------------------------------------------------------------------------------

13 COM8 8F RWCommon Control 8
Bit[7]: Enable fast AGC/AEC algorithm
Bit[6]: AEC - Step size limit
0: Step size is limited to vertical blank
1: Unlimited step size
Bit[5]: Banding filter ON/OFF
Bit[4]: Enable AEC below banding value
Bit[3]: Fine AEC ON/OFF control
Bit[2]: AGC Enable
Bit[1]: AWB Enable
Bit[0]: AEC Enable
-----------------------------------------------------------------------------------------------------------------------------------


0X24                  AEW                  0X40                    //控制自动曝光强弱


---------------------------------------------------------------------------------------------------------------------------------------------

24 AEW 75 RW AGC/AEC - Stable Operating Region (Upper Limit)
----------------------------------------------------------------------------------------------------------------------------------------------

0X25                  AEB                  0X15                     //控制自动曝光的强弱

----------------------------------------------------------------------------------------------------------------------------------------------------

25 AEB 63 RW AGC/AEC - Stable Operating Region (Lower Limit)
------------------------------------------------------------------------------------------------------------------------------------------------------

0X26                   VPT                   0X32                //快速模式工作区

---------------------------------------------------------------------------------------------------------------------------------------------------------------

26 VPT D4 RWAGC/AEC Fast Mode Operating Region
Bit[7:4]: High nibble of upper limit of fast mode control zone
Bit[3:0]: High nibble of lower limit of fast mode control zone
-----------------------------------------------------------------------------------------------------------------------------------------------------------------

0XA6                 SDE                0X24                 //使能控制图片亮暗的寄存器


---------------------------------------------------------------------------------------------------------------------------------------

A6 SDE 00 RWSpecial Digital Effect Control
Bit[7]: Reserved
Bit[6]: Negative image enable
Bit[5]: Gray scale image enable
Bit[4]: V fixed value enable
Bit[3]: U fixed value enable
Bit[2]: Contrast/Brightness enable
Bit[1]: Saturation enable
Bit[0]: Hue enable

----------------------------------------------------------------------------------------------------------------------------------------

0X9B              BRIGHT               0X08           //定义自动曝光时图片的亮度增益,此值越大,图片越亮


--------------------------------------------------------------------------------------------------------------------------

9B BRIGHT 00 RW Brightness Control

--------------------------------------------------------------------------------------------------------------------------

0XAB            SIGN                   0X06         //定义BRIGHT   的高位是正数,还是负数,如果为0x0e,则图片亮度是负的;0-255,图片越来越亮;0 ~ -127,图片越来越亮

-----------------------------------------------------------------------------------------------------------------------------------

AB SIGN 06 RWSign Bit for Hue and Brightness
Bit[7:4]: Reserved
Bit[3]: Brightness sign bit
Bit[2]: Reserved
Bit[1]: Sign bit for HueSin (in Cr’ equation)
Bit[0]: Sign bit for HueSin (in Cb’ equation)

--------------------------------------------------------------------------------------------------------------------------------------

2、手动曝光

   寄存器地址       寄存器名称      寄存器值
  0X0D                     COM4           0X40     //整个窗口进行自动曝光

-----------------------------------------------------------------------------------------------------------------------

0DCOM441RWCommon Control 4
Bit[7:6]: PLL frequency control
00: Bypass PLL
01: PLL 4x
10: PLL 6x
11: PLL 8x
Bit[5:4]: AEC evaluate window
00: Full window
01: 1/2 window
10: 1/4 window
11: Low 2/3 window
Bit[3:0]: Reserved

-----------------------------------------------------------------------------------------------------------------------



0x13                   COM8             0Xcc      //     关闭自动曝光(AEC)

------------------------------------------------------------------------------------------------------------------------------------

13COM88FRWCommon Control 8
Bit[7]: Enable fast AGC/AEC algorithm
Bit[6]: AEC - Step size limit
0: Step size is limited to vertical blank
1: Unlimited step size
Bit[5]: Banding filter ON/OFF
Bit[4]: Enable AEC below banding value
Bit[3]: Fine AEC ON/OFF control
Bit[2]: AGC Enable
Bit[1]: AWB Enable
Bit[0]: AEC Enable

------------------------------------------------------------------------------------------------------------------------------------------

0x08                AECH              0X00   //曝光值得高8位    ,改变AECH和AEC的值,可以改变图片亮度

---------------------------------------------------------------------------------------------------------------------------------------------------
08 AECH 00 RWExposure Value – AEC MSBs
Bit[7:0]: AEC[15:8] (see register
AECfor AEC[7:0
Automatically updated based on chip output format
----------------------------------------------------------------------------------------------------------------------------------------------------


0x10                 AEC                0X40   //曝光值得低8位

---------------------------------------------------------------------------------------------------------------------------------------------------

10 AEC 40 RWExposure Value
Bit[7:0]: AEC[7:0] (see register
AECHfor AEC[15:8])

-------------------------------------------------------------------------------------------------------------------------------------------------------





本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/462055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于ASCII字符的那些事儿

1、单字符一般用单引号加一个字符表示,比如字符1表示为‘1’,而数字1直接表示为1; char ch 1 ;int num 1;2、计算机用数字来存储字符,比如字符1,在计算机里面为49(十进制);而数字…

SQL Server Transactional Replication 中的 CommitBatchSize 和 CommitBatchThreshold 属性

最近遇到一个在SQL Server transactional replication 里关于CommitBatchSize 和CommitBatchThreshold设置的问题,BOL里面的解释很含糊:CommitBatchSize “Is the number of transactions to be issued to the Subscriber before a COMMIT statement is …

JqueryMobile学习之二---对话框

对话框 通过在链接中添加data-rel”dialog”的属性&#xff0c;可以使链接页面的显示方式变为对话框。给显示的对话框加入切换的效果也是一个不错的选择 例如我们将about的链接变成一个对话框并加入相应的切换效果。代码如下 <p><a href"#about" data-rel&q…

“leave the world behind”十一快乐出行

这个十一你打算怎么过&#xff1f;每天睡到自然醒&#xff0c;然后闷在家里埋头上网&#xff1f;选择晴朗好天气出去逛街&#xff0c;四处淘宝贝&#xff0c;淘美食&#xff1f;还是选择一个好的路线出去玩一周&#xff1f;其实行无论宅着还是选择出行&#xff0c;一定要让自己…

my_atio()代码出错原因,完全代码

1、//不明白这么简单的代码为什么会出错#includeint my_atoi(char *str);int main(void){char a[]" 12345";int b0;b my_atoi(a);printf("%d", b);getchar();return 0;}int my_atoi(char *str){char* p str;//char *p; p str;int inter_symbol 1;int …

分享一个文件上传工具类

文件上传状态枚举类&#xff1a; View Code 1 package com.hoo.enums;2 3 4 5 /**6 7 * <b>function:</b> 文件上传状态8 9 * package com.hoo.enums 10 11 * fileName UploadState.java 12 13 * createDate 2010-10-11 下午1…

静态库和动态库的区别

库是写好的&#xff0c;现有的&#xff0c;成熟的&#xff0c;可以复用的代码。现实中每个程序都要依赖很多基础的底层库&#xff0c;不可能每个人的代码都从零开始&#xff0c;因此库的存在意义非同寻常。 本质上来说&#xff0c;库是一种可执行代码的二进制形式&#xff0c;可…

257. Binary Tree Paths

1、问题描述 2、代码&#xff08;非本人所写&#xff0c;十分精彩的C代码&#xff09; int pathsNum(struct TreeNode* root); void Traverse(struct TreeNode* root, char** array, char* spre, int* pindex); char* stringAdd(char* s, int val);char** binaryTreePaths(stru…

项目中获取系统的用例的基本步骤

1、绘制关联图&#xff0c;用于定义系统与系统外部实体间的边界和接口的简单模型&#xff1b; 2、创建开发原型&#xff0c;当开发人员或用户不能明确某些需求时&#xff0c;开发一个系统原型&#xff0c;这样使得许多概念和可能发生的事更为直观明了&#xff1b; 3、分析可行性…

UE 查找和替换

今天07/06/2005 昨天07/05/2005 明天07/08/2005 查找内容&#xff1a;^([0-9][0-9]^)/^([0-9][0-9]^)/^(200[0-9]^) 替换为: ^3^1^2 今天20050706昨天20050705明天20050708 ParamByName(C_AGENCYNO).AsString:Trim(copy(s,42,3)); 查找内容&#xff1a;^(Trim(co…

服务器最小化安装后的优化脚本

服务器最小化安装后的优化脚本&#xff0c;此脚本在CentOS[5.5-5.8] x86_64系统下测试均顺利通过&#xff0c; 由于现在Linux服务器系统都是采用Kickstart批量安装的方式&#xff0c;此脚本可以由Puppet服务器推送执行&#xff0c;脚本内容如下所示&#xff1a;#!/bin/bash #添…

字符指针、字符串、字符数组、字符串数组

字符指针 比如代码char* pNULL&#xff1b;定义了一个字符指针p。 字符指针一般用来指向一个字符&#xff0c;或者指向一个字符串。 刚开始学习时&#xff0c;我以为有“字符串指针”的概念&#xff0c;也就是指向字符串的指针。其实没有这个概念&#xff0c;字符指针与字符串指…

static函数的申明

static 声明的变量在C语言中有两方面的特征&#xff1a; 1)、变量会被放在程序的全局存储区中&#xff0c;这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。 2)、变量用static告知编译器&#xff0c;自己仅仅在变量的作…

HDOJ树形DP专题之Centroid

题目链接 这题跟Balance Act那题差不多&#xff0c;求图的质点。我直接将那题改了一下提交&#xff0c;结果PE了一次&#xff0c;又WA了一次&#xff0c;最后发现是单case&#xff0c;多case的提交为什么WA呢&#xff1f; View Code 1 #include <stdio.h>2 #include <…

LAMP平台--部署Discuz论坛

环境&#xff1a;为了推广公司的产品并为客户服务提供一个交流平台&#xff0c;公司购买了一套Discuz论坛系统&#xff0c;要求安装到现有的LAMP服务器中&#xff0c;并简单划分论坛版块。需求&#xff1a;部署论坛服务器&#xff0c;安装Discuz论坛系统添加新区和版块产品发布…

C语言面试题大汇总

static有什么用途&#xff1f;&#xff08;请至少说明两种&#xff09; 1.限制变量的作用域 2.设置变量的存储域 7. 引用与指针有什么区别&#xff1f; 1) 引用必须被初始化&#xff0c;指针不必。 2) 引用初始化以后不能被改变&#xff0c;指针可以改变所指的对象。 2) 不存在…

链表创建为什么需要使用内存分配?

我们知道&#xff0c;在全局定义的结构体变量&#xff0c;存储全局数据区&#xff1b;在函数内定义的结构体变量&#xff0c;存储在栈区&#xff1b;使用malloc函数申请空间来存放结构体变量&#xff0c;则该结构体变量存储在堆空间中。 我们说的链表&#xff0c;其节点数据一…

我国三大坐标系的区别(西安80、北京54、WGS-84)

1、北京54坐标系(BJZ54) 北京54坐标系为参心大地坐标系&#xff0c;大地上的一点可用经度L54、纬度M54和大地高H54定位&#xff0c;它是以克拉索夫斯基椭球为基础&#xff0c;经局部平差后产生的坐标系。 1954年北京坐标系的历史&#xff1a; 新中国成立以后&#xff0c;我国大…

springside 4 web-init 启动

我初始化h2数据库&#xff0c; 然后把jar 放到 springside-4.0.0.RC2\examples\mini-web 中 &#xff0c;最后配置启动tomcat。 就出现这个错。 最开始我用 quick-start.bat &#xff0c;但总是执行到一半就 挂掉了。 提示spy 包没找到 。 这个是在装载 xml&#xff0c;解析成b…

ACM中java快速入门

2019独角兽企业重金招聘Python工程师标准>>> ACM中java快速入门 附&#xff1a; Chapter I. Java的优缺点各种书上都有&#xff0c;这里只说说用Java做ACM-ICPC的特点&#xff1a; (1) 最明显的好处是&#xff0c;学会Java&#xff0c;可以参加Java Challenge …