文档库 最新最全的文档下载
当前位置:文档库 › 毕业论文

毕业论文

I

基于USB标准视频的自动曝光调整

摘要

能得到清晰逼真图像的摄像头总是具有划时代的意义,图像质量的改良需要综合sensor和PC-CAM controller的合理搭配和设置,也需要F/W和H/W的天衣无缝的连接,做好以上工作那么获得高质量的图像就显得很简单了。

本课题主要针对216系列的摄像头为研究对象,所采用的PC-CAM controller型号为SN9C259,与其搭配的sensor为OV7740。在设计过程中将包括硬件和软件两方面,在软件中主要实现AEC, AGC, AWB, FLIP,MIRROR,reset以及Audio等功能的控制,当然要获得高质量的图像仅仅对这些进行控制是远远不够的,还要对gamma,color matrix 以及sharpness等进行设置,在将sensor与backend连接时我们还需要点亮sensor,这就要设置sensor initial table ,在这个table中将重点包含sensor的plck, H_sync, V_sync的频率和极性的设置,以及window大小的设置。216系列的initial table有专门的table edit tool软件(见附录Ⅰ和附录Ⅱ)来自动生成sensor的initial table。在点亮sensor的基础上再进行图像的hue, saturation, sharpness, AEC, AWB, AGC 等的调整。

本课题将以AEC为主要研究对象,在曝光调整中AEC和AGC需要配合使用才能更好更快的达到image brightness的要求,与AEC/AGC相关的算法有两种,一种是average-based algorithm,另外一种是histogram-based algorithm,曝光虽然有F/W 可以使不通过手动来调节曝光强度,但是在AEC的过程中为了达到很好的曝光效果,曝光需要遵循一个原则,曝光时间需要是(1/100)s或者(1/120)s的整数倍。在sensor 与backend之间进行通信时,将借助I2C总线,I2C总线使得对硬件中功能模块的维护和修改变得简单,同时也使功能模块的增加和删除变得容易。

关键词:AEC, 曝光时间,average-based 算法

II Auto Expose to USB Standard Video

ABSTRACT

It has an epoch-making meaning to develop a camera that can present a clear and lifelike picture; the improvement of the image quality is depending on not only the perfect matching and setting of the sensor and PC-cam controller, but also the supporting of the flawless link between the firm-ware and hard-ware.

This thesis is aimed at the series of 216, we choose SN9C259 for PC-cam controller and OV7740 for sensor. In order to get a high image quality camera we should design it with firm-ware and hard-ware, the firm-ware can control the function of AEC, AGC, AWB, FLIP,MIRROR,reset, audio and so on, but for a high image quality camera ,it has an indispensible requirement for suitable gamma, color matrix, sharpness and so on, we should combine the F/W and the H/W well. When we link the sensor and the backend ,the first thing we must do is to light the sensor ,the sensor initial table is the most impotent thing for people to light a sensor ,the initial table must contain the setting of plck, H_sync, V_sync ,the size of window and the resetting for firm-ware. It is special for 216,because it has a Table edit tool to produce a sensor initial table automatically, what’s more, it also have specialize command for 216 to establish the initial table. After lighting a sensor, what we should do next is to regulate the hue, saturation, sharpness, AEC, AWB, and AGC of the image.

For this thesis, AEC is the most impotent part for searching, but when exposure happened, in order to reach the required image brightness quickly; AEC should work with AGC all the time. There are two algorithms for AEC and AGC to adjust the image brightness, the one is average-based algorithm and the other one is histogram-based algorithm, the algorithm can make the process of exposure automatically, for getting a stable picture, we should make sure that the time of exposure must be an integrate multiple of 1/100 or 1/120, otherwise the picture on the monitor will flick all the time, this phenomenon is called banding or flicking. We always use the I2C to support the communication of the sensor and the backend. I2C bring the factory and the designer much convenience.

KEY WORDS: AEC, exposure time, average-based algorithm

III

目录

基于USB标准视频的自动曝光调整中文摘要 (Ⅰ)

基于USB标准视频的自动曝光调整英文摘要 (Ⅱ)

第一章图像传感器的历史简介 (1)

1.1 图像传感器的诞生 (1)

1.2 固态图像传感器(Solid-State Image Sensor) (1)

