USB论坛
直播中

陈艳

8年用户 1043经验值
私信 关注
[问答]

CYPD3171在闪烁和电源循环后无法与编程器通信怎么解决?

我有几个 PCB 使用CYPD3171-24LQXQ PD 管理器来协商来自充电器的电源,并为接收设备供电。
我还有一个CY4532 EVK,用于固件开发以及对我的 PCB 上的 CYPD3171 芯片进行编程/配置。

我注意到有些芯片(但不是全部)在刷新和断电循环后拒绝进一步通信。 根据刷入的固件,它们可以正常运行,包括与兼容的 PD 电源适配器协商 9V。 但EVK无法再次建立PD合同。
正如我提到的,这似乎只发生在某些板上。 其他人成功地与 EVK 建立了 PD 合同。
到目前为止尝试的固件更改都是很小的,并且此问题也发生在默认的 EVK 移动电源固件上。
将固件上传至 EVK 不会导致此问题。
我知道这可能是由于向主板上传不兼容的固件(例如 EVK 的 PA 固件)造成的,但我在犯过一次错误后,每次都确保上传的固件是正确的。
我知道可以锁定芯片以进行进一步的固件更新,并且我在配置实用程序中找到了该选项。 但这种情况也发生在新安装的 EVK Power Bank 示例固件上,所以我不明白这可能是什么原因造成的。
是否还有其他已知原因导致这些芯片拒绝与 CY4532 等编程器签订进一步的 PD 合同?
我想知道我的硬件是否会损坏 CC 引脚但其余部分保持完好,尽管我看不出芯片在那之后如何继续协商 9V。

回帖(1)

醉清歌

2025-5-15 17:36:20

针对CYPD3171芯片在编程后无法通信的问题,以下是系统化的排查和解决方案:




1. 硬件问题排查


1.1 焊接与物理连接



  • 虚焊/冷焊:检查CYPD3171芯片的24LQXQ封装焊点,尤其是QFN封装的中接地焊盘是否充分焊接。

  • CC引脚保护:确认CC1/CC2引脚连接的TVS二极管、电阻或电容是否损坏(如ESD击穿或焊接短路/开路)。

  • VBUS路径:测量VBUS电压是否稳定(5V-20V),检查VBUS通路上的MOSFET、保险丝或负载开关是否异常。


1.2 电源稳定性



  • VDDD/VCC供电:使用示波器监测芯片的VDDD(内核电源)和VCC(I/O电源)是否在1.8V/3.3V±5%范围内,排除电源毛刺或跌落。

  • VBUS去耦电容:确认VBUS输入端是否安装足够去耦电容(如10μF+0.1μF),避免电压瞬变导致芯片复位异常。


1.3 I2C/UART信号完整性



  • 上拉电阻:检查SCL/SDA引脚的上拉电阻(通常4.7kΩ)是否正常,信号线是否有对地短路。

  • 信号干扰:用示波器捕获I2C通信波形,确认时钟和数据线无过冲、振铃或噪声干扰。




2. 固件与配置问题


2.1 固件配置验证



  • PDO配置冲突:确认固件中配置的PDO(Power Data Object)与EVK的供电能力匹配。例如,如果固件要求9V但EVK仅支持5V,可能导致协商失败。

  • GPIO复用冲突:检查固件中是否误配置了I2C/UART相关的GPIO功能,导致通信引脚被禁用。


2.2 编程流程优化



  • 编程后复位:在烧录完成后,执行硬件复位(断电重启)而非软复位,确保配置生效。

  • NVM编程参数:检查编程工具(如Cypress CyMCUElf Tool)中NVM编程电压和时序是否符合芯片要求,避免部分存储单元未正确写入。


2.3 固件版本兼容性



  • 升级工具链:确认使用的固件开发工具(如WICED Studio、ModusToolbox)和编程器固件是否为最新版本。

  • 已知漏洞排查:查看Cypress社区或官方勘误表,确认是否存在与芯片通信相关的已知固件BUG(例如特定NVM操作导致锁死)。




3. 故障板对比分析



  • 交叉测试:将正常板子的CYPD3171芯片拆下焊接到故障板,若问题消失,则原芯片可能损坏。

  • 通信信号对比:使用逻辑分析仪同时捕获正常板和故障板的I2C通信波形,对比时序差异(如ACK/NACK响应)。

  • 寄存器状态读取:通过CyMCUElf Tool读取故障芯片的寄存器(如I2C_STATUSPD_STATE_MACHINE),分析是否处于死锁状态。




4. 高级恢复手段


4.1 强制进入Bootloader模式



  • 硬件复位序列:尝试在芯片上电时拉低特定引脚(如XRES复位引脚)强制进入Bootloader,再重新烧录。

  • 使用J-Tag调试:如果芯片支持J-Tag接口,通过Cypress PSoC Programmer尝试擦除并恢复出厂配置。


4.2 NVM修复



  • 全擦除操作:使用编程工具执行Full Erase,清除可能损坏的NVM数据,再重新烧录固件。

  • 校验和验证:编程后对比烧录文件的校验和,确保NVM写入完整。




5. 联系技术支持



  • 提供数据:向Cypress提交故障板的以下信息:

    • 原理图片段(PD控制器相关部分)

    • 故障芯片的寄存器dump日志

    • I2C通信波形和电源监测截图

    • 使用的固件版本和工具链信息


  • 申请FA分析:如怀疑芯片批次问题,可申请RMA流程进行失效分析。




6. 预防措施



  • 增加看门狗:在固件中启用硬件看门狗,避免通信死锁。

  • 优化电源设计:在VDDD和VCC电源路径上增加磁珠或π型滤波器,抑制高频噪声。

  • 限制PDO范围:在开发阶段固件中仅启用5V PDO,降低协商复杂度。


通过以上步骤,可系统性定位问题根源。若仍无法解决,建议将故障板寄回原厂进行深度分析。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分