首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 驱动开发 >

ov9650摄像头曝光控制有关问题

2012-04-07 
ov9650摄像头曝光控制问题目的:禁用AEC(auto-exposurecontrol,自动曝光控制),自己设定曝光时间问题:从Data

ov9650摄像头曝光控制问题
目的:禁用AEC(auto-exposure   control,自动曝光控制),自己设定曝光时间
问题:从DataSheet上发现AEC控制寄存器有两个,分别如下
Address   RegisterName   DefaultValue     R/W     Description
13COM8             8F                 RW       Common   control   8
其中
Bit[7]:   Enable   fast   AGC/AEC   algorithm
Bit[6]:   AEC-Step   size   limit(used   only   in   fast   condition   and   COM5[0]   is   low0:   Fast   condition   change   maximum   step   is   VSYNC1:   Unilimted   step   size
Bit[5]:   Band   filtering   ON/OFF
Bit[4]:   Reserved
Bit[3]:   Enable   AEC   time   can   be   less   than   1   line   option
Bit[2]:AGC   enable
Bit[1]:   AWB   enable
Bit[0]:   AEC   enable

14COM94ARWCommon   Control   9
其中
Bit[7]:   reserved
Bit[6:4]:   Automatic   gain   Ceiling-Maximum   AGC   value
Bit[3]:   Exposure   timing   can   be   less   than   limit   of   banding   filter   when   light   is   too   strong
Bit[2]:   Data   format   -   VSYNC   drop   option
                0:   VSYNC   always   exists
                1:   VSYNC   will   drop   when   frame   data   drops
Bit[1]:   Enable   drop   frame   when   AEC   step   is   larger   than   VSYNC
Bit[0]:   Freeze   AGC/AEC

控制AEC值的寄存器如下,
04COM100RWCommon   Control   1
其中
Bit[1:0]:   AEC   low   2   LSB(See   Register   AECHM   for   AEC[15:10],and   AECH   for   AEC[9:2])

10AECH40RWExposure   value  
其中
Bit[7:0]:   AEC[9:2](see   register   AECHM   for   AEC[15:10]   COM1   for   AEC[1:0]

A1AECHM40RWExposure   value
其中
Bit[7:6]:   reserved
Bit[5:0]:   AEC[15:10]

通过设置COM8中的Bit[0]为1和0可以分别启用和禁用AEC功能,但无论是否启用AEC读出的AEC值都为0x100,最初初始化时AEC的值为0x00,
并且拍摄过程中无论向AEC值寄存器中写入什么值读出的总是0x100。请问当我禁用AEC功能时应该控制哪些寄存器来设定曝光时间。
网上的资料说ov的曝光时间是通过控制行频(HSYNC)来控制曝光时间,是否要找到此类寄存器,DataSheet上好像没有说明。哪位有经验的朋友请指教,不胜感激!谢谢!

[解决办法]
以前做过ov7648的。
启用AEC功能后,曝光值随光线强弱的不同,读数也不同(对于你的应该就相当于COM8中的Bit[0]置为1)。
应该是光线越强,曝光值越小。如果你启用了AEC功能,向AEC值寄存器写入是没有用的,它会按自己的“感觉”自动调节的。

禁用AEC功能后,设值后应该是有变化的啊……
[解决办法]
看了DataSheet
是不是Com9中的
bit[3]要设置1
bit[0]要设置0
另外AECHM 寄存器bit[5-0]要设值,AECH寄存器要设值


[解决办法]
没看明白你写的:P
你变换下光的强弱(最好在亮的地方和很暗的地方对比下),读下这个 Bit[1:0]: AEC low 2 LSB 看有变化没。
光线强时,也许你觉得光线已经变了,但曝光时间几乎没有变化。

热点排行