I2C总线协议

合集下载

i2c协议详解

i2c协议详解

i2c协议详解
I2C(Inter-Integrated Circuit)协议是一种双向串行总线,也称作IIC、TWI(Two-Wire Interface)或SMBus(System Management Bus),由Philips公司于1982年开发,用来连接多个微处理器和其它通信芯片。

I2C协议有两根线,分别是SCL(时钟线)和SDA(数据线),使用双线的好处就是只要两根线就可以完成数据传输,而不需要增加额外的线路,能够大大减少系统所需要的线路,减少系统的复杂度和成本。

I2C协议需要一个主控制器来控制整个系统,主控制器通过SCL线来发送时钟,并通过SDA线来发送和接收数据,从控制器则只负责接收数据。

I2C协议有7个基本信号,START、STOP、ACK、NACK、READ、WRITE和REPEAT START,START在传输数据前发出,STOP则在传输结束后发出,ACK和NACK则用来表示接收方是否正确接收到数据,READ和WRITE则用来指示当前传输的数据是读数据还是写数据,REPEAT START则用来重新开始新一轮的传输。

I2C协议的最大优点是简单、易用,而且可以支持多个从控制器,不过它的缺点也是显而易见的,它的传输速度相对较慢,而且它的传输距离也有限,约在50cm左右。

I2C总线协议及其应用

I2C总线协议及其应用

I2C总线协议及其应用I2C协议及其应用一、I2C总线介绍:因为大规模技术的进展,在单个芯片集成CPU以及组成一个单独工作系统所必需的ROM、RAM、I/O端口、A/D、D/A等外围和已经实现,这就是常说的或微控制器。

目前,世界上许多公司生产单片机,品种无数:包括各种字长的CPU,各种容量和品种的ROM、RAM,以及功能各异的I/O等等。

但是,单片机品种规格有限,所以只能选用某种单片机再举行扩展。

扩展的办法有两种:一种是并行总线,另一种是串行总线。

因为串行总线连线少,结构容易,往往不用专用的母板和插座而挺直用导线衔接各个设备即可。

因此,采纳串行总线大大简化了系统硬件设计。

PHILIPS公司早在十几年就前推出了I2C串行总线,它是具备多主机系统所需的包括裁决和凹凸速设备同步等功能的高性能串行总线。

1. I2C总线硬件结构和术语I2C串行总线有两根信号线:一根双向的数据线SDA;另一根是时钟线SCL。

全部接到I2C总线上的设备的串行数据都接到总线的SDA线,各设备的时钟线SCL接到总线的SCL。

典型的I2C总线结构1。

图1:PC总线结构为了避开总线信号的混乱,要求各设备衔接到总线的输出端必需是开漏输出或集电极开路输出的结构。

设备与总线的接口电路2所示。

设备上的串行数据线SDA接口电路应当是双向的,输出电路用于向总线上发数据,输入电路用于接收总线上的数据。

串行时钟线也应是双向的,作为控制总线数据传送的主机要通过SCL输出电路发送时钟信号,同时要检测总线上SCL上的电平以打算什么时候发下一个时钟脉冲电平;作为接受主机指令的从机,要按总线上的SCL的信号发出或接收SDA上的信号,也可以向SCL线发出低电平信号以延伸总线时钟信号周期。

总线空闲时,因各设备都是开漏输出,上拉RP使ADA和SCL线第1页共4页。

i2c协议sda高阻态

i2c协议sda高阻态

i2c协议sda高阻态摘要:1.I2C协议简介2.SDA线的高阻态原理3.高阻态在I2C协议中的应用4.实际应用中的高阻态操作5.总结正文:随着电子技术的不断发展,I2C(Inter-Integrated Circuit)协议已成为一种广泛应用于嵌入式系统、微控制器等领域的通信协议。

I2C协议是一种双线双向通信协议,由两条信号线SDA(串行数据线)和SCL(串行时钟线)组成。

在实际应用中,SDA线的高阻态发挥着重要作用。

本文将对I2C协议中的SDA高阻态进行详细解析。

1.I2C协议简介I2C协议,又称I2C总线或I2C接口,是由Philips公司(现为NXP半导体公司)于1980年代发明的一种串行通信协议。

I2C协议具有以下特点:- 主从模式:通信双方中的一方作为主设备,另一方作为从设备。

- 两线制:使用两条信号线SDA和SCL进行通信。

- 设备地址:每个连接到I2C总线的设备都具有唯一的地址,便于主设备识别。

