USB论坛
直播中

hxjq

13年用户 927经验值
私信 关注
[问答]

请问CYPD2119可以开发自定义固件吗?

    嗨,
PSoC 创建器(或任何其他开发环境)是否支持针对此特定设备的固件开发? 我 CAN 找到的最接近的是具有可用固件模板的CYPD2122。 如果我能把它重定向到 CYPD2119 我还需要 CYPD2119 的引导加载程序映像,但我还没找到。

回帖(1)

回头太晚

2025-6-5 17:45:38

针对 CYPD2119 开发自定义固件的问题,以下是分步解答和建议:




1. 开发环境支持




  • ModusToolbox 是首选工具

    CYPD2119 属于英飞凌(原 Cypress)的 EZ-PD USB Type-C 控制器系列,其固件开发主要依赖 ModusToolbox,而非 PSoC Creator(后者适用于 PSoC 系列 MCU)。  



    • 下载 ModusToolbox:

      ModusToolbox 官网  

    • 安装后,检查是否包含 EZ-PD™ CCGx SDK,这是针对 USB Type-C 控制器的开发套件。




  • 验证芯片支持

    在 ModusToolbox 中确认 CYPD2119 是否被 SDK 直接支持。若未找到,可能需要手动调整相近型号(如 CYPD2122)的配置。






2. 硬件兼容性与代码移植




  • 比较 CYPD2122 与 CYPD2119

    查阅两者的数据手册,确认以下差异:  



    • Flash/RAM 容量  

    • GPIO 引脚分配  

    • 外设模块(如 I2C、UART、ADC 等)  

    • USB PD 协议版本支持(如 PD 3.0/3.1)




  • 移植代码的可行性  



    • 若硬件差异较小,可通过修改 设备配置文件(如 device.h、引脚映射表)和 电源策略(如 PD 协议栈参数)适配 CYPD2119。  

    • 重点关注与硬件直接相关的代码(如电源管理、GPIO 初始化和中断处理)。






3. 引导加载程序(Bootloader)




  • 官方引导加载程序获取  



    • 联系 英飞凌技术支持 获取 CYPD2119 的引导加载程序映像。  

    • 检查 SDK 中是否隐含相关文件(如 bootloader.hex)。  

    • 搜索社区资源(如 GitHub、EEVBlog 论坛)是否有开源实现。




  • 自行开发引导加载程序  



    • 若无法获取官方版本,需通过 SWD/JTAG 接口直接烧录固件,跳过引导加载程序。  

    • 使用 Miniprog4J-Link 调试器进行硬件编程。  

    • 参考 EZ-PD 系列应用笔记(如 AN210781)实现自定义引导逻辑。






4. 开发流程建议




  1. 环境搭建

    安装 ModusToolbox 并导入 CYPD2122 示例项目,熟悉 PD 协议栈结构。




  2. 硬件适配

    修改设备配置文件和 PD 策略,适配 CYPD2119 的硬件特性。




  3. 调试与烧录  



    • 使用 Miniprog4 连接 CYPD2119 的调试接口(SWD)。  

    • 通过 mtb-cli 命令行工具或 IDE 直接烧录 .hex 文件。




  4. 协议验证

    利用 USB PD 分析仪(如 Total Phase Beagle、Elvis Pro)监控 Type-C 通信,验证自定义固件行为。






5. 资源与支持





总结



  • 可行但需适配:CYPD2119 可通过 ModusToolbox 开发自定义固件,但需基于相近型号(如 CYPD2122)调整硬件配置和 PD 策略。  

  • 引导加载程序:优先寻求官方支持;若无,需直接编程或自行实现。  

  • 开发关键:硬件差异分析 + 协议栈调试 + 工具链熟练度。


建议从移植 CYPD2122 示例代码开始,逐步验证硬件功能,再扩展自定义逻辑。

举报

更多回帖

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