1.3 CCD图像传感器 (1)

1.4 CMOS图像传感器 (2)

1.5 成像系统以及图像传感器组成成像系统的概念 (2)

1.5.1成像系统 (2)

1.5.2 图像传感器组成的成像系统的工作方式 (2)

1.5.2.1 受光 (3)

1.5.2.2 感光 (3)

1.5.2.3 信号读出 (3)

1.5.2.4 信号的传输及记录保存 (3)

1.5.2.5 图像再现 (3)

1.6 CMOS图像传感器的基础 (3)

1.6.1 CMOS图像传感器的组成结构 (3)

1.6.2 CMOS SENSOR的框架结构及内部组成 (5)

1.6.2.1 像素矩阵 (6)

1.6.2.2 模拟放大 (7)

1.6.2.3 DAC偏置电流校正部分 (7)

1.6.2.4 ADC转换电路 (8)

1.6.2.5 I2C总线 (8)

1.6.2.6 Timing Control (8)

1.6.3 CMOS SENSOR的工作方式 (8)

1.6.4 CMOS SENSOR的性能参数介绍 (8)

IV

1.6.5 CMOS图像传感器与CCD的比较 (8)

第二章 I2C (10)

2.1 I2C总线的特征 (10)

2.2 起始和停止条件 (11)

2.3 传输数据 (11)

2.3.1 字节格式 (11)

2.3.2 响应 (12)

2.4 七位地址格式 (12)

2.4.1 普通传输模式 (12)

2.4.2 复合传输模式 (13)

2.5 七位寻址 (14)

2.6 I2C时序图举例 (14)

2.6.1 读图方法介绍 (14)

2.6.2 实例介绍 (15)

2.6.2.1 写操作读图介绍 (15)

2.6.2.2 读操作读图介绍 (15)

第三章摄像头与高质量图像的获得 (17)

3.1 PC-CAM Controller (17)

3.1.1 SN9C259简介 (17)

3.1.2 AE/AWB简介 (17)

3.2 SENSOR (19)

3.2.1 点SENSOR (19)

3.2.2 参数调整 (22)

3.2.3 SENSOR小结 (23)

3.3 点SENSOR中常出现的问题 (24)

第四章自动曝光调整 (26)

4.1 AEC概述 (26)

4.2 与OV7740相关的曝光调整寄存器简介 (26)

V

4.3 曝光理论介绍 (27)

4.4 OV7740的AEC和AGC调整 (29)

4.4.1 AEC的曝光时间设置 (32)

4.4.2 AEC与AGC的关系 (33)

4.4.3 SMOOTH AE (34)

4.5 AE F/W 介绍 (36)

4.6 曝光调整过程中的常见问题 (38)

致谢 (40)

参考文献 (41)

附录Ⅰ (42)

附录Ⅱ (43)

附录Ⅲ (44)

附录Ⅳ (45)

附录Ⅴ (46)

1

基于USB标准视频的自动曝光调整

第一章图像传感器的历史简介

1.1 图像传感器的诞生

在图像传感器出现前,胶片是唯一记录保存图像的工具,而胶片所保存的图像在远距离传输以及后期处理方面存在着难以逾越的障碍。而图像传感器的目的是将拍摄的图像转化为电信号进行远距离传输、保存以及数字化保存和后期处理。那么图像传感器又是何时出现在人们生活中的呢?

最早出现的是1923年由V.K.兹沃雷金发明的光电摄像管,它是利用在真空中可自由操作电子运动的性质制作的。在真空管中放置的云母板上面涂抹具有光电效应的铯(Cs),光线通过镜头在云母板上成像,此处产生的电荷,经放出的电子束扫描,取出信号电流。

此后,一个又一个的改良感光度的摄像管被发明,如超正析摄像管(1946年),光导摄像管,硒砷碲摄像管,雪崩倍增靶(HARP)摄像管等,逐渐担任产生电视图像的角色。

从原理可知,摄像管无法做到接通电源后立即工作,且工作电压高,功耗大,因燃烧寿命短等缺点。在以后的日子里,摄像管会被固态图像传感器取代。

1.2 固态图像传感器(Solid-State Image Sensor)

