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.

[参考译文] TCA6424A:在一个读取操作期间、此部件将数据线路保持在低电平

Guru**** 2394305 points
Other Parts Discussed in Thread: TCA6424A, TCA9548A

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/689320/tca6424a-part-holds-data-line-low-during-a-read-operation

器件型号:TCA6424A
主题中讨论的其他器件: TCA9548A

有时、在读取操作期间、TCA6424A 会在时钟为高电平时将数据线置为低电平(违反 I2C 规范)、并无限期地将其保持为低电平。  它需要复位或下电上电才能恢复。  有什么想法会导致这种情况?

一旦在一个时钟高电平状态期间数据被拉低、主器件停止发送时钟。  我不知道这是符合 I2C 规范还是由于主器件实现。

Craig

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

    您在 I2C 总线上还有哪些其他器件?

    在您可以提供的读取操作期间、您是否有与 TCA6424A 通信的示波器截图?

    发生这种情况后、您是否可以在时钟线上发送9个时钟脉冲以查看 SDA 是否取消锁存?

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

    您好、Bobby、

    这是该总线上唯一的器件。  我们在主器件和该器件之间使用 TCA9548A I2C 开关、该通道是唯一启用的通道。  

    主设备是 PIC18LF66K40T。  此主器件控制硬件中的9个读取和写入时钟、不受 FW 控制。

    第一张图片显示了用于写入地址的两字节写入命令、以及用于读取地址的两字节写入命令。  当从器件在一个时钟高电平期间将数据线路驱动为低电平时、最后一个字节被终止。  在这种情况下、我不知道主器件为什么停止发送时钟。

    下一张图片是另一个放大为终止读取字节的实例。  这一次、在时钟为高电平时、从器件将数据线路驱动为低电平之前、再为几个位计时。

    感谢你的帮助。

    Craig

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

    嗨、Craig、

    您可以肯定的是、当这种情况发生时、您可以探测其他 SDA 通道并查看这些通道中是否有任何通道也被锁存为低电平吗? 我想确保其他通道确实已禁用。

    我还想查看当您在锁存 SDA 线路时复位 TCA9548A 开关时会发生什么情况。 具有主器件 SDA 的主通道是否保持锁存低电平、或者 TCA6424A 器件的 SDA 是否保持低电平? 这将有助于确认 TCA6424A 是锁存低电平的器件、并且这不是编码问题。

    我还想尝试将时钟信号脉冲脉冲9~18次、以查看 SDA 线路是否解锁。

    在波形方面、我看不到有什么东西会从我身上跳出来。 看起来上拉电阻器的大小是正确的。 SDA 和 SCL 之间存在一些非常微小的耦合、但看起来并不会影响信号完整性。

    看起来奇怪的是、主器件在锁存期间停止发送时钟脉冲、因此我想知道这与代码相关。 通常、主器件仅在 ACK 阶段或从器件接收数据时查找从器件的输入、并在所有情况下继续发送时钟脉冲...

    如果您提供了供我们查看的原理图(上拉电阻器、使用的电压、如果我们尚未排除通道被禁用的可能性、还包括开关和连接到开关的器件)、这可能也很有用。

    谢谢、
    -Bobby

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

    我只是想办理登机手续-您是否能够解决此问题? 或者、您是否有机会了解 Bobby 的反馈?

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

    最大值、

    我无法尝试 Bobby 的所有建议。  实际上、我无法尝试其中的大多数、因为我们微控制器上的硬件控制时钟线、而不受 FW 控制。

    我知道只有一个器件将 SDA 线路保持在低电平、因为当该器件从总线断开(连接器被移除)时、总线再次开始运行。

    一旦我可以重新查看这个完整的时间、我将发布我生成的任何更多信息。

    Craig