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.

[参考译文] PCA9555:I2C 不工作

Guru**** 2582405 points
Other Parts Discussed in Thread: PCA9555, TCA9555

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/790799/pca9555-i2c-not-working

器件型号:PCA9555
主题中讨论的其他器件: TCA9555

您好!

我正在尝试通过 I2C 与 PCA9555 IO 扩展器芯 片建立通信、我正在接收 NAK、并且我的控制器会按预期停止通信。 我甚至换了芯片、假设芯片可能坏了、但还是运气不好。 根据数据表、PCA9555地址设置为 A0:A1:A2 = 0、对应于0x20地址。  

可以看到控制器正在通过发送0x20 (0b0100 0000)和 WriteBit 设置为0来发起通信、并且芯片正在以 Night 位的形式回复 NAK。 这是示波器信号。

我也尝试了不同的地址。 两条线路上都有10k 上拉电阻、通信频率为100kHz。

我已经在另一个论坛上的 e2e 中检查了我的代码、根据论坛上的 TI 员工、我的代码没有问题。 这是 该主题的链接。  

这是示波器的快照。 第一个突发脉冲是尝试写入以选择芯片内部地址0x00、第二个突发脉冲是尝试读取。

我们将感谢您的任何帮助。

谢谢

此致、

Sahil

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

    I2C 总线是否仅由主器件 PCA9555和上拉电阻器组成、或者它是否更复杂?

    您能否确认是否遵循数据表第10节中记录的功率斜坡指南? 否则、器件可能无法正确初始化。 这可以通过修改功率斜坡或改用 TCA9555器件来解决。

    如果这不是问题、那么您可以在示波器上观察 SCL/SDA 线路吗? (此时您可能会使用逻辑分析仪。) 这将使我们能够更好地观察信号时序和电压电平、以查看是否存在任何潜在的兼容性问题。

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

    您能否为我们提供要查看的原理图?

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

     您好!

    我已经完成了第10节的内容、这一点已经得到了关注。

    我已经收集了示波器图像,并强调了可能导致问题的区域?  

    有两个缩放窗口缩放1和缩放2区域。

    缩放1突出显示写入请求期间接收到的 NAK

    缩放2 突出显示读取请求期间接收到的 NAK

    我们已经有许多器件采用了 PCA9555、因此无法选择将芯片更改为其他替代器件。

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

    您好、Bobby、

    我们使用的是 DigiKey Link DigiKey 器件型号 1738-1163-ND 上提供的 PCA 评估板。 它们在同一页面上提供 pdf 格式的原理图。  

    下面是其电路板原理图的快照。

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

    你(们)好

    我找到了问题。 我正在使用的评估板为 PCA9555提供5V 电压、而我的控制器运行3.3V TTL 信号、根据 PCA9555的数据表、这些信号将无法识别、即 Vinput High 0.7x5V。 我用3.3V 电压为5V 引脚供电、它解决了这个问题。

    谢谢大家

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

    因为您解决了这个问题、所以只想把一些松散的端点绑起来。

    “我已经收集了示波器图像,并强调了可能导致问题的区域? "
    您在范围内看到的可能是串扰。 PCB 上 SDA 和 SCL 之间的快速 di/dt (电流随时间的变化)与互电容(寄生)相混合将导致您看到的结果。 对信号完整性的影响微不足道、因为 I2C 在时钟高电平周期的中间对数据进行采样。 从我在范围内看到的情况来看、这可能不会成为问题。

    您可能需要检查下冲、因为下冲可能超出绝对最小值。

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

    谢谢 Bobby