1.IIC通信定义
多主机半双工同步串行总线。
由数据线 SDA 和时钟 SCL 构成的串行总线,时钟信号全程由主机提供。
2.IIC传输速度
S(标准模式)测量与控制场合,100kb/s
F(快速模式),速率为 400kb/s
Hs(高速模式),速率为 3.4Mb/s。
3.IIC数据传送格式
每一个字节必须保证是8位长度。数据传送时,先传送最高位(MSB),
每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位)。
4.IIC起始和停止信号
- 起始:时钟线SCL为高时,数据线SDA由高到低
- 停止:时钟线SCL为高时,数据线SDA由低到高
SDA和SCL同时为高时,为IIC总线的空闲状态。
除了启动及停止的状况下,所有的SDA 信号变化都要在SCL 时钟为低电平时进行;
数据位在每一个时钟周期的高电平期间保持稳定,不可以进行改变。
每次数据传送总是由主机产生的停止信号结束。
5.IIC应答信号
数据接收方对发送方回应一个低电平信号;此时数据发送方释放SDA信号线的控制。
由于IIC总线上有上拉电阻,因此此时总线默认高电平,若接收方正确接收到数据,则将SDA总线拉低,以示应答。
由于某种原因, 不产生应答时,如被控器正在进行其它处理无法接收总线上的数据时,
必须释放总线,将数据线置高电平,然后主控器可通过产生一个停止信号终止数据传输。
6.IIC读写时序
写时序
读时序
进行读操作时,首先仍是写操作,先向从机写入要读取的数据地址,随后重新发送开始信号及从机地址的读请求,
从机应答后发送数据,直到不需要在读取时主机回复nAck,发起结束信号,通信结束。
参考资料