公司网站上荣誉墙怎么做,万网域名申请网站,中国互联网大会,wordpress评论数字验证码参考资料#xff1a;大部分均引用b站江协科技课程、GPT及网络资料 什么是IIC#xff08;i2C#xff09;通讯协议#xff1f;
关键字#xff1a;SCL、SDA、半双工、同步、串行。 IIC#xff08;Inter-Integrated Circuit#xff09;#xff0c;也称为I2C#xff08;In…
参考资料大部分均引用b站江协科技课程、GPT及网络资料 什么是IICi2C通讯协议
关键字SCL、SDA、半双工、同步、串行。 IICInter-Integrated Circuit也称为I2CInter-Integrated Circuit是一种由Philips公司现为NXP开发的用于在集成电路之间进行短距离通信的串行总线协议。IIC协议非常适合低速设备之间的数据传输具有简单、低成本和易于实现的特点。 其中有几个问题为什么是短距离什么是串行总线这个等学完概念后再进行解答。
概念
IIC总线基本特性 双线结构IIC总线采用两根双向线路进行通信 SCL串行时钟线由主设备产生的时钟信号用于同步数据传输。SDA串行数据线用于传输数据数据在时钟信号的控制下进行传输。 多主从结构支持总线挂载多设备一主多从、多主多从。每个设备都有一个唯一的地址。 地址分配IIC设备使用7位或10位地址来唯一标识每个设备。在传输数据时主设备通过地址帧选择目标从设备。 同步半双工 数据传输
数据帧每次传输的数据帧由8位数据组成从高位MSB到低位LSB传输。应答位Acknowledge Bit在每个数据帧传输之后由接收方发送一个应答位。若应答位为低电平表示接收成功若应答位为高电平表示接收失败。
数据读写过程 写操作 主设备发送起始条件。主设备发送从设备地址以及读写控制位0表示写1表示读。从设备发送应答位。主设备发送要写入的数据。从设备发送应答位。重复数据传输和应答直到所有数据传输完毕。主设备发送停止条件。 读操作 主设备发送起始条件。主设备发送从设备地址以及读写控制位。从设备发送应答位。主设备切换到接收模式读取数据。主设备发送应答位。重复数据读取和应答直到所有数据读取完毕。主设备发送停止条件。
IIC时序
1.起始和终止 起始条件SCL高电平期间SDA从高电平切换到低电平 终止条件SCL高电平期间SDA从低电平切换到高电平 2.发送和接收 发送一个字节SCL低电平期间主机将数据位依次放到SDA线上高位先行然后释放SCL从机将在SCL高电平期间读取数据位所以SCL高电平期间SDA不允许有数据变化依次循环上述过程8次即可发送一个字节 接收一个字节SCL低电平期间从机将数据位依次放到SDA线上高位先行然后释放SCL主机将在SCL高电平期间读取数据位所以SCL高电平期间SDA不允许有数据变化依次循环上述过程8次即可接收一个字节主机在接收之前需要释放SDA 3.应答 发送应答主机在接收完一个字节之后在下一个时钟发送一位数据数据0表示应答数据1表示非应答 接收应答主机在发送完一个字节之后在下一个时钟接收一位数据判断从机是否应答数据0表示应答数据1表示非应答主机在接收之前需要释放SDA 了解了这些基本知识再回到开头IIC其只需要两根线控制一根时钟线SCL控制同步一根数据线SDA传输数据因为只有一根数据线数据逐个传输因此是串行通讯。 其中还提到了半双工这里来解释下 半双工数据可以在两个方向上传输但不能同时进行如iicrs485 全双工数据可以在两个方向上同时进行传输。发送和接收可以同时进行不会互相干扰
如RS-232。 单工数据只能在一个方向上传输。发送方只能发送接收方只能接收如电视广播。
iic在长距离的环境中容易受到干扰造成电平跳变会严重影响数据的准确性且IIC协议依赖于时钟线SCL和数据线SDA的同步工作。长距离可能导致信号延迟不一致因此其适合短距离通讯。