打印
[STM32L0]

I2C时钟拉低卡死到底是哪个外设搞的?

[复制链接]
299|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
帛灿灿|  楼主 | 2025-4-23 07:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
调试中I2C总挂死,SCL拉不高,是哪个从设备搞鬼怎么查清楚?

使用特权

评论回复
沙发
Clyde011| | 2025-4-23 07:27 | 只看该作者
I2C真是调试最费劲的协议之一。

使用特权

评论回复
板凳
Uriah| | 2025-4-23 07:28 | 只看该作者
我给每个设备加上上拉电阻才好点。

使用特权

评论回复
地板
Pulitzer| | 2025-4-23 07:29 | 只看该作者
看下是不是ACK没接收到,一直重发。

使用特权

评论回复
5
Bblythe| | 2025-4-23 07:29 | 只看该作者
拔掉设备一个个试,慢但最管用。

使用特权

评论回复
6
Wordsworth| | 2025-4-23 07:30 | 只看该作者
有次我某个设备断电状态下就一直拉低……

使用特权

评论回复
7
万图| | 2025-4-23 07:31 | 只看该作者
改成软件复位I2C能自救不少。

使用特权

评论回复
8
童雨竹| | 2025-4-23 07:32 | 只看该作者
有时候bus busy没清掉也会假死。

使用特权

评论回复
9
帛灿灿|  楼主 | 2025-4-23 07:33 | 只看该作者
是不是你用了多个IO复用的I2C口?

使用特权

评论回复
10
周半梅| | 2025-4-23 07:34 | 只看该作者
我用逻辑分析仪一看就知道谁拉住SCL了。

使用特权

评论回复
11
公羊子丹| | 2025-4-23 07:34 | 只看该作者
有些传感器上电慢,没准备好就通信会卡。

使用特权

评论回复
12
9dome猫| | 2025-4-30 23:35 | 只看该作者
检查 I2C 总线的 SCL 和 SDA 信号线是否被意外短路到地,或者是否存在电气干扰,导致总线卡死。

使用特权

评论回复
13
春日负喧| | 2025-5-15 16:00 | 只看该作者
从设备内部电路故障或软件逻辑错误,可能使其无法正确响应主机命令,持续占用总线

使用特权

评论回复
14
失物招領| | 2025-5-15 16:30 | 只看该作者
主机与从设备之间的时序不匹配,如主机发送速度过快,从设备处理不及,可能触发从设备的时钟延展(Clock Stretching)功能,持续拉低SCL线。

使用特权

评论回复
15
温室雏菊| | 2025-5-15 17:12 | 只看该作者
I2C总线需通过上拉电阻拉高SCLSDA线。若上拉电阻阻值过大或未配置,可能导致信号电平异常,SCL无法拉高

使用特权

评论回复
16
她已醉| | 2025-5-15 18:00 | 只看该作者
I2C总线受电磁干扰,或线缆间存在短路,可能导致SCL信号异常。

使用特权

评论回复
17
白马过平川| | 2025-5-15 21:07 | 只看该作者
STM32L0 I2C外设故障,I2C外设内部寄存器配置错误,或硬件电路存在缺陷,可能导致SCL线异常拉低。

使用特权

评论回复
18
故意相遇| | 2025-5-15 21:38 | 只看该作者
.检查I2C总线的SCL和SDA线是否配置了4.7kΩ至10kΩ的上拉电阻。若未配置或阻值不当,需重新配置。

使用特权

评论回复
19
风凉| | 2025-5-15 22:07 | 只看该作者
检查线缆连接,使用万用表或示波器检查I2C总线是否存在短路或断路,确保线缆连接正常。

使用特权

评论回复
20
将爱藏于深海| | 2025-5-15 22:49 | 只看该作者
将疑似故障的从设备从总线上移除,观察I2C总线是否恢复正常。若恢复正常,则可能是该从设备导致的问题

使用特权

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

本版积分规则

74

主题

4785

帖子

0

粉丝