IIC(Inter-Integrated Circuit)其实是IICBus简称,所以中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备而发展。I²C的正确读法为“I平方C”("I-squared-C"),而“I二C”("I-two-C")则是另一种错误但被广泛使用的读法。自2006年10月1日起,使用I²C协议已经不需要支付专利费,但制造商仍然需要付费以获取I²C从属设备地址。
常见术语介绍:
三种不同的通信方式: 单工、半双工、全双工。
串行传输和并行传输。串行传输是设备之间的数据传输,传输中只有一个数据位。并行传输是指在多个并行通道上分组同时传输数据。它是同时在设备之间传输多个数据位。
IIC总线是一种串行、半双工、近距离、低速总线。
I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。
I2C总线是各种总线中使用信号线最少,并具有自动寻址、多主机时钟同步和仲裁等功能的总线。
知识笔记:1、I2C是一个多主机总线,但同一时间只能有一个主机。2、主机有权发起和结束一次通信。3、I2C在同一时间,只能有一个主机使用总线,I2C具有冲突检测和仲裁的功能,当总线上有多个主机使用主线时,I2C会仲裁,选择合适的主机优先使用总线。4、在通信时,发送数据的叫:发送器,接收器的数据:接收器。5、每个连接I2C总线上的设备都有唯一一个地址(7位)。6、每个器件可作主机也可作从机。(同一时刻只能有一个主机)。7、增加或删除设备,不影响其他器件正常工作。
I2C的通信过程:
1、主机发送起始信号,启用总线。
2、主机发送一个字节信号,指明从机地址,和后续字节的传递方向。
最后一位指明传递方向,0 表示 主机→从机。 1表示 从机 → 主机。
3、被寻址从机发送应答信号给主机。
4、发送器发送一个字节数据。
5、接收器发送应答信号回应发送器。
循环 4&5
n、通信完成后,主机发送停止信号释放总线。
I2C的四个主要信号。
启动和停止信号都是由主机发送,由主机控制总线的占用和释放。
SCL 为 高电平 SDA 由高变低 表示起始信号
SCL 为 高电平 SDA 由低变高 表示停止信号
字节传送:数据传送时,串行传输。发送器先传送最高位,后传送最低位。
发送器发送一个字节数据,接收器发送一位应答位回答发送器,一帧共9位。
应答:低电平 0
非应答: 高电平 1
I2C的同步信号: 在通信时,同步接收器和发送器的时序,目的保持数据传输正确。
SCL 为 低电平 SDA 数据线发送一位数据,允许数据变化。
SCL 为 高电平 SDA数据线上不允许数据变化 ,必须保持稳定。
I2C的典型时序
参考资料:
1、IIC(Inter-Integrated Circuit(集成电路总线))_百度百科 (baidu.com)
标签:SCL,主机,总线,笔记,SDA,IIC,I2C,发送器 From: https://www.cnblogs.com/yhm1314/p/16747365.html