This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM6442:适用于 TI AM6442 芯片的 DFU 功能

Guru**** 2771175 points

Other Parts Discussed in Thread: AM6442

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1616624/am6442-dfu-function-for-the-ti-am6442-chip

器件型号: AM6442

我正在使用 USB 为 TI AM6442 芯片实现 DFU(器件固件升级)功能。 DFU 支持工具(包括引导加载程序映像,SBL(次级引导加载程序)映像和应用程序映像)已经过充分验证、可在 TI AM6442 EVM 开发板上正常运行。 不过、在使用时 相同的软件、PC 和 USB 数据线 在我的定制 PCB(使用相同的 TI AM6442 主芯片)上、会出现问题。

详细症状

  1. EVM 和定制 PCB 都可以通过装备区引导至 DFU 模式。 在初始化 USB 驱动程序期间、PC 成功检测并显示两块电路板的标有“AM64x DFU“的 USB 设备图标。
  2. 刷写引导加载程序并执行它后:
    • EVM 会正常将 USB 器件重新枚举为“AM64x-AM243x-DFU",“,并、并完成所有后续 DFU 升级操作而不会出现错误。
    • 定制 PCB 失败:PC 报告“Unknown USB Device (Device Descriptor Request Failed)“、并且所有后续 DFU 操作都会中止。

定制 PCB USB 硬件详细信息

定制 PCB 上的 USB 物理连接配置如下:
USB_hardware.png
  1. 数据线:SoC_USB0_DP 和 SoC_USB0_DM 从 TI AM6442 芯片路由到 USB Type-C 端口、并使用 共模扼流圈 串联(扼流圈比 EVM 评估板上的扼流圈稍大)。
  2. SoC_USB0_ID:保持悬空。
  3. SOC_USB0_VBUS:连接到 5V 电源。
  4. SoC_USB0_RCALIB:连接至 499 Ω 电阻器。
  5. SOC_USB0_DRVVBUS:保持悬空。

其他验证

  • eMMC 功能:经验证可在 SDR25 速度下执行读取/写入操作时正常工作。
  • USB UART 模式:当驱动为两个 UART 端口时、USB 接口正确支持双向数据发送/接收。
  • 由监听器工具捕获的 USB 硬件数据包将单独提供、以供进一步分析。
当器件引导至 DFU 模式并启动芯片的内置主引导加载程序时、获取以下监听器捕获的 USB 数据包。 尽管 EVM 开发板和定制 PCB 都可以驱动 USB 器件(在 PC 上被识别为“AM64x-DFU")“)、但从两个板捕获的特定 USB 数据包是不同的。
EVM 评估板的 USB 数据包如下:
定制 PCB 的 USB 数据包如下:
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    定制 PCB 失败:PC 报告“Unknown USB Device (Device Descriptor Request Failed)“、所有后续 DFU 操作均中止。

    这是否意味着先发送 tiboot3.bin 后、主机 PC 无法识别 EVM?

    您能否在 tiboot3.bin 传输成功后共享 UART 日志、并共享 dfu-util -l 命令的输出?

    此致、

    会面。