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:Eflash 实用程序工具问题

Guru**** 2448780 points
Other Parts Discussed in Thread: EK-TM4C1294XL

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/622331/starterware-tm4c1294ncpdt-eflash-utility-tool-issue

器件型号:TM4C1294NCPDT
Thread 中讨论的其他器件:EK-TM4C1294XL

工具/软件:Starterware

你好。

有没有人能消除我对 Tivaware 中 tools 文件夹中提供的 eflash 工具的怀疑。 我已经阅读了引导加载程序文档、它说可以通过以太网连接远程更新 Tiva-C。 因此、我将使用提供的 eflash 工具。  

我怀疑我们需要在 cmd 文件的"-i "参数中指定什么 IP 地址。  

此外、可以通过互联网发送新的映像文件、并且在 eflash 实用程序的帮助下、可以从任何地方远程刷写新映像吗??

此外、我在其他文章中还了解到、我们需要来自存储器位置0x0的 boot_emac_flash 代码才能使用以太网下载新的映像文件。

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Nishit、您好!
    如果您有兴趣通过以太网进行引导加载、请参阅下面的示例 BOOT_EMAC_FLASH 和 BOOT_DEMOH_EMAC_FLASH \examples\boards\ek-tm4c1294xl。 BOOT_EMAC_FLASH 是将加载应用程序 BOOT_DEMO_EMAC_FLASH 的引导加载程序。 另请参阅 TivaWare 安装下的引导加载程序用户指南。

    下面是另一个供您参考的帖子。 您可以将 eflash.exe 用作重量更轻的固件上传实用程序、而不是 LM 闪存编程器。

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

    您好、Charles、

    感谢您的快速响应。 我读取 boot_demo_emac_flash 和 boot_emac_flash c 文件。  

    因此、我基本上可以理解、我需要  位置0x0000的 boot_emac_flash 和  位置0x4000的 boot_demo_emac_flash。 我在相应的位置刷写了这两个代码、然后调试了代码。 在  boot_demo_emac_flash 中 有一个 SoftwareUpdateBegin ()函数调用。 那么、该函数是否会调用位于0x0000的引导加载程序? 如果是、那么引导加载程序将如何通过以太网加载数据?  

    您能否提供有关如何使用以太网电缆远程上传固件文件的顺序步骤? 我没有得到我应该继续执行此示例的确切顺序。

    此致、

    Nishit。

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

    Nishit、您好!

     顺序如下:

     1.使用调试器加载 BOOT_EMAC_FLASH。 BOOT_EMAC_FLASH 是永远不会被擦除的引导加载程序。 它位于0x0。 加电后、您将首先运行引导加载程序。 引导加载程序将检查是否已有有效的堆栈指针和从0x4000开始的应用程序的复位处理程序(请注意、该地址不是永久地址。 您可以更改它)。 如果没有有效的堆栈指针和复位处理程序、则它将配置以太网端口并准备好与外部上载实用程序(如 LM 闪存编程器)进行通信。 如果已经有一个有效的 SP 和复位处理程序、那么它将跳转到应用程序并运行应用程序。

     2.您将使用 LM 闪存编程器。 在配置选项卡的快速设置菜单中、选择"手动配置"。 在 Interface (接口)菜单中、选择 Ethernet (以太网)并提供 MAC 地址(如 launchpad 背面所示)和 IP 地址(我建议您首先运行 enet_io 示例以首先获取 DHCP IP 地址并放置地址)。

     3.转至 Select .bin file 菜单下的 Program 选项卡,选择 boot_demo_emac_flash.bin。 LM 闪存编程器应与 MCU 通信、MCU 将下载 bin 文件并将应用程序写入闪存。

     还有两条注释。 您需要首先删除之前闪存中存在的 boot_demo_emac_flash。 其次、本演示需要注意。 我听说演示可能有一些问题。 在您尝试通过单击 LM 闪存编程器中的 Program 按钮对.bin 文件进行编程后、它不会进行、并且会卡住。 不过、上述步骤显示了引导加载程序演示的工作原理。 您应阅读引导加载程序用户指南、其中对此进行了说明。  

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

    您好、Charles、

    感谢您提供的详细步骤、但这如何演示固件的远程升级? 我希望我的微控制器通过 Launchpad 上提供的以太网端口连接到 LAN 时下载固件映像。

    这是可行的吗? 此外、我还了解到、我们需要通过以太网端口发送一系列 AA AA AA AA 字符、后跟 Launchpad 的 MAC 地址4次、以使控制器下载固件文件。 这些信息是否正确?

    我测试此代码的最终目标是下载一个新代码、假设 bilnky 到通过以太网端口连接到 LAN 的 Launchpad。 按下按钮时、Tiva-C 将跳转至引导加载程序模式、并等待以太网端口上的魔术包、我将通过 TCP/IP 协议(我假设)发送该魔术包。

    您能给我一些关于这项工作的见解吗?

    我一直在阅读引导加载程序用户指南、并尽力了解该流程。  

    此致、

    Nishit。

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

    Nishit、您好!

     通过按下开关、您将强制应用程序调用引导加载程序、该引导加载程序将下载新的应用程序固件。 如果您正在寻找远程更新固件的方法、那么这里是一个由 John Piliounis 开发的具有项目演示的出色线程。  

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

    您好、Charles、

    感谢您为我提供链接。 遗憾的是、John 的主题帖上没有该链接。  

    此外、我还尝试了您建议的 Enet_IO 示例代码、但代码卡在 串行终端的"等待链接"上。 此外、LED 在电路板上持续闪烁。

    因此、我无法获取 IP 地址。 我还尝试将 lwIPinit()函数中的参数从  IPADDR_USE_DHCP 更改为   IPADDR_USE_AUTOIP ,正如 CLP 工作簿中提到的那样。

    终端仍然显示正在等待链路、LED 持续闪烁。

    这可能是什么原因? 我是否需要在示例代码中进行任何其他更改? 我使用的是 TivaWare_C_Series-2.1.4.178。

    此致、

    Nishit。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的。 IP 地址问题已解决。
    链接仍不在您提供的线程中可用。
    您能给我一些关于通过以太网远程下载文件的见解吗? 我应该遵循哪些步骤以及我需要哪些先决条件?
    此致、
    Nishit。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Nishit、您好!

     演示项目由 John Piliounis 在 dropbox 上提供。 需要联系他、以便再次上载到下拉框中。