用于晶体管或者IC的Si(硅)等半导体材料,具有将接收的光转换成电的光电变换性质。如果把单片IC基台的硅基板作为摄影面,并有规则的排列光电二极管(photodiode),然后依次将光电二极管的光电流以某种方式取出,则此基板将具有图像传感器的功能。

最早可以产生图像,以像素平面排列的固态图像传感器,其构造与目前的CCD不同。例如发表于1966年的光敏晶体管平面排列的图像传感器;1967年发表了将光电二极管以平面矩阵排列,利用扫描脉冲与MOS晶体管,以XY地址方式取出信号的方法。这种方法虽然实现了实用化,但在与CCD的竞争中失败,成为后来的CMOS传感器的原型。

1.3 CCD图像传感器

1969年,CCD(Charge Coupled Device,电荷耦合器件)由美国贝尔实验室的维拉·博伊尔(Willard. S. Boyle)与乔治·史密斯(George. E. Smith)所发明,两位发明者也因此获得了2009年诺贝尔新物理学奖。

由于CCD具有储存信号电荷后传输的功能,可广泛应用于内存、显示器、延迟元件等。关键应用的CCD图像传感器,利用了被称为帧转移(Frame Transfer)方式(FT-CCD)的简单构造,于1971年由贝尔实验室发表。

陕西科技大学毕业论文 2

从CCD首次发表至今,为了达到实用化进行了众多的研究。早期研究多以构造简单的为主,而目前应用最为广泛的CCD构造一般为IT-CCD(Interline Transfer 行间转移),另外还有一种FIT-CCD(Frame Interline Transfer 帧行间转移)。在信号处理方面,也开发出了抑制CCD内部噪声的相关双采样电路(CDS: Correlated Double Sampling )等。同时,为了弥补增大像素密度,缩小像素尺寸而引起的感光度下降的问题,还开发出了片上微镜头(Micro-Lens)。

除CCD外,同期出现的固体传感器还有MOS型图像传感器(CMOS图像传感器原型),CID(Charge Injection Device,电荷注入器件),CPD(Charge Priming Device,电荷引发器件)。此外,还有属于CCD之一的CSD(Charge Sweep Device,电荷扫描器件)。然而在众多的传感器中,实用化的只有CCD与CMOS图像传感器。

1.4 CMOS图像传感器

作为CMOS的原型,旧式的MOS型图像传感器,其像素不具有信号电荷放大功能,故归为PPS(Passive Pixel Sensor,无源像素传感器);而如若像素内具有信号放大功能,则为APS(Active Pixel Sensor,有源像素传感器),CMOS传感器多为APS。CMOS传感器在20世纪70年代在美国航空航天局(NASA)的喷气推进实验室(JPL)诞生,与CCD 几乎同时起步。

在发展初期,CMOS一直存在像素尺寸大,信噪比小,分辨率低,灵敏度低,同时有固有噪声(FPN: Fixed Pattern Noise)等缺点。而同期的CCD则灵敏度高,噪声低,像素尺寸小,所以长期以来CCD一直主宰图像传感器的市场。

1.5 成像系统以及图像传感器组成成像系统的概念

1.5.1 成像系统

在图像传感器未出现前,传统的成像系统是由镜头,暗箱及胶片组成。光线通过镜头汇聚到处在焦平面的胶片上,使胶片感光(感光材料是卤化银,发生的是化学反应),从而记录下物体发射或反射的光。后期通过将感光后的胶片显影,定影,冲印将记录的图像再现在人们面前。在此成像系统中,镜头的作用是汇聚光线到焦平面,而胶片则完成了受光、感光、图像信息记录;图像再现则是显影、定影、冲印完成。

在图像传感器出现后,由于图像传感器的工作是基于物理方式,有别与胶片的化学方式,同样的图像传感器组成的成像系统会比传统的分工更为明确和复杂些。

1.5.2 图像传感器组成的成像系统的工作方式

在传统成像系统中,成像过程由受光,胶片感光即可完成(信息记录伴随胶片感光发生的化学反应而完成)。而图像传感器组成的成像系统要经过受光、感光、信号读出、

3

基于USB标准视频的自动曝光调整

信号传输、信息的记录与保存才可完成,最终再通过某种手段将图像再现。

1.5.

2.1 受光

光线通过镜头,汇聚于处在焦平面的传感器摄影面上。

1.5.

