USB论坛
直播中

王静

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

CYPD5235的CC Pin功能异常,还可能会跟什么有关?

我们参考了Goshen Ridge的Godzilla Creek设计:
1。UFP口(Port A)上连接着CYPD5235,但去掉了Buck Boost DC2DC芯片MP8859。
2。另外用一个TypeC口来专门供电,这个typec口的CC pin接到了CYPD3177上,CYPD3177已经按需求配置好,能输出正常的20V/5A。
3。用Miniprog3正常正确的烧录了从infineon网站上下载的CCG5固件“CYPD5235-96BZXI_gatkex_3_3_1_112_3_0_1_nb.hex”。
4。从CYPD3177端接入电源,然后UFP口Port A也接入Type C设备/电源,使用CY4500的PD分析仪,量测到CC pin没有log记录,CC pin一直是低的(PD分析仪接到CYPD3177端的CC pin,是有CC log的)。
5。硬件量测VBUS_P1/VSYS/VDDD/V5V_P1的电都是正常的。
请教问题:
1。CYPD5235的CC Pin功能异常,还可能会跟什么有关?
2。去掉的MP8859,会影响CYPD5235的软件代码执行吗?如果会影响,我们这样的设计,如果要让CC pin能正常,需要定制固件的吗?能否提供用于Goshen Ridge设计的CYPD5235芯片SDK包?

回帖(1)

石胜厚

2025-6-5 17:53:04

好的,你描述的CYPD5235 (CCG5) 在UFP口(Port A)上CC引脚异常且始终为低电平的问题非常详细,结合你对Godzilla Creek设计的修改,确实有好几个关键点需要排查。移除MP8859是一个重要的硬件改动,这可能导致了一系列连锁反应。


以下是可能导致该问题的原因及分析:




  1. 硬件问题 - CC引脚相关:



    • CC引脚连接/短路: 最直接的硬件问题。检查Port A上的CC1/CC2引脚到CYPD5235对应引脚的PCB走线是否连通?是否有对地短路?是否有对VBus短路?是否有对其它信号短路?是否存在虚焊(无论是芯片引脚还是连接器引脚)?

    • Rd电阻缺失或错误: UFP端口必须提供Rd下拉电阻。Godzilla Creek设计应该在Port A的CC1和CC2引脚上各有5.1kΩ的下拉电阻连接到地(GND)。确认Port A的CC1和CC2上是否焊接了正确的5.1kΩ下拉电阻。如果没有Rd电阻,源端无法检测到接收端。

    • VBUS供电异常导致CYPD5235不完全工作: 虽然你用CYPD3177为系统提供20V/5A电源,但CYPD5235芯片本身的供电(VDDD, VDDA)是否正常建立? CYPD5235需要稳定的3.3V(或设计要求电压)的电源才能工作。这个3.3V通常由配套的电源芯片(如你所移除的MP8859)提供,或者由板上另一路LDO提供。




  2. 核心问题 - 移除MP8859带来的影响 (极其关键)



    • 缺少芯片工作电压(VDD): MP8859(或类似的Buck/Buck-Boost)在Godzilla Creek设计中不仅为PD端口供电,更重要的是它为CYPD5235(以及可能的相关逻辑电路)提供内核工作电压(通常为3.3V或1.8V)。移除MP8859后:

      • 你是否在板上其他地方为CYPD5235提供了正确的VDD电源(VDDD/VDDA)?这是启动CYPD5235的最基本条件。

      • 确认点: 请务必测量CYPD5235的VDDD引脚(以及VDDA,如果独立)对地电压。在系统上电后(来自CYPD3177的VBus到位),这个电压必须稳定在数据手册规定的范围(例如 3.0V - 3.6V)。如果VDD电压不存在或异常(太低、纹波过大、上升缓慢),CYPD5235根本不会工作,CC引脚自然不会变化。 这是移除MP8859后最值得怀疑的点。


    • 固件初始化依赖: 标准固件在启动时会对硬件进行初始化配置。如果固件期望配置MP8859(例如通过I2C设置输出电压、使能),但检测不到MP8859或配置失败,整个固件启动过程可能被挂起或进入错误状态,导致USB PD模块(包括CC引脚管理)无法正常初始化。这解释了为什么烧录了固件但CC引脚没有任何活动。固件可能在初始化的某个阶段卡住了。




  3. 固件问题:



    • 标准固件不匹配修改后的硬件: 从英飞凌网站下载的标准固件是针对原始参考设计(包含MP8859) 编译的。它包含了对MP8859的初始化、配置和控制逻辑。

      • 固件启动失败: 如上面所述,固件尝试初始化不存在的MP8859时可能失败,导致无法继续初始化USB PD部分。

      • GPIO配置错误: 标准固件假设MP8859存在时某些GPIO用于控制MP8859(如EN, PWM, I2C等)。移除了MP8859,这些原本用于控制MP8859的GPIO(特别是与Port A电源控制相关的GPIO)可能处于未定义或禁用状态,甚至错误地拉低了CC引脚或影响了其他功能。

      • UFP角色默认配置: 需要确认固件是否正确地将Port A配置为UFP角色。虽然标准固件通常是配置好的,但在硬件改动后启动异常时,角色配置可能未完成。


    • 固件未正确启动/运行: 除了VDD,还需要确认:

      • 复位信号(RESETn)是否被正确释放(拉高)?

      • 晶振时钟是否正常?(需要示波器测量)

      • 是否有任何启动错误指示(例如通过SNT工具或DEBUG UART)?





  4. 系统初始化时序问题:



    • VDD延迟: 如果你为新加入的3.3V电源使用了慢速LDO或其他转换器,其上升时间可能太长。CYPD5235要求VDD必须在规定时间内达到稳定值。否则可能导致启动失败或异常。

    • CC检测时机: 当Port A作为UFP接入设备时,需要供电稳定(VBus建立)和VDD稳定后,CC协商才会开始。确保外部供电(20V)和内部3.3V VDD都已建立后,再接UFP设备测试。




  5. 工具和监控问题:



    • 使用SNT验证状态: 强烈建议使用Infineon的SNT工具连接CYPD5235,尝试读取其状态寄存器、错误日志和固件运行信息。 这是诊断固件是否运行、卡在哪一步最有效的方法。它能告诉你芯片是否已经POR(上电复位)、是否在执行固件、是否报告错误(比如PMIC通信失败)、是否检测到VBUS、是否在尝试驱动CC引脚等。仅用PD分析仪看CC电平局限性太大。

    • USB-UART调试输出: Godzilla Creek设计通常有DEBUG UART连接。将TX线接串口工具,看POR后是否有任何固件输出的启动信息或错误信息。这是另一个关键诊断点。




