串行成像控制总线SCCB#

合集下载

浅谈CMOS图像传感器的SCCB总线协议

浅谈CMOS图像传感器的SCCB总线协议

SCCB 是OmniVision 公司定制的串行摄像头控制总线(Serial Camera Control Bus) ,它用于对摄像头的寄存器进行读写,以达到对摄像头输出图像的控制。

两线制SCCB 与I2C 总线类似,是一种双向二线制同步串行总线。

SCCB 的数据传输由主器件控制,主器件能够发出数据传输启动信号、时钟信号以及传送结束时的停止信号。

通常主器件都是微处理器,它寻址访问的设备称为从器件。

为了进行通讯,每个接到SCCB 的设备都有一个唯一的地址( ID) ,使用软件来识别总线上的从器件,省去了从器件的片选。

因此,只需要两根线(串行时钟线SIO C 和串行数据线SIO D) ,挂接到总线上的器件就能相互进行信息传递,SCCB 接口的电气结构如图1 所示。

组成SCCB 的SIO C 和SIO D必须经过上拉电阻RP 接到正电源上,连接到总线的器件的输出级必需为“开漏”或“开集”的形式,以便在多个主或从需求仲裁的况下完成线与的功能。

在SCCB 协议中定义开始和停止条件如下:开始条件:在SIO C 为高电平时,SIO 出现一个下降则SCCB 开始传输;停止条件:在SIO C 为高电平时,SIO D 出现一个上升沿,则SCCB 停止传输。

除了开始和停止状态,在数据传输时,当SIO C 为高电平时,必需保证SIO D上的数据的稳定,也就是说,SIO D 上的数据只能在SIO C 为低电平时改变。

与I2C 总线类似,SCCB 的基本传输格式如图3所示,完整的数据传输包括两个或三个阶段。

每一阶段包中含9 位二进制数据,其中高8 位为所要传输的8 位数据,最低位根据主器件的数据传输是读操作还是写操作而确定。

在进行主器件写操作时,全部阶段的最低位均是无关位(低或高电平均可) ;读操作时,第一阶段的最低位是无关位,第二阶段的最低位位NA ———主器件驱动为高电平有效。

在SCCB 协议定义了两种写操作,即三相写操作和两相写操作。

OV9650摄像头

OV9650摄像头