- 数据传输速率:可根据总线速度进行高速、中速和低速传输。

2.SDA线的高阻态原理SDA线是I2C总线中的数据线,负责在主设备和从设备之间传输数据。

在高阻态下,SDA线处于一种高电平状态,不导电。

此时,SDA线上的电流为0,从而保证了线路的稳定性。

3.高阻态在I2C协议中的应用在I2C通信过程中,高阻态主要有以下应用:- 数据传输:在高阻态下,SDA线可以确保数据在两个设备之间安全传输。

- 同步时钟:在高阻态下,SCL线可以提供稳定的时钟信号,实现通信双方的时钟同步。

- 设备识别:在高阻态下,主设备可以通过查询SDA线上的电平状态来识别从设备。

4.实际应用中的高阻态操作在实际应用中,高阻态操作主要包括以下几个步骤:- 初始化:在通信开始前,双方设备将SDA线驱动为高阻态,以保证线路的稳定性。

- 数据传输:通信过程中,SDA线上的数据在高阻态下进行传输。

- 仲裁:在多个从设备与主设备通信时,通过高阻态实现设备间的仲裁。

TP I2C总线介绍

TP I2C总线介绍

I2C总线接口一、 I2C总线协议I2C总线是一种串行数据传输总线,连接master(主机)和slave(从机),在两者间进行数据传输。

I2C总线有两根传输线,一根是时钟线SCL,一根是数据线SDA。

其中时钟线由主机控制,数据线是双向工作总线,传输数据,数据传输格式为每传输一个字节后传输一位应答位(应答位低电平有效);两者均通过上拉电阻与电源连接,保持高电平。

+VccSCLSDAI2C总线连接I2C总线在主机和从机之间传输数据时可以分为主机向从机写入数据和从机由主机读取数据两种工作模式。

1、主机向从机写入数据在这种工作模式下主机作为发送器,发送数据;从机作为接收机,接收数据。

2、主机由从机读取数据在这种工作模式下从机作为发送器,发送数据;主机作为接收机,接收数据。

I2C 总线的工作原理:I2C 总线在传输数据时首先要判断其是否启动,启动后对从机进行寻址和读写判断,随后根据是否应答来传输数据,最后再判断总线是否停止。

I2C 总线启动判断:当SCL 处于高电平时,SDA 由高电平变为低电平,标志着总线启动。

I2C 总线停止判断:当SCL 处于高电平时,SDA 由低电平变为高电平,标志着总线停止。

当I2C 总线启动后且未停止时,SDA 在SCL 的低电平发生跳变,在SCL 高电平时保持稳定,保证数据能够被采集。

主机首先发送一个字节的数据对从机进行寻址和读写判断;其中数据的传输先发送最高位,第一个发送字节的高7位是从机地址,最低位是数据读写判断位。

当从机接收到地址后判断是否为其地址,然后对主机应答或非应答。

当主机接收到应答以后开始向从机写入数据或由从机读取数据。

主机向从机写入数据时,每完成一个字节,从机都向主机应答;主机由从机读取数据时,每完成一个字节,主机都对从机应答,当主机读完最后一个字节时主机对从机应答取反。

二、 模块数据流I2C总线接口模块设计图i2c_ctrl 模块:从机读写状态机模块i2c_shift模块:从机控制信号、应答等产生模块i2c_intf_ctrl模块:写串并转换、读数据存储模块主机向从机写入数据:主机首先向从机发送地址和写标志,当从机判断主机发送的地址为其地址时对主机应答,然后主机开始发送数据。

IIC总线协议

IIC总线协议

IIC总线协议一、协议简介IIC总线协议是一种用于串行通信的标准协议,也被称为I2C(Inter-Integrated Circuit)协议。

该协议由飞利浦(Philips)公司于1982年推出,旨在实现多个设备之间的通信和数据传输。

IIC总线协议以其简单、灵活和可靠的特性,在各种应用领域得到广泛应用,如电子设备、工业自动化、汽车电子等。

二、协议特性1. 串行通信:IIC总线协议采用串行通信方式,通过两条线路(SDA和SCL)进行数据传输。

其中,SDA(Serial Data Line)用于传输数据,SCL(Serial Clock Line)用于传输时钟信号。

2. 主从结构:IIC总线协议采用主从结构,主设备(Master)负责发起和控制通信过程,从设备(Slave)负责接收和响应主设备的指令。

3. 多设备连接:IIC总线协议支持多个从设备连接到同一条总线上,通过每个从设备的唯一地址进行区分。

