问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

IIC总线硬件设计详解:从基本概念到实际应用

创作时间:
作者:
@小白创作中心

IIC总线硬件设计详解:从基本概念到实际应用

引用
CSDN
1.
https://m.blog.csdn.net/qq_40535577/article/details/141272359

IIC总线是一种两线制通信总线,由SCL(时钟线)和SDA(数据线)组成。由于数据线只有1条且收发共用,因此IIC总线采用半双工工作方式。

IIC总线上可以挂载多个设备,每个设备都有一个独一无二的地址。其中,一个设备为主设备,其余为从设备。设备地址由8位组成,其中一位为广播地址,因此有效设备地址为7位,可以表示2^7=128个设备。但是,0X00地址通常不用,所以实际上可以表示127个设备,即一条IIC总线上最大可以存在1个主设备和126个从设备。

主设备要与某个从设备通信时,会在数据线上发送从设备地址。从设备检测总线上的设备地址是否与自身一致,如果一致,则给主设备返回应答信号,通信开始。

IIC硬件设计要点

IIC硬件设计相对简单,但需要注意以下两点:

  1. 上拉电阻的使用:IIC总线上的SCL和SDA线在设计时往往需要加上拉电阻。这是因为IIC设备或芯片的SCL和SDA引脚大多为开漏输出,只能输出低电平,无法直接输出高电平。为了实现总线上逻辑1的发送,外部就需要加上拉电阻。上拉电阻的阻值一般选择4.7K或10K,这是综合考虑速率和负载电容得出的值。

  2. 总线电平一致性:如果通信双方的IIC总线电平不一致,需要加电平转换电路。例如,当CPU的IIC口电平为1.2V,而IIC Flash芯片的IO电平为3.3V时,就需要进行电平转换。这里介绍一种常用的电平转换电路:

  • 信号从MCU到Flash:MCU高电平1.2V时,NMOS管截至,Flash为高电平3.3V;MCU低电平0V时,NMOS管导通,Flash为低电平0V。
  • 信号从Flash到MCU:Flash高电平3.3V时,NMOS管截至(寄生二极管截至,图上未画出方向),MCU为高电平1.2V;Flash低电平0V时,NMOS管导通(寄生二极管导通),MCU为低电平0V。

通过上述设计,可以实现IIC总线的正常通信。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号