USB论坛
直播中

jefljel

9年用户 1196经验值
擅长:20762
私信 关注
[问答]

CY7C68013A无PID和VID,如何制作PDF?

我用 CY7C68013A MCU 设计了一个 PCB,所以这意味着我不是程序员之类的。
但是我尝试上传一些代码,但没有 PID 和 VID。 我找到了一些关于如何制作的 PDF,但那些对我来说很难。 有人可以帮我吗?

回帖(1)

陈伟

2025-5-15 17:36:24

针对 CY7C68013A 缺少 PID 和 VID 的问题,以下是分步解决方案:




关键问题分析


CY7C68013A 需要合法的 VID(厂商ID)PID(产品ID) 才能被操作系统识别。这两个值通常需要在固件代码中定义,并通过开发工具烧录到芯片中。以下是具体操作步骤:




第一步:获取合法的 VID/PID




  1. 申请官方 VID  



    • 访问 USB-IF 官网注册并购买 VID(费用较高,适合商用)。

    • 临时方案:使用 Cypress 提供的测试 VID/PID(如 VID=0x04B4, PID=0x8613),但仅限开发阶段。




  2. 自定义 PID  



    • PID 可自行定义(如 0x0001),但需确保不与现有设备冲突。






第二步:设置开发环境




  1. 下载开发工具  





  2. 安装驱动程序  



    • 连接 PCB 到电脑,首次识别为 "Cypress EZ-USB FX2LP" 时,安装 CyUSB.sys 驱动(包含在开发工具中)。






第三步:修改固件代码




  1. 定位固件描述符文件  



    • 打开示例工程(如 CyUSBExamplesFX2LPBulkloop),找到文件 dscr.a51(汇编描述符文件)。




  2. 修改 VID/PID  



    • dscr.a51 中搜索以下代码段并替换值:
      DeviceDscr:
      db   DEVICE_DSCR_LENGTH      ; 描述符长度
      db   DEVICE_DSCR             ; 描述符类型
      dw   0000H                   ; USB 规范版本(BCD格式)
      db   00H                     ; 设备类
      db   00H                     ; 设备子类
      db   00H                     ; 设备协议
      db   64                      ; 最大数据包大小(64字节)
      dw   04B4H                   ; VID(改为你的VID,如0x1234)
      dw   8613H                   ; PID(改为你的PID,如0x5678)
      dw   0000H                   ; 设备版本号
      db   1                       ; 厂商字符串索引
      db   2                       ; 产品字符串索引
      db   0                       ; 序列号索引
      db   1                       ; 配置数




  3. 保存并编译  



    • 使用 Keil C51SDCC 编译固件,生成 .hex.iic 文件。






第四步:烧录固件到芯片




  1. 进入烧录模式  



    • 确保 PCB 的 EEPROM 接口(I²C) 已正确连接。

    • 将芯片设为 “固件下载模式”:拉高 WAKEUP 引脚或断开 EEPROM。




  2. 使用 Hex2Bix 转换文件  



    • 打开命令行,执行以下命令生成 .iic 文件:
      hex2bix -v 0x04B4 -p 0x8613 -i -f 0xC2 firmware.hex


      • -v: VID,-p: PID,-f: 烧录到 EEPROM 的地址。





  3. 烧录固件  



    • 打开 Cypress Control Center,连接设备后选择 “Download”,上传生成的 .iic 文件。






第五步:验证设备




  1. 重新连接设备  



    • 断开并重新连接 USB,系统应识别到新设备,显示自定义的 VID/PID。




  2. 检查设备管理器  



    • 在 Windows 设备管理器中查看设备属性,确认 PID/VID 已生效。






常见问题处理




  • 设备无法识别  



    • 检查 EEPROM 是否已正确烧录,或尝试直接通过 USB 下载固件(无需 EEPROM)。




  • 驱动安装失败  



    • 使用 Zadig 工具强制安装 WinUSB 或 libusb 驱动:Zadig 官网






通过以上步骤,即使非程序员也能完成 CY7C68013A 的 VID/PID 配置。如需进一步简化流程,可使用 Cypress Suite 的 GUI 工具直接修改并烧录固件。

举报

更多回帖

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