IIC通信协议总结
IIC通信协议总结
IIC通信协议总结
IIC通信协议
概述
IIC总线的优点:I2C总线是各种总线中使用信号线最少,并具有自动寻址、多主机时钟同步和仲裁等功能的总线.
硬件结构
I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。
SDA数据线:设备上的串行数据线SDA接口电路应该是双向的,输出电路用于向总线上发送数据,输入电路用于接收总线上的数据。
SCL时钟线:而串行时钟线也应是双向的,作为控制总线数据传送的主机,一方面要通过SCL输出电路发送时钟信号;另一方面还要检测总线上的SCL电平,以决定什么时候发送下一个时钟脉冲电平,作为接受主机命令的从机,要按总线上的SCL信号发出或接收SDA上的信号,也可以向SCL线发出低电平信号以延长总线时钟信号周期。
空闲时候总线的状态:总线空闲时,因各设备都是开漏输出,上拉电阻Rp使SDA和SCL线都保持高电平。任一设备输出的低电平都将使相应的总线信号线变低,也就是说:各设备的SDA是“与”关系,SCL也是“与”关系。
主机:总线的运行(数据传输)(发出启动信号)、发出时钟信号以及传送结束时发出停止信号的设备,通常主机都是微处理器.
从机:被主机寻访的设备称为从机。为了进行通讯,每个接到I2C总线的设备都有一个唯一的地址,以便于主机寻访。
IIC通信协议总结
IIC通信协议总结
IIC通信协议总结
三:数据的传输
开始和停止条件的确定:在I2C总线传输过程中,将两种特定的情况定义为开始和停止条件(见图3):当SCL保持“高"时,SDA由“高”变为“低”为开始条件;当SCL保持“高”且SDA由“低”变为“高”。使用硬件接口可以很容易地检测到开始和停止条件,没有这种接口的微机必须以每时钟周期至少两次对SDA取样,以检测这种变化.
传输注意事项:
SDA线上的数据在时钟“高”期间必须是稳定的,只有当SCL线上的时钟信号为低时,数据线上的“高”或“低”状态才可以改变。
IIC通信协议总结
IIC通信协议总结
IIC通信协议总结
因此在IIC总线上胡数据传输过程中,.
响应信号ACK宽度为1位,紧跟在8个数据位后面,,主机在响应时钟脉冲期间释放SDA线,使其处在高电平(见图16—3上面的信号).而在响应时钟脉冲期间,接收方需要将SDA拉低,使SDA在响应时钟脉冲高电平期间保持稳定的低电平(见图16—3中间结束的信号)。
低电平用ACK表示,代表有应答;高电平用nACK表示,代表无应答。应答信号在I2C总线的数据传输过程中起着非常重要的作用,它将决定总线及连接在总线上设备下一步的状态和动作。一旦在应答信号上发生错误,例如接收方不按规定返回或返回不正确的应答信号,以及发送方对
IIC通信协议总结 来自淘豆网m.daumloan.com转载请标明出处.