IIC总线

1.特点

(1) 只要求两条总线线路,一条是串行数据线SDA,一条是串行时钟线SCL。(IIC是半双工,而不是全双工)。
(2) 每个连接到总线的器件都可以通过唯一的地址和其它器件通信,主机/从机角色和地址可配置,主机可以作为主机发送器和主机接收器。
(3) IIC是真正的多主机总线,(而这个SPI在每次通信前都需要把主机定死,而IIC可以在通讯过程中,改变主机),如果两个或更多的主机同时请求总线,可以通过冲突检测和仲裁防止总线数据被破坏。
(4) 传输速率在标准模式下可以达到100kb/s,快速模式下可以达到400kb/s。
(5) 连接到总线的IC数量只是受到总线的最大负载电容400pf限制。

2.协议

第一,每一支IIC设备都有一个唯一的七位设备地址;
第二,数据帧大小为8位的字节;
第三,数据(帧)中的某些数据位用于控制通信的开始、停止、方向(读写)和应答机制。

一、起始位,终止位,数据传输
(1) 起始位:SCL为高电平期间 SDA出现下降沿
在这里插入图片描述
(2) 终止位:SCL为高电平期间 SDA出现上升沿
在这里插入图片描述
(3) 数据传输 :SDA的数据在SCL高电平期间被写入从机。所以SDA的数据变化要发生在SCL低电平期间
在这里插入图片描述
二、数据读写
(1) 主设备往从设备中写数据,数据传输格式如下:
在这里插入图片描述
R/W: 写用0来表示(高电平),读用1来表示(低电平)
ACK: 0应答 1非应答
(2) 主设备从从设备中读数据,数据传输格式如下:
在这里插入图片描述
在从机产生响应时,主机从发送变成接收,从机从接收变成发送。
之后,数据由从机发送,主机接收,每个应答由主机产生,时钟信号仍由主机产生。
若主机要终止本次传输,则发送一个非应答信号,接着主机产生停止条件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值