2.2 感光

传感器表面接受光照后,把接收的光信号转换为电信号,即进行光电转换,完成感光的动作。

1.5.

2.3 信号读出

图像传感器利用光电转换原理将光信号转为电信号后,必须将电信号从传感器内部取出才可以进行下一步的动作。读出动作可以有多种,如FT、IT、X-Y 地址方式等,读出方式根据传感器构造不同而不同。

1.5.

2.4 信号的传输,记录保存

图像传感器的出现目的就是为了方便图像的传输,记录保存及后期处理,传输和记录保存随着时代的不同而发生着巨大的变化。早期通过微波传输,现在则可通过网络等。记录保存方式也多种多样,从磁带到现在的硬盘,闪存等。

1.5.

2.5 图像再现

基于图像传感器的图像再现可谓多种多样,你可以去冲印,当然也可以通过电视或者显示器去观看。

1.6 CMOS图像传感器的基础

1.6.1 CMOS图像传感器的组成结构

不同与CCD的特殊硅集成工艺,CMOS SENSOR是基于标准的CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体) LSI制造工艺制作而成。这样的好处就是可以很方便的在传感器上集成放大电路、A/D转换电路、缓存、图像处理单元等,从而形成一个SOC系统。如图1-1,1-2,1-3为一颗CMOS sensor的外形图,结构示意图,和剖视图。

陕西科技大学毕业论文 4

1-1 美光MT9V011 CMOS sensor外观

1-2 CMOS sensor结构示意图

1-3 CMOS sensor剖视图

以上三幅图只是CMOS sensor的外部结构图,其内部结构为感光二极管、MOS管等,在这里不做过多说明。通过1.1(b)、(c)可知,CMOS sensor在外部结构上可大致分为三层:

5

基于USB标准视频的自动曝光调整

(1)Microlens层:在最外层,有许多的微型透镜组成,作用是把入射光线尽可能多的聚集到像素的感光区。

(2)分色滤光片层(Color Filter):这一层覆盖了一个RGB的滤光片在感光区域上,作用是将入射光过滤,分成R,G,B三原色。

(3)感光层:感光层接受光线照射,将光信号转变为电流信号,放大输出。感光层有X*Y个像素组成,每个像素的大致结构如图1-4所示:

图1-4 CMOS sensor的像素单元结构示意图

由图1-4可以看出,放大电路,辅助回路占去了像素面积的2/3,而感光区只占到了1/3,这就造成CMOS sensor的开口率低(开口率:Aperture ratio,指在单位像素内,实际感光区域的面积与单位像素总面积的比率。显然开口率越大,能感光的区域越大,单位像素产生的电荷愈多,灵敏度越高。),灵敏度不如CCD高。图1-5为CCD像素结构示意图。

图1-5 CCD像素单元结构示意图

1.6.2 CMOS SENSOR的框架结构以及内部组成

陕西科技大学毕业论文 6

图 1-6 CMOS sensor basic diagram

图1-6为一个CMOS SENSOR的基本框架结构图,由图可知,一个CMOS sensor大概有像素矩阵(Pixel/Image Array)、模拟放大、DAC偏置电流校正部分(Offset Correction)、ADC转换电路、I2C总线(Serial Interface)、Timing Control等基本结构组成。

1.6.

2.1像素矩阵(Pixel/Image Array)

这部分的功能很简单,就是感受光照,将光信号转化为电信号。图1-7所示,为现在常用的拜耳阵列(Bayer color array)

7

基于USB标准视频的自动曝光调整

图1-7 拜耳像素矩阵排列

1.6.

2.2模拟放大(图1-6PGA所示)

这部分的功能是放大从Image Array输出的电信号,用于进行颜色,增益等控制。不同厂家生产的sensor这部分的划分也不一样,有些是RGB Color Gain与Global Gain 分开,有些是在一起的。RGB Color Gain是用于白平衡控制的。

1.6.

2.3 DAC偏置电流校正部分(Offset Correction)

陕西科技大学毕业论文8 这部分的工作是进行电流校正,相当于一个归零作用。

1.6.

2.4 ADC转换电路(10-bit ADC)

转模拟信号为数字信号,一般的CMOS sensor内置10-bit ADC。

1.6.

2.5 I2C总线(Serial Interface)

