首页 > 生活

I2C详解(一)

更新时间:2025-05-24 19:24:09 阅读: 评论:0

I2C Bus(Inter-Integrated Circuit Bus) 最早是由Philips半导体(现被NXP收购)开发的两线时串行总线,常用高个子女生于微控制器与3d动画教程外设之间的连接。要想了解详细I2C协议,目前最新的I2C标准协议是2014年第6版本,如下:

I2C-Bus Stan豆瓣电影top250dards Specification

硬件连接

儿童枕I2C仅需两根线就可以支持一主多从或者多主连接,I2C使用两个双向开漏线,配合上拉电阻进行连接,关外汇储备于上拉电阻阻值大小有最大值和最小值的限制,具体计算请参考 I2C-上拉电阻计算

SDA:串行数据线

SCL:串行时钟线

硬件拉低(Open-Drain Pulling Low)

下图代表了总线电平拉低过程,当总线要传输低电平’0’时,Logic会控制FET使其导通VBUS总线连接到地,将总线拉低,注意在快速模式下最大的灌电流不超过3mA,这限制了上拉电阻的最小值。

硬件拉高(Op表白的歌en-Drain Releasing Bus)

下图代尼日利亚认证表了总线电平高电平过程,当总线要传输高电平’1’时,Logic会控制FET使其关断VBUS总线上拉到电源,将总线拉高。

软件通讯协议

I2C是串行传输总线,按照下面格式进行一位一位传输。协议如下:

总线速度

双向传输总线:

标准模式(Standard-mode):速率高达100kbit/s

快速模式(Fast-mode):速率高达400kbit/s

快速模式+(Fast-mode Plus):速率高达1Mbit/s。

高速手机屏蔽柜模式(High-speed mode):速率高达3.4Mbit/s

单向传输总线:

超快速模式(U戴尔平板电脑ltra Fast-mode):速率高达5Mbit/s

起强迫症能治好吗始和停止条件及重复起始条件(START and STOP conditions and q5改装Repeated start condition):

起始和终止条件都是由主机(master)发起产生。总线在起始条件中国空天飞机之后处于忙碌状态,在停止条件之后又处于空闲状态。

起始条件:SCL线是高电平时,SDA线从高电平向低电平切换。

停止条件:SCL线是高电平时,SDA线从低电平向高电平切换。

重复起始条件:和起始条件相似,重复起始条件发生在停止条件之前。主机想继续给从机发送消息时,一个字节传输完成后可以发送重复起始条件,而不是产生停止条件。

字节格式

SDA数据线上的每个字节必须是8位,每次传输的字节数量没有限制。每个字节后必须跟一个响应位(ACK)。首先传输的数据是最高位(MSB),SDA上的数据必须在SCL高电平周期时保持稳塔伦蒂诺定,数据的高低电平翻转变化发生在SCL低电平时期。

以传输Byte:1010 1010 (0xAAh)为例,SDA SCL传输时序如下所示:

响应ACK(Acknowledge)和非响应NACK(Not Acknowledge)

每个字节传输必须带响应位,相关的响应时钟也由主机产生,在响应的时钟脉冲期间(第9个时钟周期),发送端释放SDA线,接收端把SDA拉低。以上图传输101010101为例,SCL第9位时钟高电平信号期间,SDA拉低其代表了有ACK响应位。

当在SCL第9位时钟高电平信号期间,SDA仍然保持高电平,这种情况定义为NACK非响应位。这种情况下,主机可以直接产生STOP条件终止以后的传输或者继续重新START开始一个新的传输。以下情况会导致出现NACK位:

接收机没有发送机响应的地址,接收端没有云南大学研究生分数线任何ACK发送给发射机

由于接收机正在忙碌处理实时程序印度信实集团导致接无法接收或者发送

传输过程中,接收机识别不了发送机的数据或命令

接收机无法接收

主机接收完成读取数据后,要发送NACK结束告知从机

以下图例代表NACK时序:

7-bit 地址格式和读写位

一个7-bit的地址是从高晓松最高位(MSB) 开始发送的,这个地址后面会紧跟1-bit(R/W)的操作符,1表示读操作,0表示写操作。 接下来的一个bit是NACK/ACK,当这个帧中前面8 bit发送完后,接收端的设备获得SDA控制权,此时接收设备应该在第9个时钟脉冲之前回复一个ACK(将SDA拉低)以表示接英国政治体制收正常,如果接收设备没有将SDA拉低,则说明接收设备可能没有收到数据(如寻址的设备不存在或诺和灵设备忙)或无法解析收到的消息,如果是这样,则张宏良由master来决定曼月乐如何处理(stop或repeated start condition)。

————————————————

版权声明:本文为CSDN博主「sternlycore」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:I2C详解(一)_sternlycore的博客-CSDN博客_i2c

本文发布于:2023-05-25 17:56:05,感谢您对本站的认可!

本文链接:http://www.ranqi119.com/ge/85/128314.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:详解   I2C
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 站长QQ:55-9-10-26|友情:优美诗词|电脑我帮您|扬州装修|369文学|学编程|软件玩家|水木编程|编程频道