//上拉无效 //GPE15 为 SIO_D,GPE14 为 SIO_C,都为输出
void delay(int a) {
int k;
for(k=0;k<a;k++) ;
}
//启动 SCCB void __inline SCCB_start(void) {
CLOCK_HIGH(); DATA_HIGH(); delay(10); DATA_LOW(); delay(10); CLOCK_LOW(); delay(10); }
//结束 SCCB void __inline SCCB_end(void) {
DATA_LOW(); delay(10); CLOCK_HIGH(); delay(10); DATA_HIGH(); delay(10); }
//SCCB 发送一个字节 void __inline SCCB_sendbyte(unsigned char data) {
//读操作
unsigned char SCCB_receivedata(unsigned char subaddr) {
unsigned char temp;
//2 相写传输周期 SCCB_start(); SCCB_sendbyte(0x60); SCCB_sendbyte(subaddr); SCCB_end();
{0x11,0x80},{0x6a,0x3e},{0x3b,0x09},{0x13,0xe0},{0x01,0x80},{0x02,0x80},{0x00,0x00},{0x10, 0x00},
{0x13,0xe5},{0x39,0x43},{0x38,0x12},{0x37,0x00},{0x35,0x91},{0x0e,0xa0},{0x1e,0x04},{0xA8, 0x80},

ov7725数字摄像头编程基本知识笔记

ov7725数字摄像头编程基本知识笔记

PCLKHREFHSYNC 像素值ov7725数字摄像头编程基本知识笔记这里以ov7725为例,对数字摄像头的时序进行分析。

其他数字摄像头的时序也大同小异。

像素输出顺序数字摄像头输出图像时,一般都是从左到右,有上到下逐个输出(部分芯片可配置输出顺序):有些摄像头有奇偶场,是采用隔行扫描方法,把一帧图象分为奇数场和偶数场两场。

(ov7725没有奇偶场之分)行中断时序0 第一个输出像素最后一个输出像素 最后一个像素 消隐区,如果不按照时序来采集,就有可能采集到消隐区,值为0,即黑色。

行与行之间,场与场之间都一行图像数据 第一个 像素 PCLK 上升沿时,MCU 采集图像;下降沿时,摄像头输出图像。

HREF 和HSYNC 都用于行中断信号,但时序有点区别。

HREF 上升沿就马上输出图像数据,而HSYNC 会等待一段时间再输出图像数据,如果行中断里需要处理事情再开始采集,则显然用HREF 的上升沿是很容易来不两个都是行中断信号,共用同一个管脚,由寄存器配置选择哪个信号输出。

场中断时序采集图像思路①使用for 循环延时采集1. 需要采集图像时,开场中断2. 场中断来了就开启行中断,关闭场中断3. 行中断里用for 循环延时采集像素,可以在行中断里添加标志位,部分行不采集,即可跨行采集。

4. 行中断次数等于图像行数时即可关闭行中断,标志图像采集完毕。

②使用场中断和行中断,DMA 传输1. 需要采集图像时,开场中断2. 场中断来了,开行中断和初始化DMA 传输3. 行中断来了就设置DMA 地址,启动DMA 传输。

如果先过滤部分行不采集,则设置一个静态变量,每次行中断来了都自加1,根据值来选择采集或不采集某些行。

4. 每个PCLK 上升沿来了都触发DMA 传输,把摄像头输出的值读取到内存数组里。

当触发n 次(n=图像列数目)后就停止DMA 传输。

5. 行中断次数等于一幅图像的行数,或者等待下一个场中断来临 就结束图像采集,关闭行中断和场中断。

sccb协议

sccb协议

sccb协议协议名称:SCCB协议一、引言本协议旨在确立并规范Smart Camera Control Bus(SCCB)协议的标准格式,以便各方在使用SCCB协议时能够达到一致性和互操作性。

二、定义1. SCCB:Smart Camera Control Bus,智能摄像机控制总线。

2. SCCB设备:支持SCCB协议的硬件设备,包括但不限于智能摄像机、图象传感器等。

三、协议规范1. 物理连接SCCB协议使用I2C总线作为物理连接方式,具体规范如下:a. 使用双线制,包括一个时钟线(SCL)和一个数据线(SDA)。

b. SDA线上的数据传输由SCL线上的时钟信号同步。

c. 时钟信号由主设备(如智能摄像机)控制。

2. 寻址SCCB协议使用7位或者10位地址进行寻址,具体规范如下:a. 7位寻址:SCCB设备地址由7位二进制数表示,范围为0x01至0x7F。

b. 10位寻址:SCCB设备地址由10位二进制数表示,范围为0x001至0x3FF。

c. 寻址方式由主设备决定。

3. 数据传输SCCB协议使用字节流传输数据,具体规范如下:a. 数据传输以字节为单位,每一个字节由8位二进制数表示。

b. 数据传输由主设备发起,从设备响应。

c. 主设备发送起始信号(Start)和住手信号(Stop)控制数据传输的开始和结束。

d. 数据传输过程中,从设备可以发送应答信号(Acknowledge)或者非应答信号(Not Acknowledge)给主设备。

4. 命令格式SCCB协议使用特定的命令格式进行通信,具体规范如下:a. 命令由主设备发送给从设备。

b. 命令包括一个起始字节和一个或者多个数据字节。

c. 起始字节包含设备地址和读/写位,用于指示通信的目标设备和读写操作。

d. 数据字节用于传输具体的命令数据。

5. 数据读取SCCB协议支持从SCCB设备读取数据,具体规范如下:a. 主设备发送读取命令给从设备,并指定读取的字节数。

医用内窥镜微型摄像模组设计

医用内窥镜微型摄像模组设计

医用内窥镜微型摄像模组设计徐忠;刘洪英;余巧;孙良伟;赵亚雄;贾子如【摘要】设计了一种新型医用内窥镜微型摄像模组.该模组采用微型、高分辨率的CMOS图像传感器结合低压差分信号(LVDS)传输技术进行设计,使摄像模组直径缩减至5.0mm,并实现了图像数据的长距离高保真传输.搭建了实验平台对摄像模组的摄像功能进行了测试.结果表明:该模组图像传输距离超过2m,分辨率达到30万像素,对口腔溃疡模拟粘膜病变的识别率高达90%.其图像分辨率高,传输距离长,使其适用于内镜诊断;其直径小,能大大提高病人内镜检查的舒适性,为超细内镜诊断提供了一种极佳的解决方案.【期刊名称】《传感器与微系统》【年(卷),期】2014(033)010【总页数】4页(P91-93,103)【关键词】CMOS摄像模组;内窥镜;低压差分信号技术;微型化【作者】徐忠;刘洪英;余巧;孙良伟;赵亚雄;贾子如【作者单位】重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030;重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030;重庆大学新型微纳器件与系统技术国防重点学科实验室,重庆400030;重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030;重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030;重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030;重庆大学生物工程学院生物流变科学与技术教育部重点实验室,重庆400030【正文语种】中文【中图分类】R318.08在医学诊断和治疗领域,人体组织脏器健康状况的可视化是医学工作者一直以来所追求的目标。

医用电子内窥镜就是为实现这一目标而发展起来的现代化诊断设备,经过众多专家与学者的努力,内窥镜技术已经取得了长足的发展[1]。

通过内窥镜,医生可以非常直观地观察到人体内脏器官的组织形态、体内病变情况,发现病灶并对疾病进行诊断[2]。

sccb的简单介绍

sccb的简单介绍

引脚功能SCCB是欧姆尼图像技术公司(OmniVision)开发的一种总线,并广泛的应用于OV系列图像传感器上。

SCCB是一种3线的总线,它由SCCB_E、SIO_C、SIO_D组成。

在为了减少引脚的芯片上缩减为2根线,SIO_C和SIO_D。

2线的SCCB总线只能是一个主器件对一个从器件控制,但3线SCCB接口可以对多个从器件控制。

2线的SCCB总线需要主机具备如下条件中的一个或多个:一、主机必须能够使SIO_D处于第三态,即高阻态。

二、主机必须能够驱动SIO_D比正常识别电压更高或更低引脚(主机)说明:SIO_E:输出(主机发出,单向),低电平有效,总线空闲时主机驱动此引脚为1,驱动为0时表示开始传输或者挂起模式(在表面没有该引脚的芯片中,该引脚默认为可用的,并且保持高电平)。

它标志这数据传输的开始和结束,高电平向低电平转变表示开始传输,低电平向高电平转变表示结束传输。

在数据传输过程中,SIO_E必须保持为0。

SIO_C:输出(主机发出,单向),总线空闲时主机驱动此引脚为1;当驱动SIO_E为0时,主机驱动此引脚为0或1;当挂起时主机驱动SIO_C为0;它表明每一个传输位;SIO_C为1时表示一个传输位;SIO_D只能在SIO_C为0时发生变化。

SIO_D:I/O口,双向传输线,既可以由主机驱动也可以由从机驱动。

当总线空闲时保持浮动,状态不固定(0、1或三态高阻)。

当系统挂起时驱动该引脚为0。

为了不让该引脚产生未知的状态,主机和从机有职责保持该引脚的电平。

SIO_C为1表示传输一位数据,SIO_D只能在SIO_C为0时发生变化。

然而,在开始传输和结束传输时却可以存在例外。

当SIO_E有效且SIO_C变为0之前,SIO_D可以被驱动为0。

在SIO_E失效前,SIO_C转为1时,SIO_D也能被驱动为0。

数据传输SCCB传输协议允许总线在数据传输期间保持浮动或者连接。

向从机写数据时定义写传输协议,向从机读数据时定义读传输协议。

OV7670的SCCB波形记录

OV7670的SCCB波形记录

OV7670的SCCB波形记录OV7670是一款基于SCCB(串行摄像头控制总线)协议的摄像头模块,它可以通过SCCB协议与主控设备进行通信和控制。

在本文中,我将为你记录OV7670的SCCB波形,以便更好地理解其通信原理和工作机制。

SCCB协议是一种针对摄像头模块的串行通信协议,类似于I2C协议。

它通过两根信号线(SIOC和SIOD)实现主控设备与摄像头模块之间的数据传输和控制。

下面是一份OV7670的SCCB波形记录:1.启动信号:在开始进行SCCB通信之前,主控设备需要发送一个启动信号,以表明接下来要进行SCCB通信。

启动信号由SIOC引脚拉低,SIOD引脚先拉高再拉低构成。

2.设备地址:主控设备需要发送一个设备地址,以指定要控制的摄像头模块。

设备地址由SIOC引脚拉高,SIOD引脚先拉高再拉低构成。

3.寄存器地址:主控设备需要发送一个寄存器地址,以指定要写入或读取的寄存器。

寄存器地址由SIOC引脚拉高,SIOD引脚先拉高再拉低构成。

4.写入数据:主控设备将要写入的数据发送给摄像头模块。

写入数据由SIOC引脚拉高,SIOD引脚的高低电平表示二进制数据的1和0。

5.等待应答:主控设备在发送完写入数据后,需要等待摄像头模块发送应答信号。

应答信号由摄像头模块通过SIOD引脚拉低来表示。

6.读取数据:主控设备需要读取摄像头模块的数据时,向摄像头模块发送一个读取命令。

读取命令由SIOC引脚拉高,SIOD引脚先拉低再拉高构成。

7.读取数据应答:摄像头模块在收到读取命令后,会发送要读取的数据给主控设备。

读取的数据由SIOC引脚拉高,SIOD引脚的高低电平表示二进制数据的1和0。

以上是OV7670的SCCB通信过程中的一些重要波形记录。

通过这些波形,我们可以清楚地了解到每个步骤的具体控制信号和数据传输情况。

这有助于我们更好地理解OV7670和SCCB协议的工作原理,并可以根据需要进行相关的控制和操作。

总结起来,OV7670的SCCB波形记录包括启动信号、设备地址、寄存器地址、写入数据、等待应答、读取数据和读取数据应答等几个重要步骤的信号和数据情况。

sccb协议

sccb协议

sccb协议协议名称:SCCB协议一、引言本协议旨在规范SCCB(Serial Camera Control Bus)的通信协议,以确保各设备之间的互操作性和数据传输的稳定性。

SCCB协议用于连接图像传感器和图像处理器之间的通信,通过定义数据传输格式和通信规则,实现数据的可靠传输和控制命令的有效执行。

二、定义1. SCCB:Serial Camera Control Bus,是一种串行通信协议,用于图像传感器与图像处理器之间的数据传输和控制命令交互。

2. 主设备:指控制和发起通信的设备,通常为图像处理器。

3. 从设备:指接收和响应通信的设备,通常为图像传感器。

三、通信协议1. 物理连接a. SCCB协议使用两根线进行通信,分别为SDA(Serial Data Line)和SCL (Serial Clock Line)。

b. SDA线用于数据传输,SCL线用于时钟同步。

c. 物理连接方式可采用I2C(Inter-Integrated Circuit)或SPI(Serial Peripheral Interface)等标准接口。

2. 数据传输格式a. SCCB协议采用字节流的形式进行数据传输。

b. 数据传输分为读取和写入两种操作。

c. 读取操作:主设备发送读取命令和设备地址,从设备响应数据。

d. 写入操作:主设备发送写入命令、设备地址和数据,从设备接收并执行命令。

3. 通信规则a. 主设备与从设备之间的通信由主设备发起。

b. 通信开始前,主设备发送起始信号,从设备响应起始信号。

c. 通信结束后,主设备发送停止信号,从设备响应停止信号。

d. 主设备在发送每个字节的时候,需要等待从设备的确认信号。

e. 主设备可以发送多个字节的数据,从设备每接收一个字节后,需要发送确认信号。

四、通信流程1. 读取操作流程:a. 主设备发送起始信号。

b. 主设备发送设备地址和读取命令。

c. 从设备响应确认信号。

d. 从设备发送数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

串行成像控制总线SCCB的应用研究默认分类2008-03-02 21:42:27 阅读1356 评论4 字号:大中小订阅吕涛(西南科技大学网络信息中心,四川绵阳621002)摘要:本文主要基于CMOS图像传感器的串行成像控制总线(SCCB)的使用方法进行研究,详细阐述了该总线的引脚功能,数据传输和控制时序。

文中通过程序代码片段说明了如何利用ARM CPU 的GPIO使用SCCB总线。

关键词:CMOS图像传感器;SCCB; ARM CPU GPIO中图分类号:文献标识码:AApplication Research of Serial Camera Control BusLuTaoNetwork Information Center of South-west University of Science and TechnologyAbstract: The paper mainly discusses the application research of serial camera control bus (SCCB) based on CMOS image sensor. It depicts the pin function,data transmission and Timing Diagram of SCCB.In the paper, the code fragment shows how to use SCCB by ARM CPU GPIO.Key words:CMOS image sensor; SCCB; ARM CPU GPIO1. 概述CMOS图像传感器是近年发展起来的一种新型固体图像传感器,由于采用了相同的CMOS工艺,因此可以将像素阵列与驱动电路和信号处理电路等集成在同一块芯片上。

而且,现在越来越多的CMOS图像传感器芯片将A/D集成进去,因此除了模拟视频输出外,还可直接输出数字视频信号和同步信号。

这样,利用CMOS图像传感器构成图像采集系统时,传统图像采集卡的A/D、同步分离等电路就没有必要了,而仅需设计适当的接口电路。

现在,由CMOS图像传感器构成的所谓“单芯片成像系统”(Camera on Chip)已在包括视频图像获取和数字化、视频会议、可视电话、视频电子邮件、多媒体应用、数字相机等诸多领域有了广泛的应用和发展潜力。

美国的OmniVision(OV)技术有限公司是世界上较大的和主要的CMOS传感器供应商。

OV公司定义和配置了一种串行成像控制总线SCCB(Serial Camera Control Bus),它是一种3线串行总线,可以控制大多数OV公司的CMOS图像传感器。

为减少芯片封装,SCCB 可以在2线串行模式下工作。

OV系列传感器可以通过串行成像控制总线SCCB接口提供图像的全帧采样,窗口采样并且可以完全由用户来控制图像质量、格式和输出数据流。

所有的图像处理功能包括曝光控制、gamma、白平衡、色彩饱和度、色调控制等均可通过SCCB接口编程实现。

OV系列传感器通常有两种控制方法:上电重启方式和SCCB接口控制方式。

上电重启方式是复用芯片的视频数据总线。

在芯片上电复位后,视频数据引脚初始化为三态引脚,从外部读入控制信息设置芯片工作状态,在2048个时钟周期后视频数据总线恢复正常功能。

SCCB接口控制方式是通过SCCB接口,对状态控制寄存器直接进行读写控制,达到需要的工作状态。

从应用的角度而言,SCCB 方式更加灵活一些,但该方式下传感器必须工作在从模式(Slave Mode)下。

本文仅讨论SCCB接口控制方式。

当传感器仅仅作为一个从设备(Slave Device)工作,与其连接的必须是主设备(Master Device)。

一个主设备通过SCCB连接和控制至少一个从设备。

一个3线SCCB除了提供时钟(SIO_C)和数据(SIO_D)以外还有一个片选信号SCCB_E(图1所示),使其可以连接多个从设备。

经过修改的2线串行总线则省略了片选信号SCCB_E,因此它只能通过SCCB接口连接一个从设备(图2所示)。

图1 SCCB 3线连接图图2 SCCB 2线连接图与3线连接方式相比,2线连接方式要实现SCCB的通信则主设备必须能够维持总线上的数据线(SIO_D)在三态状态;如果主设备不能维持数据线在三态状态,那么另外一个可选择的方法就是过渡为由从摄像芯片(slave C AMERA C HIP)来声明通信。

2.1 SCCB_ESCCB_E信号是一个必须由主设备驱动的单向,低电平有效的控制信号。

它指示了数据传输的开始和结束。

SCCB_E从高电平变为低电平表示一个传输的开始,SCCB_E 从低电平变为高电平表示一个传输的结束。

在数据传输期间,SCCB_E必须维持在逻辑0,当SCCB_E为逻辑1时意味这此时总线空闲。

2.2 SIO_CSIO_C信号是一个必须由主设备驱动的单向控制信号。

它指出了每一个传输位。

当总线空闲时,主设备必须驱动SIO_C为逻辑1。

在传输开始后,当SIO_C被驱动为逻辑0,则一个数据传输开始。

在数据传输过程中SIO_C的一个逻辑1指示了一个单独的已传输位。

因此,SIO_D只能在SIO_C被驱动为0时出现。

2.3 SIO_DSIO_D信号是一个双向数据信号,可以被主设备或从设备驱动。

当总线空闲时该信号可以保持悬空或三态。

SIO_C的一个逻辑1代表了一位传输,因此SIO_D仅当SIO_C被驱动为逻辑0时出现。

3 数据传输3.1 传输开始SCCB_E由高电平变为低电平表示数据传输的开始(如图3所示)。

但是在声明数据传输开始之前,主设备必须驱动SIO_D为逻辑1以取得总线的控制权,这样做可以防止在总线上传输数据之前传播一个未知状态。

在开始传输阶段定义了两个时间参数:和。

是SIO_D的预处理(pre-charge)时间,即声明SCCB_E有效前SIO_D必须为逻辑1的这段时间。

的最小值是15ns。

是SCCB_E的预活动时间(pre-active),即SCCB_E 必须在SIO_D 变为低电平之前声明传输开始的时间。

图3 3线传输开始示意图以下代码片段说明了利用ARM CPU S3C4510B的GPIO来模拟SIO_C和SIO_D 作为主设备和图像传感器进行2线连接,其中P0模拟数据SIO_D,P1模拟时钟SIO_C。

若无特别声明,后面的代码均在此基础上建立。

#define IOPMOD (*(v olatile unsigned *)0x3ff5000)#define IOPDATA (*(v olatile unsigned *)0x3ff5008)v oid start(){IOPMOD = 0x03; /*set gpio P0 and P1 output mode*/IOPDATA = IOPDATA | 0x01;/*data = 1*/delay(1);IOPDATA = IOPDATA | 0x02;/*clk = 1*/delay(5);IOPDATA = IOPDATA & 0xfe;/*data = 0*/delay(5);}3.2 传输结束SCCB_E由低电平变为电高平表示数据传输的结束(如图4所示)。

在结束传输阶段定义了两个时间参数:和。

定义为SIO_D后处理(post-charge)时间,即SCCB_E 在声明传输结束以后SIO_D必须保持为逻辑1的时间。

的最小值是15ns。

定义为SCCB_E 的后活动(post-active)时间,即在SIO_D声明传输结束以后SCCB_E必须保持为逻辑0的时间,它的最小值是0ns。

图4 3线传输结束示意图2线连接SCCB传输结束代码参考如下:v oid stop(){IOPMOD = 0x03; /*set gpio output mode*/IOPDATA = IOPDATA & 0xfe;/*data = 0*/delay(1);IOPDATA = IOPDATA | 0x02;/*clk = 1*/delay(5);IOPDATA = IOPDATA | 0x01;/*data = 1*/delay(4);IOPDATA = IOPDATA & 0xfd;/*clk = 0*/}3.3 传输周期(Transmission Cycle)一个基本的数据传输我们称之为一个阶段(Phase),SCCB共规定了三种传输:3-阶段写传输周期2-阶段写传输周期2-阶段读传输周期(1)传输阶段( Transmission Phases)一个传输阶段总共包括9位,其中分为8位数据和第9位。

8位数据是顺序存放并且高位在前。

第9位可以是数据无关位(Don’t-Care Bit)或数据响应位(NA bit),具体使用哪种则根据数据传输是读事务还是写事务。

图5 传输阶段(2)3-阶段写传输周期3-阶段写传输周期是一个完整的写周期,它可以使主设备向特定的从设备写一个字节的数据。

主设备通过ID地址访问指定的从设备,子地址指定了从设备中的寄存器位置,主设备通过写8位数据来覆盖指定的地址。

3个阶段的第9位为数据无关位,默认为0。

从图5中我们可以看出对于3-阶段写传输周期,阶段1为ID地址,阶段2为子地址,阶段3为写数据。

(3)2-阶段写传输周期2-阶段写传输周期后紧跟着是2-阶段读传输周期。

主设备希望能够通过2-阶段读传输周期读取从设备中指定子地址的数据,2-阶段写传输周期的目的就在于确定从设备的子地址。

它的第九位将是数据无关位。

从图5中我们可以看出对于2-阶段写传输周期,阶段1为ID地址,阶段2为子地址。

(4)2-阶段读传输周期因为2-阶段读传输周期不能确定从设备的子地址,所以在它之前必须有一个3-阶段写传输周期或2-阶段写传输周期。

2-阶段读传输周期包括读取的8位数据和第九位数据无关位或数据响应位。

主设备须驱动数据响应位为逻辑1。

从图5中我们可以看出对于2-阶段读传输周期,阶段1为ID地址,阶段2为读取的数据。

需要特别注意的是ID地址。

每个从设备都有一个唯一的ID地址。

ID地址由7位组成,顺序从第7位到第1位,一共可以有128个不同的地址。

第8位是读写选择位,其作用是决定了当前传输周期的方向。

逻辑0代表了写周期,逻辑1代表了读周期。

该阶段的第9位必须为数据无关位。

如果主设备只连接了一个从设备,我们可以使用从设备的默认地址,当地址为0x42时是写周期,为0x43时是读周期。

子地址通常是指从设备的内部寄存器地址,通过3-阶段写传输周期可以覆盖从设备的指定寄存器的值,以此实现对从设备的控制和设置。

详细的控制和设置信息可以参考各个芯片的数据手册。

相关文档
最新文档