I2C总线特点
I2C 总线是主从结构,单片机是主器件,存储器是从器件。一条总线可以带多个从器件( 也可以有多主结构),I2C 总线的SDA 和SCL 是双向的,开路门结构,通过上拉电阻接正电源。进行数据传输时,SDA 线上的数据必须在时钟的高电平周期保持稳定。数据线的高或低电平状态只有在SCL 线的时钟信号是低电平时才能改变,如图1 所示。http://file.elecfans.com/web1/M00/99/99/pIYBAF0YIGiAGeI_AAAoecbaZdA491.jpg
图1 数据位的有效性规定
在SCL 线是高电平时,SDA 线从高电平向低电平切换表示起始条件;当SCL 是高电平时SDA 线由低电平向高电平切换表示停止条件如图2 所示。
http://file.elecfans.com/web1/M00/99/99/pIYBAF0YIGiAGeI_AAAoecbaZdA491.jpg
图2 起始和停止信号
发送到SDA 线上的每个字节必须为8 位。
可以由高位到低位传输多个字节。每个字节后必须跟一个响应位(ACK)。响应时钟脉冲由主机产生。主机释放SDA 线从机将SDA 线拉低,并在时钟脉冲的高电平期间保持稳定。如图3 示。当主机接受数据时,它收到最后一个数据字节后,必须向从机发出一个结束传送的信号。这个信号是由主机对从机的“非应答”来实现的。然后,从机释放SDA 线,以允许主机产生终止或重复起始信号。
http://file.elecfans.com/web1/M00/99/99/pIYBAF0YIGmAcuOQAAA7eaXvmB4254.jpg
图3 字节格式与应答
页:
[1]