F物的自我救赎(笑) 2023-02-25 17:32 采纳率: 73.8%
浏览 34
已结题

关于#stm32#的问题:IIC的空闲状态只能有外部上拉, 而此时空闲设备被拉到了高阻态,也就是相当于断路, 整个IIC总线只有开启了的设备才会正常进行通信

问题:i2c的高电平与高阻态迷惑

我们知道IIC的所有设备是接在一根总线上的,那么我们进行通信的时候往往只是几个设备进行通信,那么这时候其余的空闲设备可能会受到总线干扰,或者干扰到总线,怎么办呢?

为了避免总线信号的混乱,IIC的空闲状态只能有外部上拉, 而此时空闲设备被拉到了高阻态,也就是相当于断路, 整个IIC总线只有开启了的设备才会正常进行通信,而不会干扰到其他设备。

问题在于,SDA与SCL总线都外接了一个上拉电阻,这不应该是给予了一个高电平而不是高阻态了吗?

img

  • 写回答

2条回答 默认 最新

  • 路漫漫其修远. 博客专家认证 2023-02-25 18:32
    关注

    在IIC总线上,每个设备都需要有一个唯一的7位或10位地址,以便其他设备能够找到它。当一个设备不需要与其他设备通信时,可以通过设置自身地址为0x00,使其在总线上保持静默。这样可以避免该设备向总线发送干扰信号,同时也可以避免总线向该设备发送干扰信号。

    此外,还可以采取以下措施来减少总线干扰:

    • 合理布局PCB,降低总线线长、线宽、线间距等参数,以减少信号的串扰和互相干扰。
    • 在总线的两端加上电阻和电容等元器件,以防止信号反射和抑制干扰。
    • 选择合适的总线驱动芯片和总线保护器件,以提高总线的抗干扰能力和可靠性。
    • 在设计中考虑使用总线控制器或者操作系统的IIC驱动程序,以便更好地管理总线的访问和使用。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月6日
  • 已采纳回答 2月26日
  • 创建了问题 2月25日

悬赏问题

  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因