4. 双向通信:IIC总线协议支持主设备和从设备之间的双向通信,主设备可以向从设备发送指令,同时从设备也可以向主设备发送响应或数据。

5. 时钟同步:IIC总线协议通过SCL线上的时钟信号实现设备之间的时钟同步,确保数据传输的准确性和可靠性。

6. 数据传输速率:IIC总线协议的数据传输速率可以根据需求进行调整,常见的速率有100Kbps、400Kbps和1Mbps等。

三、协议通信流程1. 初始化:主设备通过发送起始信号(Start)开始通信过程。

起始信号由低电平到高电平的跳变表示。

2. 地址传输:主设备发送从设备的地址和读/写位。

地址由7位或10位组成,其中7位地址是最常用的。

读/写位用于指示主设备是要读取从设备的数据还是向从设备发送数据。

3. 响应确认:从设备接收到地址后,如果地址匹配,则发送应答信号(ACK)给主设备。

应答信号由从设备在SCL线上拉低表示。

如果从设备没有准备好或地址不匹配,则不发送应答信号。

i2c协议参数

i2c协议参数

i2c协议参数I2C协议参数I2C总线是一种串行通信协议,由飞利浦公司(现在的恩智浦半导体公司)开发。

它被广泛应用于各种电子设备中,例如传感器、存储器、数字转换器等。

本文将详细介绍I2C协议的各种参数。

一、物理层参数1. 电压:I2C总线标准电平为5V,但也有3.3V和1.8V版本。

不同版本的电压对应着不同的速率和距离限制。

2. 速率:I2C总线有多种速率可供选择,最高达到400kHz。

速率越高,数据传输越快,但同时也会增加误差和干扰。

3. 距离限制:I2C总线的距离限制取决于电压和速率。

在5V电平下,最大距离约为10米;在3.3V电平下,最大距离约为5米。

二、数据帧格式1. 起始位:一个高电平到低电平的转换表示开始一个传输周期。

2. 地址位:7位或10位地址码表示要访问的设备地址。

3. 读写位:一个读写位指示主机是要读取还是写入数据。

4. 应答位:设备在接收到地址位后需要发送一个应答位,表示它已经准备好接收数据。

5. 数据位:8位数据表示要传输的数据。

6. 停止位:一个低电平到高电平的转换表示传输周期结束。

三、时序参数1. SCL时钟频率:SCL时钟频率是I2C总线的主要参数之一,它决定了数据传输速率。

标准模式下,SCL频率为100kHz;快速模式下,SCL频率为400kHz;高速模式下,SCL频率可达到3.4MHz。

2. 数据保持时间(tHD;DAT):数据保持时间是指从SCL时钟的最后一个上升沿到SDA线上数据变化的最小时间间隔。

标准模式下,tHD;DAT为0.1μs;快速模式下,tHD;DAT为0.9μs;高速模式下,tHD;DAT为0.45μs。

3. 数据建立时间(tSU;DAT):数据建立时间是指从SCL时钟的第一个上升沿到SDA线上数据变化的最小时间间隔。

标准模式下,tSU;DAT为0.1μs;快速模式下,tSU;DAT为0.6μs;高速模式下,tSU;DAT为0.25μs。

4. 停止条件保持时间(tSP):停止条件保持时间是指从SCL时钟的最后一个下降沿到SDA线上数据变化的最小时间间隔。

IIC总线协议中文版

IIC总线协议中文版

IIC总线协议中文版IIC总线协议是一种常用的串行通信协议,也被称为I2C协议(Inter-Integrated Circuit)。

它在数字电子系统中广泛用于芯片之间的通信和数据传输。

本文将介绍IIC总线协议的基本原理、工作模式和通信规范。

在主从模式下,总线上有一个主设备和多个从设备。

主设备负责控制总线上的通信,发送开始信号、地址和数据,并接收从设备返回的数据。

从设备根据收到的地址来判断是否需要响应主设备的请求,并将数据发送给主设备。

在多主模式下,总线上可以有多个主设备。

这些主设备之间通过仲裁来确定哪个主设备有权控制总线,并进行通信。

每个主设备都有一个优先级,优先级高的主设备有权接管总线,而优先级低的主设备则需要等待。

起始信号由主设备发送,用于告诉从设备通信即将开始。

起始信号的生成方法是先拉低数据线(SDA),然后再拉低时钟线(SCL)。

地址帧由主设备发送,用于选择要通信的从设备。

