This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TCA9517-Q1:TCA9517-Q1:I2C 总线陷阱

Guru**** 1788580 points
Other Parts Discussed in Thread: TCA9517-Q1
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1424237/tca9517-q1-tca9517-q1-i2c-bus-trap

器件型号:TCA9517-Q1

工具与软件:

您好、TI 专家
我们使用与图中所示结构类似的结构来设计具有3.3V 电压的 MCU、该 MCU 通过 LEVELSHIFT 转换为1.8V 电平。 偶尔会发生 MCU I2C 卡死区的情况、测试 BUS-B (SCL 为高电平3.3V、SDA 为低电平0.5V)。BUS-A 的 SCL 为1.8V 的高电平、而 SDA 为约0V 的低电平。
(1)我是否可以询问哪些情况会导致这种情况?
(2)我们试图关闭和打开 VCCA 的电源、但总线仍然冻结。 VCCA 断电后、总线 B 的 SDA 是否仍能输出0.5V 的低电平?
谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    看起来总线上的一些其他器件会将 SDA 拉至低电平。 您必须重置该器件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Clemens、、

    我想说"总线 A 上的器件将 SDA 拉至低电平"、对吧? 因为只有主器件/MCU OMN 总线 B 侧。 所以我想说为什么我们关闭 VDDA、总线 B 侧的 SDA 无法变为高电平?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    对不起、我确实混淆了两边。

    SDAB 上0.5V 的电压表明 TCA9517-Q1在 B 侧输出低电平、因为 A 侧的某个器件将线路拉至低电平。 (B 侧的器件必须将电压拉至0.5V 以下、使 TCA9517-Q1在 A 侧驱动为低电平。)

    因此、其中一个 A 侧器件存在软件或硬件错误。 尝试移除器件;但要找出运行期间哪些器件会灌入电流、唯一的方法是测量串联电阻器上的压降。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Clemens:

     这意味着 I2C 总线被从器件而不是主器件拉低了、对吧?  

    BTW、 我们在 B 侧主器件- MCU 上发送命令(i2cscan)、但它无法将 SDA 和 SCL 均驱动为低电平、从而使 I2C 总线仍然抽头、您有什么建议吗?

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、它是 A 侧的某个器件。

    当任何 μ I²C 信号一直保持低电平时、不能进行通信。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Clemens:

    当异常的情况下,我拉低然后高 EN 引脚的左移, I2C 总线恢复,如果器件在总线上驱动器低 SDA,我不认为它可以以这种方式恢复,你怎么看?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在不知道哪个器件将 SDA 拉至低电平的情况下、很难说什么具体。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ziyang:

    您可以和我们分享任何方框图或原理图吗?  

    EN 引脚是否在 I2C 总线上的许多器件之间共享? 在 EN 引脚上拉至低电平然后拉至高电平是否一次仅影响 TCA9517-Q1或许多器件?  

    您是否有该问题的示波器捕获?  

    此致、

    Tyler

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Tyler、

    1、无、EN 引脚直接拉至3.3V、我使用飞线通过移除飞线将其下拉至 GND 并将其拉至高电平;

    2 μ、A

    在总线上 A:

    在总线 b 上:在第8个和第9个时钟之间有延迟、从器件会将 SCL 驱动为低电平

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    资阳市

    这看起来像是器件的正常操作。  

    从器件将 SCL 驱动为低电平、通常是一种回溯到 MCU 的时钟形式。 因此、ACK 位会延迟。

    如数据表中所示、来自 TCA9517-Q1缓冲器 VolB = 0.52V 的较大失调电压。 在时钟周期1-8上、从器件正在从 B 到 A 进行通信  

    在第9个时钟周期、主器件从 A 通信到 B、因此缓冲器的失调电压会更大。  

    此致、

    Tyler

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    HiTyler

    是的,这是正常操作,不知道为什么有异常:SCL-B 是高电平,而 SDA-B 是0.5V,为什么从器件拉 SDA 一直低电平。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    资阳市

    您指的是示波器捕获中的哪个点?  

    缓冲器由主/从器件驱动。 如果 I2C 帧出现问题、则是由 MCU 中的 I2C 驱动程序导致的。 MCU 正在生成 I2C 命令、则可能是与软件相关的问题。  

    此致、

    Tyler