发新帖我要提问
12
返回列表
打印
[应用相关]

IO模拟I2C需要开漏模式吗

[复制链接]
楼主: 734774645
手机看帖
扫描二维码
随时随地手机跟帖
21
在这些引脚的外部添加适当的上拉电阻(通常为4.7kΩ至10kΩ),以便在没有设备驱动时,线路能够保持高电平状态。

使用特权

评论回复
22
lzbf| | 2024-9-13 15:42 | 只看该作者
在使用STM32的GPIO模拟I2C通信时,通常需要将相关的GPIO引脚配置为开漏(Open-Drain)输出模式,

使用特权

评论回复
23
kkzz| | 2024-9-14 19:03 | 只看该作者
通过设置GPIO为开漏输出模式,可以确保SDA和SCL线在未被驱动时保持高电平状态,从而避免信号冲突和设备损坏。

使用特权

评论回复
24
youtome| | 2024-9-14 22:34 | 只看该作者
I2C总线要求SDA和SCL引脚既能输出信号,又能读取信号。开漏模式允许这些引脚在需要时切换到输入模式,以读取从设备发送的数据。

使用特权

评论回复
25
backlugin| | 2024-9-22 16:00 | 只看该作者
虽然推挽输出在特定情况下也能正常工作,但开漏模式提供了更好的兼容性和安全性,尤其是当总线上可能连接多个设备时。

使用特权

评论回复
26
olivem55arlowe| | 2024-9-22 18:56 | 只看该作者
也可以使用推挽(Push-Pull)模式来模拟 I2C。在这种情况下,STM32 的 GPIO 引脚可以在输出高电平时直接驱动总线到高电平,而不是呈现高阻态。

使用特权

评论回复
27
robertesth| | 2024-9-22 21:52 | 只看该作者
当设备需要驱动总线时,它会将引脚设置为低电平;当设备不驱动总线时,引脚会呈现高阻态,允许上拉电阻将总线拉回到高电平。

使用特权

评论回复
28
qiufengsd| | 2024-9-23 14:44 | 只看该作者
开漏模式并不是必需的,但推荐使用。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则