I2C串行总线,CMOS sensor与外界通讯。外加的DSP控制器可以通过这个总线对CMOS sensor进行初始化,并控制其工作状态。

1.6.

2.6 Timing Control

这部分产生,控制并输出sensor工作需要的各种时钟信号,包括Vsync,Hsync,Pclk。这几个时序信号是sensor工作必备的,也是理解sensor如何工作的基础。另外在某些支持ISP功能的sensor中,Timing Conrol还控制AE。

1.6.3 CMOS SENSOR的工作方式

一颗数字IC或者数模混合IC工作,一般需要时钟信号。CMOS sensor是一颗典型的数模混合IC,它需要一个外部时钟信号来工作。一个时钟信号给sensor后,sensor 内部会产生一个主时钟,一般主时钟频率跟外部时钟相同,或者经过PLL倍频到外部时钟的某个倍数。再通过内部时钟控制电路产生一个Pclk,一般的像素时钟是主时钟的一半,或者更小点,是主时钟通过除频得到的。Pclk确定后,再根据图像大小,曝光长短,产生相应的Hsync,Vsync信号。

1.6.4 CMOS sensor的性能参数介绍:

当我们拿到一个CMOS sensor的Datasheet的时候,厂商一般会把这颗sensor的基本的性能参数罗列出来,这些参数大致有:

(1)分辨率(Active Image/Array Size ):有效像素总数,一般以百万像素为单位(Mega Pixel)。

(2)光学格式(Optical Format):sensor感光区大小的参数,这决定了这颗sensor 所用镜头的大小,也叫Lens Size。

(3)输出格式(Output Formats):sensor输出的数据格式。常用的输出格式有:YUV/YCbCr422,RAW RGB等。

(4)最大帧速率(Max Frame Rate)

(5)灵敏度(Sensitivity):X V(mV)/(lux*sec)

(6)动态范围(Dynamic Range):X dB。

(7)信噪比(S/N Ratio):X dB。

9

基于USB标准视频的自动曝光调整

1.6.5 CMOS图像传感器与CCD比较

(1)制造工艺:CCD是一种在硅集成电路工艺上制作的图像传感器,而CMOS是在金属氧化物半导体集成电路工艺上制作的图像传感器。由于CMOS图像传感器使用的是标准的CMOS工艺,它可以方便的在片上集成缓存,放大器,A/D转换,图像处理单元等,形成一个SOC系统。CCD则由于工艺上的不允许,需要外加A/D转换,驱动电路,数字信号处理器等。这无形中增加了使用CCD的成本。

(2)数据读取:CCD的读出方式是整行读出,电荷耦合器存储的电荷信息,在同步信号控制下一位一位地实施转移后读取。整行读取数据后,再通过电荷/电压转换器和放大器,这种构造产生的图像具有低噪音、高性能的特点。但是CCD需采用不同的时钟信号、偏压技术,因此整个构造复杂,增大了耗电量,也增加了成本。CCD的这种读出方式,彻底避免了fixed-pattern noise (固定图样噪声,FPN)和temporal noise(暂时噪声)。而这两种噪声在CMOS上是无法避免的。由于CCD是将一个感光区域的电荷转移到相邻一个直到整行数据移出,所以一旦CCD在物理上有一个像素无法工作,那么整行数据就无法读出。这也就造成CCD的成品率低,生产成本高。

而CMOS图像传感器在结构上与CCD有着很大区别,CMOS SENSOR的一个像素构成上除了感光区域外,还集成了放大电路(有些还集成A/D转换电路)。CMOS的是按单个像素读出的。由于结构上每个像素有个放大器,而每个放大器不可能做到完全一致,这种不均匀性引起了固定图像噪声(FPN)。但由于CMOS读出是点读出方式,故物理上有一个坏点不会影响整行数据的读出,现在的可以利用算法将坏点补偿掉,提高了产品的良率,这是CCD无法比拟的。

(3)灵敏度:CMOS的每个像素都是由感光二极管和几个晶体管组成的放大电路,组成,而CCD的每个像素只是感光区域和电荷储存区。所以在相同尺寸像素数相同情况下,CMOS 的开口率远小于CCD,这就造成CMOS的灵敏度低于CCD的。