地址帧由7位地址和1位读/写位组成,共计8位。

地址位指定了要通信的从设备,读/写位用于指示主设备是要读取还是写入数据。

数据帧由主设备或从设备发送,用于传输实际的数据。

数据帧的长度可以是1字节到32字节。

停止信号由主设备发送,用于告诉从设备通信结束。

停止信号的生成方法是先拉高时钟线(SCL),然后再拉高数据线(SDA)。

总线上的设备可以通过拉低数据线(SDA)来请求主设备延时或终止通信。

总结IIC总线协议是一种常用的串行通信协议,适用于芯片之间的通信和数据传输。

它基于两根线(数据线和时钟线),支持主从模式和多主模式两种工作模式。

通信包括起始信号、地址帧、数据帧和停止信号。

每个设备通过唯一的地址来进行通信,可以通过拉低数据线来请求主设备延时或终止通信。

I2C总线协议及工作原理

I2C总线协议及工作原理

I2C总线协议及工作原理I2C(Inter-Integrated Circuit)是一种串行通信总线协议,由Philips公司提出,适用于在电路板上连接各种集成电路的短距离通信。

I2C总线协议的工作原理是基于主从结构的,其中一个设备作为主设备,其他设备作为从设备。

主设备负责发起通信操作,而从设备则被动响应主设备的指令。

主设备在总线上发出启动信号,然后发送器件地址。

发起通信的主设备控制总线的速度和时序,并且主设备确定读写的类型。

从设备根据地址进行匹配,并根据主设备请求的读写进行响应。

通信完成后,主设备会发送停止信号释放总线。

在I2C总线上,每个设备都有一个唯一的7位或10位地址。

主设备在传输数据之前,会发送起始信号,这个信号告诉从设备通信即将开始。

随后主设备会发送一个地址字节,包含了要通信的从设备的地址和读写控制位。

如果从设备的地址和发送的地址匹配,从设备会发送一个应答(ACK)信号,表示准备好接收数据。

主设备然后才开始发送或接收数据。

数据在I2C总线上传输是以字节为单位的,并且每个字节之后都会有一个应答信号。

主设备负责设置时钟线的电平来控制数据的传输,而从设备负责读取或发送数据位。

在读取数据时,主设备会发送应答位,如果从设备准备好读取下一个字节,会发送应答信号;反之,如果从设备不准备好,会发送非应答信号。

在I2C总线上,主设备还可以使用多主模式,允许多个主设备操作相同的总线。

当多个主设备在通信总线上发起通信时,总线的冲突可能会发生。

为了解决这个问题,I2C总线使用了仲裁机制。

仲裁机制根据优先级决定那个设备能够继续发送数据,优先级高的设备可以中断优先级低的设备的传输,从而保证通信的顺利进行。

总结起来,I2C总线协议是一种简单、高效的串行通信协议。

它通过两根线实现设备之间的通信,并且支持多主模式。

它的工作原理是基于主从结构,主设备发起通信,从设备被动响应。

