主题中讨论的其他器件:TPD6S300A、 HD3SS460、 BQ25895、 TPS65987D、 TPS25750、 TPS65988
我们对电路板设计进行了多次迭代、尝试修复 TPS65982 CC 线路长期以来出现的故障。 在之前的电路板版本中、我们发现 CC 线路(CC1、CC2或两者)可能会由于插入或拔下 VBUS 电源而出现故障。 发现 TPS65982容易受到 VBUS 短路故障模式影响后、我们决定引入 TPD6S300A、以防止出现这种情况。 添加保护 IC 后、我们仍然遇到这些故障、当发生这些故障时、我们无法执行大多数协商、例如 VBUS 电压或 DP 交替模式。 接下来、我们 在 VBUS 上添加了一个400CC1206LR-C PTC 保险丝、PTVS16VS1UR TVS 二极管和一个 NSR20F30NXT5G 肖特基、以尝试解决该问题。 这些更改以及布局的一些相当重大的更改似乎略微减少了出现故障的次数、但仍然频繁发生、对我们的客户来说是一个问题。
作为参考、我们将 TPS65982编程为具有三个灌电流 PDO、一个在12V (器件的首选电压)、一个在9V、另一个在5V。 此外、我们还使用了 BQ25895充电控制器、VBUS 将被传递到该控制器。 我们从 PP_HV 吸收 VBUS (12V、9V 或5V)、当作为 VBUS 电源进行协商时、我们将 BQ25895置于 OTG 模式、它为 PP_5V0提供5V 电压。 我们的器 件还在 DP 交替模式下使用 HD3SS460、但发现此故障模式在简单的电源/充电状态下出现、因此我们不怀疑电路的这一部分是否相关。 人们怀疑 在使用 USB-C 集线器时发生了一些故障、但我们也看到、仅使用简单的 USB-C PD 电源(墙面稳健)时也会发生这些故障。
在先前版本的电路板上、我使用 DMM 来测量出现故障的 CC 线路直流电阻 GND 接近0Ω Ω(至少100Ω Ω 或更低)、从而有效地短接至 GND。 我没有与我一起使用的最新器件发生故障的实例、但我的同事确实这样做了、因此如果您建议进行任何测量、他将代表我(他甚至可以加入此主题)执行此操作。
我们使用 了 C_CCN 引脚状态寄存器(0x69)来帮助我们确定 CC 线路是否发生故障、方法是查看寄存器在没有 VBUS 源存在时(器件已拔出)报告的内容、此时 VBUS 源与电缆在一个方向上存在、 当 VBUS 电源出现时、电缆会在另一个方向翻转。 当在使用 USB-C PD 电源的 TPS65982 CC 线路未发生故障的工作装置上执行此操作时、我们将获得如下所示的结果:
$ sudo i2ctransfer -f -y 0 W1@3f 0x69 R5 0x04 0x00 0x00 0x00 0x42 <-这是0x42000000 $ sudo i2ctransfer -f -y 0 W1@3f 0x69 R5 0x04 0x01 0x05 0x00 0x47 <-这是0x47000501 $ sudo i2ctransfer -f -y 0 W1@3f 0x69 R5 0x04 0x02 0x00 0x05 0x47 <-这是0x47050002
但是、对于 CC 线路损坏的器件、我们会得到类似的结果(在一个或两个方向上、具体取决于两个方向是否都损坏):
$ sudo i2ctransfer -f -y 0 W1@3f 0x69 R5 0x04 0x00 0x00 0x00 0x21 <-这是0x21000000 $ sudo i2ctransfer -f -y 0 W1@3f 0x69 R5 0x04 0x00 0x00 0x00 0x21 这是0x21000000
CCpinForPD 卡在0x00、 CC1PinState 和 CC2PinState 也是如此、它卡在"unattached.SNK"状态。 而对于功能单元、如果"C_CC1"或"C_CC2 "是用于 PD 通信的 CC 引脚"、则会准确地遵循、说明相应 CC 线路上通告的3.0A 电流、并作为 DRP (如我们的固件中定义)实现"attached.SNK"状态。
请告诉我们、您是否有任何关于我们如何确定发生的事情的建议、或者您是否有任何关于此类故障的经验、我们如何解决此类故障。 如果需要、我们愿意并能够为您提供相关的原理图和布局供您查看。