[STM32L0] I2C通信时从设备偶尔不响应,像在走神

[复制链接]
159|10
帛灿灿 发表于 2025-10-13 07:18 | 显示全部楼层 |阅读模式
调I2C总线时,从机偶尔不回应主机命令,感觉像“走神”一样。重启主机就恢复。线长20cm,加了4.7k上拉,速率100k。Scope看波形还算干净。怀疑是不是ACK阶段的问题。
Clyde011 发表于 2025-10-13 07:24 | 显示全部楼层
试着抓连续几个包,看看NACK出现在哪个字节。
公羊子丹 发表于 2025-10-13 07:25 | 显示全部楼层
我之前遇到过,是时序太紧,拉宽间隔就好了。
周半梅 发表于 2025-10-13 07:26 | 显示全部楼层
4.7k上拉对L051来说有点大,试试2.2k?
 楼主| 帛灿灿 发表于 2025-10-13 07:27 | 显示全部楼层
是不是主机发完命令没等BUS空闲?
童雨竹 发表于 2025-10-13 07:28 | 显示全部楼层
我怀疑你从机有时在忙,没及时响应ACK。
万图 发表于 2025-10-13 07:29 | 显示全部楼层
可以加一个超时机制看看有没有卡死。
Wordsworth 发表于 2025-10-13 07:30 | 显示全部楼层
那种情况我后来加了延时就稳定了。
Bblythe 发表于 2025-10-13 07:31 | 显示全部楼层
有空试下I2C重新初始化,看能不能恢复。
Pulitzer 发表于 2025-10-13 07:32 | 显示全部楼层
我记得L0系列I2C有个bug,ST论坛里提过。
Uriah 发表于 2025-10-13 07:33 | 显示全部楼层
你用的是多主机吗?冲突也会导致不响应。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

174

主题

6284

帖子

0

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