欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

IIC 主站和从站

最编程 2024-03-02 10:25:39
...

IIC 总线本身支持多主控,成为主控的必要条件是能够主动控制数据的传输和时钟频率。

总线空闲时,上拉电阻是SDA和SDL均保持高电平,IIC器件都是集电极开路输出,遵循“线与”逻辑

也就是说,任意器件输出低电平都会拉低信号线。

任何通信都是由master发起,master 发起传输需要先发送开始位,停止传输需要发送停止位。

开始位的定义:当SCL稳定在高电平时,master 拉低SDA, 将产生一个开始位;

停止位的定义:当SCL稳定在高电平时,master 拉高SDA, 将产生一个停止位;

因此还可以推断出,SDA传输有效数据的时候,一定是在SCL为低电平的时候;

在选择从设备时,如果从设备采用7bit地址,则主设备在发起传输之前,需要先发送一字节的地址信息,

其中前7bit为设备地址,最后一位为读写标志。之后,每次传输的数据也是1字节,从MSB开始传输

传送完8bit之后还不算完,在第8个SCL下降沿之后,第9个SCL的上升沿到来之前,master释放SDA,

slave要发出一个ACK位,以保证通信的可靠性。


  • IIC设备的地址会在器件手册上标明;
  • 有的AP上IIC控制器没有自己的地址,也就是说它只能是master,不支持slave

原文地址:https://www.cnblogs.com/Arnold-Zhang/p/16115736.html

推荐阅读