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.

[参考译文] PCA9534:当用作输入以读取高电平值时、P04会导致故障

Guru**** 2482105 points
Other Parts Discussed in Thread: PCA9534

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1436881/pca9534-p04-causes-failure-when-used-as-input-to-read-a-high-value

器件型号:PCA9534

工具与软件:

我们有2种不同的产品使用 PCA9534作为 GPIO 扩展器。

第一款产品使用 Linux 6.6.23-gf296dd2c-g84641290ab13

第二种产品是使用 Linux 5.10.48-bsp-yocto-ampliphy-i.mx6-pd21.1.1

我们发现这两种产品都存在此误差:

当用作输出并驱动为高电平或低电平时、所有 GPIO 引脚都正常工作。

当 GPIO P00-P03、P05-P07用作输入并连接到3.3V (读取1)或0.0V (读取0)时、全部正常工作。

GPIO P04在连接到0.0V (读取0)时工作、但在连接到3.3V 时会导致 PCA9534发生故障

将 P04连接到3.3V 后、该命令返回"gpioget:error reading GPIO values:no such device or address:no such device or address"、PCA9534停止响应所有命令。

这是 GPIO 扩展芯片的原理图部分

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

    您好、Christyan:

    我必须在明天中午时分回到您的身边。  

    此致、

    Tyler

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

    您好、Christyan:

    [quote userid="331911" url="~/support/interface-group/interface/f/interface-forum/1436881/pca9534-p04-causes-failure-when-used-as-input-to-read-a-high-value 将 P04连接到3.3V 后、该命令返回"gpioget: Error reading GPIO values: no such device or address"、PCA9534停止响应所有命令。

    通常、IO 端的更改不应影响另一侧的 I2C 读取/写入。  

    当 P04连接到3.3V 时、是否有办法通过示波器来监控 I2C 侧的情况?  

    此致、

    Tyler

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

    通常不是、对于其他7个输入引脚、PCA9534似乎表现正常、但当 P04被驱动为3.3V 时、SCL 和 SDA 线都被驱动为低电平(每个引脚上的低电平值约为300mV、而正常情况下为3.3V)

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

    您好、Christyan:

    P04在从外部驱动至3.3V 时是否配置为输出低电平?  

    是否有通过器件监测 ICC 的方法?  

    您是否尝试过替换此设备的另一个 PCA9534以查看问题是否自行解决? A-B-A 交换可以在此处为我们提供更多信息。  

    此致、

    Tyler

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

    我已将全部8个 GPIO 配置为用于该测试的输入引脚。

    我可以监测整个电路板的 ICC、但尤其是该器件的 ICC。 我会看到在将 P04连接至3.3V 时会产生大约12W 的额外功耗尖峰

    我没有更换此电路板上的 PCA9534、但我测试了额外的2种不同型号的电路板(相隔大约2年左右)、并在测试的所有电路板上观察到相同的问题。

    作为对比、我还通过将3.3V 连接到 P00进行了再次测试、这也显示额外功率增加了12W、但会用作输入(可以正确读取0或1、具体取决于我是连接到 GND 还是3.3V)

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

    我与软件工程师进行了确认、我们正在使用 PCA9534的标准 Linux 驱动程序来驱动此器件。

    github.com/.../gpio-pca953x.c

    我正在使用 libgpiod 命令(gpioset 和 gpioget)来控制器件的引脚。

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

    我认为我已经发现了这个问题、我们测试器件上的接地连接已连接到用于驱动电源的探针、与 PCA9534分离。

    在清理测试设置并重新测试后、器件看起来正常工作、并且没有消耗明显的额外电流。