[STM32G0] SCL线没有显示任何时钟活动,SDA线则始终保持低电平

[复制链接]
345|7
我的牙白 发表于 2025-9-12 13:14 | 显示全部楼层 |阅读模式
用CubeIDE配置STM32G031F6P6的I2C2。我只是简单勾选了I2C2的复选框(下图)。在我的电路中,I2C线路上已经安装了上拉电阻。但当我发送I2C消息时,SCL线没有显示任何时钟活动,SDA线则始终保持低电平。注意到IDE中I2C1的配置与I2C2不同。我会使用I2C1看是否能正常工作,但应该如何让I2C2正常工作呢?


1843368c2e78903fb0.png 8456768c2e79b95fec.png
cr315 发表于 2025-9-12 15:47 | 显示全部楼层
用万用表测量空闲状态下SDA/SCL的电压,应为高电平。若电压过低,可能是上拉电阻阻值过大或线路短路。
classroom 发表于 2025-9-12 16:49 | 显示全部楼层
是不是把I2C2的SCL/SDA引脚配置为推挽输出了?
duo点 发表于 2025-9-12 17:49 | 显示全部楼层
GPIO模式配置错了可能。
flycamelaaa 发表于 2025-9-12 19:50 | 显示全部楼层
看看I2C2的时钟是否已启用。
powerantone 发表于 2025-9-12 19:51 | 显示全部楼层
I2C参数设置是否正确无误?
probedog 发表于 2025-9-12 21:51 | 显示全部楼层
逻辑分析仪抓取波形看看。
stormwind123 发表于 2025-9-12 22:52 | 显示全部楼层
在HAL库函数中启用超时检测,避免程序卡死。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

55

主题

55

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部