其他方面,CMOS采用标准的CMOS集成电路工艺制造,所以成本很低,而CCD的工艺不是通用工艺,成本很高;另外,由于CCD的数据传输方式决定它本身只要有一个坏点整颗芯片就报废,所以成品率很低(最高50%),而CMOS的成品率很高。CCD的电荷移动需要加很高的电压,所以耗电量非常大;而现今的CMOS大都采用,所以耗电量很低。另外,CMOS采用并行传输数据,利于高速图像传输,而CCD想达到高速传输的成本很高,也很困难。

陕西科技大学毕业论文10

第二章 I2C

I2C协议是由PHILIPS公司在1992年最先提出,乃PHILIPS公司专利。只要购买Philips的I2C元件同时传递了一个在Philips的I2C 专利下,在I2C 系统使用元件使系统符合由Philips定义的I2C规范的许可证。任何使用I2C的元件都必须得到PHILIPS公司的授权。

I2C的普及使得厂商和设计人员都得益,在设计方面由于I2C使得SOC系统的整个功能模块互不联系,相互之间没有影响,因此在对系统的某一功能进行修改和在系统中增加功能的时候就不会有牵一发而动全身的效应,只需要在相应的模块中进行修改而不用考虑对其他模块的影响,使得设计变得更加简单,系统的可操作性和可开发性大大增强。对于厂商来说I2C只需要两根线就可以把整个系统激活而且可以很好的运转,相对于以往的三根总线具有很强的可操作性,使生产成本降低,工作量减少。

I2C两线――串行数据SDA 和串行时钟SCL 线在连接到总线的器件间传递信息。每个器件都有一个唯一的地址识别。无论是微控制器,LCD驱动器,存储器或键盘接口,都可以作为一个发送器或接收器,由器件的功能决定。很明显LCD驱动器只是一个接收器,而存储器则既可以接收又可以发送数据。除了发送器和接收器外,器件在执行数据传输时也可以被看作是主机或从机。主机是初始化总线的数据传输并产生允许传输的时钟信号的器件。此时任何被寻址的器件都被认为是从机。在I2C总线上,无论主机是接受方还是发送方,时钟信号永远是主机控制。

2.1 I2C总线的特征

(1)只要求两条总线线路一条串行数据线(SDA)一条串行时钟线(SCL)。同时SDL和SCL都是双向线路,分别通过上拉电阻连接到正的电源电压。SDA 线上的数据必须在时钟的高电平周期保持稳定。数据线的高或低电平状态只有在SCL 线的时钟信号是低电平时才能改变。

11

基于USB标准视频的自动曝光调整

图2-1

(2)每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址;主机可以作为主机发送器或主机接收器。

(3)它是一个真正的多主机总线,如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁防止数据被破坏。

(4)串行的8 位双向数据传输位速率在标准模式下可达100kbit/s。快速模式下可达400kbit/s。高速模式下可达3.4Mbit/s。

(5)片上的滤波器可以滤去总线数据线上的毛刺波,保证数据完整。

(6)连接到相同总线的IC 数量只受到总线的最大电容400pF 限制。

2.2 起始和停止条件

在I2C 总线中,唯一出现SCL高电平SDA电平变化的是被定义为起始S 和停止P的情况。其中一种情况是在SCL 线是高电平时SDA 线从高电平向低电平切换,这个情况表示起始条件。当SCL 是高电平时SDA 线由低电平向高电平切换,表示停止条件。起始和停止条件一般由主机产生总线在起始条件后被认为处于忙的态,在停止条件的某段时间后总线被认为再次处于空闲状态。总线的空闲状态表现为SDA和SCL都一直保持高电平状态。如果产生重复起始Sr 条件而不产生停止条件,总线会一直处于忙的状态。此时的起始条件S和重复起始Sr 条件在功能上是一样的。因此在本文档的剩余部分符号S 将作为一个通用的术语,既表示起始条件又表示重复起始条件除非有特别声明的Sr。如图2-2所示。

图2-2 起始和停止条件时序图

如果连接到总线的器件合并了必要的接口硬件(硬件I2C),那么用它们检测起始和停止条件十分简便。但是如果没有这种硬件接口的微控制器,用2个I/O口模拟I2C总线,在每个时钟周期至少要采样SDA 线两次,以次来判别有没有发生电平切换。

