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.

[参考译文] Starterware/TM4C1294NCPDT:将 XDS110引导加载程序编程到定制板时出现问题。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/595170/starterware-tm4c1294ncpdt-problem-programming-the-xds110-boot-loader-to-a-custom-board

器件型号:TM4C1294NCPDT
主题中讨论的其他器件:RM57L843UNIFLASHTM4C123CC2650

工具/软件:Starterware

您好!

我基于 RM57843 Launchpad 开发了定制板。 定制板包含与 launchpad 相同的芯片、但更小、外设访问更少。

当我将全新的定制板连接到 PC 时、我在 USB 接口中看到消息"Tiva 器件固件更新"。 问题是、通过 LM 刷写编程器更新 XDS110引导加载程序固件后、PC 停止识别电路板、并且我在 USB 接口中看到消息"Unknow device"。 之后、我无法擦除闪存或对 firmware.bin 进行编程、因为 PC 不再识别电路板。 是否有线索知道正在发生什么?

我在这里有一些 RM57L843 LaunchPad、那么是否可以通过 UniFlash 编程器和 Lauchpad TM4C1294擦除关税板 TM4C1294?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Anselmo、
    我很困惑。 RM57x 器件是 Hercules、而不是 TM4C... "海关电路板 TM4C1294"是什么意思?它与您的设置中的 XDS110和 Hercules 有何关系?
    如果我忽略了您帖子上的其他句子并回复了最后一句、是的、可以使用 UniFlash 和 Launchpad 使用 TM4C1294擦除定制板-您只需按照该程序的"解锁"过程即可。
    布鲁诺
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    (现在)注意到一个单独(同样混淆)的 TM4C 帖子入侵了"halled" Hercules 论坛空间是否正确?
    "TM4C"在那里同样异常且不可识别- RM57Lxyz 就在这里。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉、如果我以前不清楚、

    为简单起见、我们假设我已将 RM57L Launchpad 的原始 TM4C 更改为全新的 TM4C、无需任何固件。 现在、我要对 XDS110 boot_loader.bin 进行编程、然后对 XDS 2.3.0.7 firmware.bin 进行编程。
    当我将 Launchpad 的 USB 电缆与全新的 TM4C 插入时、PC 会将该电路板识别为"Tiva 器件固件更新"。 因此、使用 LM 闪存编程器、我可以将 XDS boot_loader.bin 文件编程到 TM4C、但在芯片复位后、电路板显示为"未知器件"、原因是什么? 我是否应该尝试直接对 firmware.bin 进行编程?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Anselmo、
    好的、现在看起来更有意义了! 那么、让我看看我是否理解它:
    您制造了一个 RM57L Launchpad 的"简单版本"。 您的电路板不仅具有 RM57 Hercules 目标、还具有 TM4C1294、您打算将其用作 XDS110来对 Hercules MCU 进行编程/调试。
    如果正确、请注意以下几点:
    ——你为什么这么做呢? 对定制板进行编程的常用方法是使用外部调试器(例如、原始评估套件上的 XDS110)、暂时连接到定制板-当您对结果满意时、只需断开接口、 并将您的产品与调试器 IDE 一起使用、同时使用完成的固件。
    尽管 XDS110似乎是为了开放而创建的,但最近在2016年11月发布的文章指出,没有这样的可用固件可供公众下载。
    由于您的 TM4C1294将完全空白、您显然没有任何固件-如果您能够获取 xds110固件、您需要一个解决方案来首次对其进行编程。 为此、您需要了解如何通过所选的通信通道(可能是 USB?)使用 TM4C 的引导加载程序。 并不是一项简单的任务、但本论坛中有多篇有关引导加载程序的文章以及一份可为其提供指导的特定文档(www.ti.com/.../spmu301)。 下面是一个有趣的讨论:
    e2e.ti.com/.../1051377
    此致
    布鲁诺
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    答案:
    空间限制会使没有嵌入式调试器就难以执行现场测试。
    -二进制文件可在文件夹"..\ti\ccsv7\ccs_base\con\uscif\xds110"中找到。 甚至还有一个 readme.txt 解释了更新固件的过程。
    -我已经通过两种方式将 boot_loader.bin 编程到 TM4C:首先、使用具有 UniFlash 编程器的 Stellaris Launchpad 调试器 JTAG;其次、通过 DFU 选项直接使用 USB 和 LM 闪存编程器。 这两种方法都指示了正确的编程、但复位后、电路板停止被识别。 总之、我将查看这些链接;

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

    Anselmo Silva 说:
    -Space 限制会使在没有嵌入式调试器的情况下难以执行现场测试。

    听起来就像你成为了你自己的军械库的受害者... TM4C 适用的任何位置都是如此、具有 USB 或串行通信功能的简单连接器从主 MCU 发出... 从 Hercules 捕获更快/更充分的数据肯定比在现场查看 IDE 上运行的代码更高效... 我们过去确实被现场调试的需要所吸引、但这是一场噩梦(我们的硬件通常在火车下面!) 因此我们提出了一个内部规则:"基本固件"必须足够强大、不需要现场调试、任何高级评估都必须由专用收集的数据完成、并通过串行或其他通信(实时或非实时)提供。

    [quote user="Anselmo Silva"-可以在文件夹"..\ti\ccsv7\ccs_base\con\uscif\xds110"中找到二进制文件。 甚至还有一个 readme.txt 解释了更新固件的过程。

    非常感谢您提供的更新信息、我不知道这一点!

    [引用 user="Anselmo Silva "]两种方法都指示了正确的编程、但复位后、电路板停止被识别。

    为了方便记录、您是否允许 TM4C 和 Hercules 之间进行中间 JTAG 访问? 换句话说、是否可以在物理上在其他目标上测试硬件的 XDS110侧、例如另一个简单的 TM4C123 Launchpad? 只是试图隔离怪物。 o 您获得的 XDS110固件可能已过时? 我的一些 CC2650 LaunchPad 附带的 XDS110需要在首次连接时进行更新、我不确定"新版本"来自哪里以及 CCS 如何管理它、但这只是另一个想法。

    谢谢

    布鲁诺

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

    [引用用户="Bruno Saraiva"]

    Anselmo Silva
    空间限制会使没有嵌入式调试器就难以执行现场测试。

    听起来就像你成为了你自己的军械库的受害者... TM4C 适用的任何位置都是如此、具有 USB 或串行通信功能的简单连接器从主 MCU 发出... 从 Hercules 捕获更快/更充分的数据肯定比在现场查看 IDE 上运行的代码更高效... 我们过去确实被现场调试的需要所吸引、但这是一场噩梦(我们的硬件通常在火车下面!) 因此我们提出了一个内部规则:"基本固件"必须足够强大、不需要现场调试、任何高级评估都必须由专用收集的数据完成、并通过串行或其他通信(实时或非实时)提供。

    [/报价]

    是的、看起来是这样的。 我们已经计划了一种权变措施、至少验证目标 MCU。 我们可能需要找出不同的方法来完成现场测试要求。 无论如何,我会尽快了解程序问题。

    [引用用户="Bruno Saraiva"]
    Anselmo Silva
    这两种方法都指示了正确的编程、但复位后、电路板停止被识别。

    为了方便记录、您是否允许 TM4C 和 Hercules 之间进行中间 JTAG 访问? 换句话说、是否可以在物理上在其他目标上测试硬件的 XDS110侧、例如另一个简单的 TM4C123 Launchpad? 只是试图隔离怪物。 o 您获得的 XDS110固件可能已过时? 我的一些 CC2650 LaunchPad 附带的 XDS110需要在首次连接时进行更新、我不确定"新版本"来自哪里以及 CCS 如何管理它、但这只是另一个想法。

    谢谢

    布鲁诺

    [/报价]

    我已经测试了 firmware.bin 文件、将其编程到 RM57Lx Launchpad。 它运行良好、固件从2.3.0.0更新为2.3.0.7。 PC0~PC3引脚上的 TM4C JTAG 可通过外部接头提供。 为了连接 Hercules JTAG、PA2~PA5、我可以将外部导线焊接到引脚上。

    为了避免进一步的开发延迟、我从一个 Launchpad 上对目标 MCU 和从一个定制板上对 TM4C 进行了去色。 现在、我要将导线从一个板连接到另一个板、并从我们的板验证目标 MCU。 一旦软件团队能够继续工作、我将继续搜索解决方案、或者至少明确解释 boot_loader.bin 不起作用的原因。

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

    不确定我是否迟到了、但我有一个类似的设置、其中我有一个带有 Tiva 129的定制板、用于 XDS110。

    我用来将这个 Tiva 配置为一个129的编程序列如下所示...

    确保 USB 总线上没有其他 Tiva 器件
    打开 XDS110 FW 目录中的命令提示符
    检查'xdsdfu -e'以确保 Tiva 处于 DFU 模式。 它应报告"Tiva 器件固件更新"
    执行"xdsdfu -b boot_loader.bin -r"
    重启电源或复位电路板、然后执行"xdsdfu -f firmware.bin -r"
    完成后、Tiva 129应该会点亮另一个 LED (如果您已包含)。

    然后、XDS110也应该出现在 USB 总线上。

    BR、

    Steve

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

    克莱内斯先生,谢谢你。   虽然啤酒已经(很久)消失了、但由于您的重视和重视贡献、聚会仍在继续、甚至可能会得到加强...  

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

    [引用用户="Steve Clynes"]

    不确定我是否迟到了、但我有一个类似的设置、其中我有一个带有 Tiva 129的定制板、用于 XDS110。

    我用来将这个 Tiva 配置为一个129的编程序列如下所示...

    确保 USB 总线上没有其他 Tiva 器件
    打开 XDS110 FW 目录中的命令提示符
    检查'xdsdfu -e'以确保 Tiva 处于 DFU 模式。 它应报告"Tiva 器件固件更新"
    执行"xdsdfu -b boot_loader.bin -r"

    [/报价]

    在执行对引导加载程序固件进行编程的命令后、PC 停止识别电路板、我收到消息"Unknow Device"、与尝试通过 LM 闪存编程器对其进行编程时的行为完全相同。

    [引用用户="Steve Clynes"]
    重启电源或复位电路板、然后执行"xdsdfu -f firmware.bin -r"
    完成后、Tiva 129应该会点亮另一个 LED (如果您已包含)。

    然后、XDS110也应该出现在 USB 总线上。

    BR、

    Steve

    [/报价]

    遗憾的是、对 boot_loader.bin 进行编程后、命令"xdsdfu -e"返回未找到器件、因此无法对 firmware.bin 文件进行编程。

    ATT、

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

    您好!

     我假设您在 RM57 LaunchPad 上运行 xdsdfu、它正在更新 FW、对吧?

     还可以再次检查 RBIAS 引脚上是否有4.87k Ω 电阻器、如下 RM57 LaunchPad 原理图所示?

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

    我发现、如果之前加载了任何代码、那么上面概述的"清理"过程不会很好地工作。

    我仍然需要确定如何通过 DFU/USB 完全擦除 Tiva。

    如果您可以访问 JTAG 引脚、则可以使用 LMFlash 并执行完全擦除。 然后、这将允许您执行我上面提到的"清理"过程。

    BR、

    Steve