我有一块板作为 I2C 主机。只有一位大师。它连接到两个从站。一个从属设备支持时钟延长,而另一个不支持。在读取或写入事务之间,线路被拉低。有没有可能从机不会拉低线?
问问题
342 次
1 回答
0
Frome Wikipedia,物理层段落:
当 SCL 为低电平时,发送器(最初是主机)将 SDA 设置为所需的值,并且(经过一小段延迟以让该值传播)让 SCL 浮动为高电平。然后主控等待 SCL 真正变高;这会因 SCL 信号的有限上升时间(上拉电阻的 RC 时间常数和总线的寄生电容)而延迟,并且可能会因从机的时钟延长而额外延迟。一旦 SCL 为高,主机等待最短时间(标准速度 I²C 为 4 μs)以确保接收器已看到该位,然后再次将其拉低。这样就完成了一位的传输。
所以是的,主人可以将 SCL 线拉低。这是传输的正常结束。
于 2020-06-05T12:35:27.263 回答