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.

[参考译文] TMS320F28379D:调试模式和 Uniflash 的引导加载程序问题

Guru**** 1671470 points
Other Parts Discussed in Thread: C2000WARE, TMS320F28379D, TMDSDOCK28379D, UNIFLASH
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1338621/tms320f28379d-bootloader-problem-via-debug-mode-and-uniflash

器件型号:TMS320F28379D
主题中讨论的其他器件:C2000WARE、、 TMDSDOCK28379DUNIFLASH

大家好!

我们有关于 ti\C2000Ware_5_00_00_00\utilities\flash_programmers 目录中 SCI 引导加载程序的问题。 我们使用 SCIA GPIO 84、85通过 USB-TTL 更新代码。

此外、我们的电路板是基于 TI C2000 TMS320F28379D 的 TMDSDOCK28379D 实验板套件。

TMS320F28379D : https://www.ti.com/product/TMS320F28379D

TMDSDOCK28379D : https://www.ti.com/tool/TMDSCNCD28379D 

首先、我们将相关交换机配置为:

以从 SCI 引导、然后复位板。

在终端(CMD)上运行此命令:  serial_flash_programr.exe -d f2837xD -k F2837xD_sci_flash_kernels_cpu01.txt -a blinky_dc_cpu01.txt -b 76800 -p COM7  7)地域  C:\ti\C2000Ware_5_00_00\utilities\flash_programmers\serial_flash_programmer 文件。 这个命令成功执行、但是在这个波特率中刷写内核+应用程序代码用了5分钟。  

我们试图增加波特率、但 serial_flash_programmer 可执行文件不起作用、它卡在环回状态、但不打印任何内容。

这里的问题是什么? 我们使用支持 1000000波特的 USB-TTL 模块进行通信。

此外、我们还将尝试将 SCIA 默认引脚排列为定制板的 GPIO 84、85至 GPIO 28、29端口。  我们在参考手册中看到了此 GPIO 分配:

我们可以通过此 BMODE 寄存器在 MCU 中更改引导加载程序的默认 GPIO。 我们如何在实际案例中实现该主题。 如果我没有弄错、我们可以在调试模式下更改该寄存器、这是如何实现的? 这个低速 SCIA 问题、我们还需要更改 SCI 的引导外设。 我们如何将默认的引导加载程序外设 SCI 更改为 USB 外设?

我们在仿真启动流程图的参考手册中看到:

如果我没记错、这个方框图向我们展示了相关寄存器成功执行该操作的方法。 根据我的理解、我们可以通过 JTAG 在调试模式下连接到目标板。 我们必须通过 CCS 调试环境将 EMU_BMODE 值更改为0x0C、EMU_KEY 0x5A 和 CPU RESET、并在调试模式下再次运行应用程序并完成处理。 将 TMDSDOCK28379D 实验套件的 USB 外设连接到主机 PC、我们应该在设备管理器中看到与 USB 名称相关的器件名称。 此工作流程是否正确? 我们正在执行所有这些步骤、并且已经通过 C200 ware (Windows 设备管理器)安装了所有 USB 驱动程序、但在设备管理器中看不到相关的 USB 端口信息。 (未知的 USB 设备 或隐藏设备)。

有关 OTP 的此引导模式选择的最后一个问题。 我们在参考手册中找到此方框;

如果仿真引导流程 SCI 到 Zx 更改正常、我们必须将相关值0x0C5A 添加到 USB-BOOTCTRL 寄存器以实现启动(永久)。 但我们如何认识到这个主题呢? 我们能否将 UNIFLASH 用于此目的、或者我们必须在调试模式下更改该寄存器?

非常感谢!  

此致、