通过仲裁机制,解决了多主模式下的冲突问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
请求访问总线的主机发出起始信号后,发送起始字
节(0000 0001),另一个单片机可以用一个比较低 的速率采样SDA线,直到检测到起始字节中的7个“0” 中的一个为止。在检测到SDA线上的高电平后,单 片机就可以用较高的采样速率,以便寻找作为同步 信号使用的第二个起始信号Sr。
在起始信号后的应答时钟脉冲仅仅是为了和总线所
(2)数据帧格式 I2C总线上传送的数据信号是广义的,既包括地址 信号,又包括真正的数据信号。
在起始信号后必须传送一个从机的地址(7位), 第8位是数据的传送方向位(R/),用“0”表示主机 发送数据(T),“1”表示主机接收数据(R)。每 次数据传送总是由主机产生的终止信号结束。但是, 若主机希望继续占用总线进行新的数据传送,则可 以不产生终止信号,马上再次发出起始信号对另一 从机进行寻址。 在总线的一次数据传送过程中,可以有以下几种 组合方式:
(3)读出过程
单片机先发送该器件的7位地址码和写方向位“0”(“伪 写”),发送完后释放SDA线并在SCL线上产生第9个时钟信 号。被选中的存储器器件在确认是自己的地址后,在SDA线 上产生一个应答信号作为相应。 然后,再发一个字节的要读出器件的存储区的首地址,收 到应答后,单片机要重复一次起始信号并发出器件地址和读 方向位(“1”),收到器件应答后就可以读出数据字节,每 读出一个字节,单片机都要回复应答信号。当最后一个字节 数据读完后,单片机应返回以“非应答”(高电平),并发 出终止信号以结束读出操作。
每个接到I2C总线上的器件都有唯一的地 址。主机与其它器件间的数据传送可以是 由主机发送数据到其它器件,这时主机即 为发送器。由总线上接收数据的器件则为 接收器。
在多主机系统中,可能同时有几个主机企图启 动总线传送数据。为了避免混乱, I2C总线要通 过总线仲裁,以决定由哪一台主机控制总线。 在80C51单片机应用系统的串行总线扩展中, 我们经常遇到的是以80C51单片机为主机,其它 接口器件为从机的单主机情况。
a、主机向从机发送数据,数据传送方向在整 个传送过程中不变:
注:有阴影部分表示数据由主机向从机传送,无阴影部分则 表示数据由从机向主机传送。 A表示应答, A表示非应答(高电平)。S表示起始信号, P表示终止信号。。
b、主机在第一个字节后,立即由从机读数据
c、在传送过程中,当需要改变传送方向时, 起始信号和从机地址都被重复产生一次,但 两次读/写方向位正好反相。
2.2 I2C总线器件的扩展
一、扩展电路
二、串行E2PROM的扩展
(1)串行E2PROM典型产品
ATMEL公司的AT24C系列:
AT24C01:128字节(128×8位); AT24C02:256字节(256×8位); AT24C04:512字节(512×8位) AT24C08:1K字节(1K×8位); AT24C16:2K字节(2K×8位);
二、典型信号模拟子程序
(1)起始信号 Void T2CStart(void) { SomeNop( ); SCL = 1; SomeNop( ); SDA = 0; SomeNop( ); SCL = 0; SomeNop( ); }
(2)终止信号 void I2cStop(void) { SDA = 0; SomeNop( ); SCL = 1; SomeNop( ); SDA = 1; SomeNo的,在起始信号产生 后,总线就处于被占用的状态;在终止信号产生后,总线 就处于空闲状态。
连接到I2C总线上的器件,若具有I2C总线的硬件接口,则 很容易检测到起始和终止信号。对于不具备I2C总线硬件接 口的有些单片机来说,为了检测起始和终止信号,必须保证 在每个时钟周期内对数据线SDA采样两次。 接收器件收到一个完整的数据字节后,有可能需要完成 一些其它工作,如处理内部中断服务等,可能无法立刻接收 下一个字节,这时接收器件可以将SCL线拉成低电平,从而 使主机处于等待状态。直到接收器件准备好接收下一个字节 时,再释放SCL线使之为高电平,从而使数据传送可以继续 进行。
(2)寻址字节中的特殊地址 固定地址编号0000和1111已被保留作为特殊 用途。
起始信号后的第一字节的8位为“0000 0000”时,称 为通用呼叫地址。通用呼叫地址的用意在第二字节中 加以说明。格式为:
第二字节为 06H时,所有能响应通用呼叫地址的从机器件 复位,并由硬件装入从机地址的可编程部分。能响应命令的 从机器件复位时不拉低SDA和SCL线,以免堵塞总线。 第二字节为 04H时,所有能响应通用呼叫地址并通过硬件 来定义其可编程地址的从机器件将锁定地址中的可编程位, 但不进行复位。
1.2
I2C总线的数据传送
一、数据位的有效性规定
I2C总线进行数据传送时,时钟信号为高电平期间,数据 线上的数据必须保持稳定,只有在时钟线上的信号为低电 平期间,数据线上的高电平或低电平状态才允许变化。
二、起始和终止信号
SCL线为高电平期间,SDA线由高电平向低电平 的变化表示起始信号;SCL线为高电平期间,SDA 线由低电平向高电平的变化表示终止信号。
(3)起始字节
起始字节是提供给没有I2C总线接口的单片机查询I2C总 线时使用的特殊字节。
不具备I2C总线接口的单片机,则必须通过软件不断地检 测总线,以便及时地响应总线的请求。单片机的速度与硬 件接口器件的速度就出现了较大的差别,为此,I2C总线上 的数据传送要由一个较长的起始过程加以引导。
引导过程由起始信号、起始字节、应答位、 重复起始信号(Sr)组成。
三、数据传送格式 (1)字节传送与应答
每一个字节必须保证是8位长度。数据传送时,先传 送最高位(MSB),每一个被传送的字节后面都必须跟 随一位应答位(即一帧共有9位)。
由于某种原因从机不对主机寻址信号应答时(如从机 正在进行实时性的处理工作而无法接收总线上的数据), 它必须将数据线置于高电平,而由主机产生一个终止信号 以结束总线的数据传送。 如果从机对主机进行了应答,但在数据传送一段时间后 无法继续接收更多的数据时,从机可以通过对无法接收的 第一个数据字节的“非应答”通知主机,主机则应发出终 止信号以结束数据的继续传送。 当主机接收数据时,它收到最后一个数据字节后,必须 向从机发出一个结束传送的信号。这个信号是由对从机的 “非应答”来实现的。然后,从机释放SDA线,以允许主 机产生终止信号。
传送数据时,单片机首先发送一个字节的被写入器件的存 储区的首地址,收到存储器器件的应答后,单片机就逐个发 送各数据字节,但每发送一个字节后都要等待应答。 AT24C系列器件片内地址在接收到每一个数据字节地址后 自动加1,在芯片的“一次装载字节数”(不同芯片字节数不 同)限度内,只需输入首地址。装载字节数超过芯片的“一 次装载字节数”时,数据地址将“上卷”,前面的数据将被 覆盖。 当要写入的数据传送完后,单片机应发出终止信号以结束 写入操作。写入n个字节的数据格式 :
(2)写入过程
AT24C系列E2PROM芯片地址的固定部分为1010, A2、A1、A0引脚接高、低电平后得到确定的3位编 码。形成的7位编码即为该器件的地址码。
单片机进行写操作时,首先发送该器件的7位地址 码和写方向位“0”(共8位,即一个字节),发送完 后释放SDA线并在SCL线上产生第9个时钟信号。被 选中的存储器器件在确认是自己的地址后,在SDA 线上产生一个应答信号作为相应,单片机收到应答 后就可以传送数据了。
(Inter IC BUS)总线 I2S(Inter IC Sound BUS ) SPI(Serial Peripheral Interface) UART( Universal Asynchronous Receiver/Transmitter ) USART CAN
LIN
下面讨论I2C串行总线。
四、总线的寻址 I2C总线协议有明确的规定:采用7位的寻址字节 (寻址字节是起始信号后的第一个字节)。 (1)寻址字节的位定义
D7~D1位组成从机的地址。D0位是数据 传送方向位,为“0”时表示主机向从机写数 据,为“1”时表示主机由从机读数据。
主机发送地址时,总线上的每个从机都将这7
位地址码与自己的地址进行比较,如果相同, 则认为自己正被主机寻址,根据R/位将自己 确定为发送器或接收器。 从机的地址由固定部分和可编程部分组成。 在一个系统中可能希望接入多个相同的从机, 从机地址中可编程部分决定了可接入总线该类 器件的最大数目。如一个从机的7位寻址位有4 位是固定位,3位是可编程位,这时仅能寻址8 个同样的器件,即可以有8个同样的器件接入 到该I2C总线系统中。
1.1
I2C串行总线概述
I2C总线是PHLIPS公司推出的一种串行总线,是具备多 主机系统所需的包括总线裁决和高低速器件同步功能的高 性能串行总线。
I2C总线只有两根双向信号线。一根是数据线SDA,另 一根是时钟线SCL。
I2C总线通过上拉电阻接正电源。当总线空闲时,两根线均 为高电平。连到总线上的任一器件输出的低电平,都将使总 线的信号变低,即各器件的SDA及SCL都是线“与”关系。
I2C串行总线的组成及工作原理 电子科技大学 微电子与固体电子学院
211大楼 - 503教研室 2017 – 4 - 16
1 I2C串行总线的组成及工作原理
采用串行总线技术可以使系统的硬件设计大大简化、系统的体积减小、
可靠性提高。同时,系统的更改和扩充极为容易。 常用的串行扩展总线有:
I2C
使用的格式一致,并不要求器件在这个脉冲期间作 应答。
2 80C51单片机I2C串行总线器件的接口 2.1 总线数据传送的模拟
主机可以采用不带I2C总线接口的单片机,如 80C51、AT89C2051等单片机,利用软件实现I2C总 线的数据传送,即软件与硬件结合的信号模拟。 一、典型信号模拟 为了保证数据传送的可靠性,标准的I2C总线的数 据传送有严格的时序要求。I2C总线的起始信号、终 止信号、发送“0”及发送“1”的模拟时序 :
相关文档
最新文档