2.3 传输数据

2.3.1 字节格式

发送到SDA 线上的每个字节必须为8 位。每次传输可以发送的字节数量不受限制,

陕西科技大学毕业论文12

每个字节后必须跟一个响应位。首先传输的是数据的最高位MSB。如果从机要完成一些其他功能后(例如一个内部中断服务程序)才能接收或发送下一个完整的数据字节,可以使时钟线SCL 保持低电平迫使主机进入等待状态。当从机准备好接收下一个数据字节并释放时钟线SCL后,数据传输继续。

2.3.2 响应

数据传输必须带响应。相关的响应时钟脉冲由主机产生。在响应的时钟脉冲期间发送器释放SDA 线(高)。

在响应的时钟脉冲期间,接收器必须将SDA 线拉低,使它在这个时钟脉冲的高电平期间保持稳定的低电平。当然必须考虑建立和保持时间。

当从机不能响应从机地址时,例如它正在执行一些实时函数不能接收或发送。从机必须使数据线保持高电平。主机然后产生一个停止条件终止传输或者产生重复起始条件开始新的传输。

如果从机接收器响应了从机地址但是在传输了一段时间后不能接收更多数据字节,主机必须再一次终止传输。这个情况用从机在第一个字节后没有产生响应来表示。从机使数据线保持高电平。主机产生一个停止或重复起始条件。

如果传输中有主机接收器,它必须通过在从机不产生时钟的最后一个字节不产生一个响应。向从机-发送器通知数据结束。从机发送器必须释放数据线允许主机产生一个停止或重复起始条件。如图2-3所示

图2-3 I2C响应时序图

2.4 七位地址格式

2.4.1 普通传输模式

普通模式为主机一直是发送器,从机一直是接受机。通常来说就是主机

写数据给从机的方式。

在起始条件S 后,发送了一个从机地址,这个地址共有7 位,紧接着的

13

基于USB标准视频的自动曝光调整

第8 位是数据方向位R/W。 0 表示发送(写);1 表示请求数据(读)。数

据传输一般由主机产生的停止位P 终止。但是如果主机仍希望在总线上通

讯,它可以产生重复起始条件Sr和寻址另一个从机,而不是首先产生一个停

止条件。在这种传输中可能有不同的读写格式结合。如图2-4和2-5所示

图2-4 主机-发送器用7位地址寻址从机接收器,传输方向不变

图2-5 在第一个字节后主机立即读从机

2.4.2 复合传输模式

复合模式为主机开始是发送器,从机是接受器。当寻址找到从机以后,改变传输方向,由主机作为接受器,从机作为发送器。通常来说就是主机向从机先写后读的方式。

陕西科技大学毕业论文14

图2-6 复合传输模式

2.5 七位寻址

I2C 总线的寻址过程是通常在起始条件后的第一个字节决定了主机选择哪一个从机。第一个字节的头7位组成了从机地址,见下图2-7。

图2-7

最低位(LSB)是第8位,它决定了报文的方向。第一个字节的最低位是0,表示主机会写信息到被选中的从机;1 表示主机会向从机读信息。

当发送了一个地址后,系统中的每个器件都在起始条件后将头7 位与自己的地址比较。如果一样,器件会认为它被主机寻址。至于是从机接收器还是从机发送器都由第八位(R/W)位决定。

从机地址由一个固定和一个可编程的部分构成。由于很可能在一个系统中有几个同样的器件,从机地址的可编程部分使最大数量的这些器件可以同时连接到I2C 总线上,器件可编程地址位的数量由它可使用的管脚决定。例如器件有4个固定的和3个可编程的地址位,那么相同的总线上共可以连接8(2的3次方)个相同的该器件。

除了七位寻址外还有十位寻址的方式在这里不做介绍可查阅I2C协议的相关规范详细了解I2C具体内容。

2.6 I2C时序图举例

2.6.1 读图方法介绍

I2C有两条线一条SD线一条SCL线,在起始条件发生时开始,数出在SCL图上的连续八位所对应的SD上的八位二进制数,第九位是传完一个字节对应的响应位不读SD上的数据,SD图中八位读完后有一个很窄的高电平时期这是由于SD线传完一个字节就会释放数

相关文档
相关文档 最新文档