F·S·弗坎  

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

    尊敬的 Furkan:

    >如果我没有弄错,我们可以在调试模式下更改此寄存器,这是如何实现的?

    您可以通过在0xD00至0x815A 处设置引导模式寄存器、以及设置内核以使用与 GPIO28/29关联的 SCI 引导模式、从而在调试模式下测试 GPIO28/29的运行。

    >据我所知,我们可以通过 JTAG 和调试模式连接到目标板。 我们必须通过 CCS 调试环境将 EMU_BMODE 值更改为0x0C、EMU_KEY 0x5A 和 CPU RESET、并在调试模式下再次运行应用并完成处理

    可以、这样、您就可以在调试 USB 引导模式选项中进行测试。

    >将 TMDSDOCK28379D 实验套件的 USB 外设连接到主机 PC,我们应该在设备管理器中看到与 USB 名称相关的设备名称。 此工作流程是否正确? 我们正在执行所有这些步骤、并且已经通过 C200 ware (Windows 设备管理器)安装了所有 USB 驱动程序、但在设备管理器中看不到相关的 USB 端口信息。 (未知的 USB 设备 或隐藏设备)

    与 USB 闪存主机编程器相比、串行闪存主机编程器的流程是不同的。 如果您当前的目标是使用 USB 引导模式、我会首先查看该项目。

    >如何将默认的引导加载程序外围设备 SCI 更改为 USB 外围设备?

    您必须更改引导模式表、以包含 USB 作为引导选项。 将此作为  永久性 解决方案、需要将  Z1-BOOTCTRL 地址处的引导模式选择引脚(BMSP0、BMSP1)和引导模式表值设置为0x0C5A。

    >我们可以将 UNIFLASH 用于此目的,还是必须在调试模式下更改此寄存器?

    对 OTP 进行编程是 CPU1 Z1-BOOTCTRL 的 Uniflash 设置和实用程序中的一个选项。

    谢谢。此致、

    查尔斯

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

    您好 Charles、

    感谢您的答复! 我们正在尝试通过 USB 选项进行引导、但无法正常工作。

    1. 将目标与 SW1<--1 1和 A:SW1<--1连接
    2. 打开存储器浏览器并使用0x0C5A 更新存储器位置0xD00
    3. 执行第二步后、我们将 USB 从 F2837xD 控制卡顶部的 Micro USB 端口连接到 PC。
    4. 然后我们通过 CCS 将 CPU 复位(图1)。
    5. 在 CCS 上按"Run"按钮。

    图1. CPU 复位命令

    图2. 存储器浏览器

     图3. 设备管理器

    非常感谢!

    此致、

    F·S·弗坎

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

    有针对 USB 引导的更新。 我可以在器件管理器中看到我们的 TMS320F28379D、但它是"Unknown USB Device (未知 USB 器件)"(图4)。 此输出仅在以下情况下可见: F2837xD_USB_FLASH_kernels_cpu01 。 当我们尝试针对 USB 引导的简单 LED 闪烁示例时、 "未知 USB 设备" 不会如图4中所示。

     图4 。 设备管理器中存在未知的 USB 设备

    未知的 USB 设备信息

    已配置设备 USB\VID_0000&PID_0002\6&8bfbd&0&4。

    驱动程序名称:usb.inf
    类 GUID:{36fc9e60-c465-11CF-8056-444553540000}
    驱动程序日期:2006年06月21日
    驱动程序版本:10.0.19041.4046
    驱动程序提供程序:Microsoft
    驱动程序部分:BADDEVICE.Dev.NT
    驾驶员排名:0xFF0000
    匹配设备 ID:usb\device_descriptor_failure
    外部驱动器:usb.inf:USB\DEVICE_DESCRIPTOR_FAILURE:00FF2000
    器件更新:错误
    父设备:USB\VID_05E3和 PID_0610\5&2eda7e1e&0&1

    谢谢!

    此致、

    F·S·弗坎

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

    Furkan,

               如果您的原始问题已解决并且有新问题、请打开具有相应标题的新主题。 这不仅有助于快速将查询路由给正确的专家、还有助于其他用户在将来搜索类似的问题。

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

    您好、Hareesh:

    我们的问题没有解决,我们正在等待。 感谢您的建议。

    此致、

    F·S·弗坎

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

    Furkan,

      如果您的 原始 问题已解决、请关闭此主题并发布新主题。 据我了解、您的原始问题与 SCI 有关、但您的新问题与 USB 有关。 如果是、这是两个不同的问题、不应在同一主题中进行讨论。 如果我的理解有误、请告知我。

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

    好的、我将打开 USB 启动加载的新问题。 谢谢 Hareesh 先生。
    此致、

    F·S·弗坎