总结和建议的排查步骤(从最核心的电源开始):



  1. 绝对优先 - 测量CYPD5235的VDD! 在系统上电后(CYPD3177提供20V),立刻用万用表测量CYPD5235的VDDD引脚(芯片供电引脚)对GND的电压。必须是稳定的3.3V左右。如果这个电压缺失或异常,其他所有问题都无从谈起!你必须找到替代方案给CYPD5235提供合格的VDD。 检查你的板上设计如何产生这个3.3V?有额外的LDO供电吗?配置是否正确?电压上升是否够快?

  2. 检查基本电源和复位:

    • 确认所有CYPD5235的电源引脚电压正确稳定(包括VBUS检测相关的引脚供电)。

    • 确认复位引脚(RESETn)在上电后能被正确释放(拉高到VDD)。

    • 有条件的话,用示波器查看晶振波形是否正常(频率、振幅)。


  3. 检查Port A硬件:

    • 确认Rd下拉电阻存在且阻值正确(5.1kΩ)

    • 仔细检查CC1/CC2信号线到CYPD5235引脚的PCB连续性(用万用表蜂鸣档)。

    • 检查CC1/CC2是否有短路到地(GND)、短路到VBus、短路到其他信号线。


  4. 固件和运行状态诊断 - 使用SNT:

    • 将Miniprog3连接到CYPD5235的SWD端口。

    • 运行Infineon SNT工具(建议先升级到最新版)。

    • 尝试连接到芯片。如果连不上,说明芯片根本没运行(可能VDD、复位、时钟问题严重)。

    • 如果能连接成功,仔细查看寄存器状态:

      • Fault寄存器是否有错误标志?

      • Status寄存器中的 bootState 或类似状态字段是否显示正常启动完毕?

      • 查看关于PMIC、VBUS检测、CC引脚状态等的信息。

      • SNT的Log窗口可能提供丰富的启动和运行时信息,寻找启动失败、PMIC通信错误或初始化超时的线索。



  5. 考虑固件适配:

    • 一旦确认硬件基础(VDD/复位/时钟)没问题,且SNT信息表明固件启动卡在PMIC初始化或其他错误上,基本可以确定标准固件无法适应移除MP8859的硬件环境。

    • 你需要修改固件配置(.cyacd文件或源代码)来适应无MP8859的硬件。 可能包括:

      • 禁用对MP8859的初始化和通信尝试。

      • 调整原本用于控制MP8859的GPIO配置(如设为输入或内部拉高/拉低等)。

      • 明确配置Port A为UFP角色(虽然默认应该是,显式化更保险)。


    • 获取英飞凌CCGx SDK(可能需要签署NDA),然后:

      • 使用基于原始参考设计的固件工程。

      • 找到PMIC初始化和GPIO配置相关的代码。

      • 注释掉或删除所有MP8859相关的初始化和控制代码。

      • 重新配置受影响的GPIO引脚。

      • 重新编译生成新的.hex文件。

      • 警告:修改固件需要一定的嵌入式开发知识和仔细的代码审查。



  6. 尝试原版评估板配置:

    • 如果条件允许(有MP8859芯片),将该芯片焊回板上或使用原版评估板。烧录同一固件测试Port A是否正常工作。这能快速验证是否纯粹是移除MP8859导致的问题。



核心结论:


你面临的问题高度怀疑是由于移除MP8859导致:



  1. CYPD5235内核供电(VDD)缺失或异常 - 最根本原因,直接导致芯片不工作。

  2. 标准固件在初始化阶段因检测不到/无法配置MP8859而挂起或进入错误状态 - 直接结果,导致PD功能(包括CC管理)无法启动。无论固件是否“烧录成功”,它都可能无法正确执行到驱动CC引脚的那一步。


务必首先确认CYPD5235的VDD(D)电压正常且稳定,复位信号正常释放,时钟正常。然后立即使用SNT工具深入诊断芯片内部状态,这能提供最直接的故障信息。解决了VDD问题后,固件适配将是恢复Port A功能的关键一步。

举报

更多回帖

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