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.

[参考译文] TMS320F28377D:TMS320F28377D 的自定义启动器

Guru**** 2481465 points
Other Parts Discussed in Thread: TMS320F28377D

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1457267/tms320f28377d-customized-bootloader-for-tms320f28377d

器件型号:TMS320F28377D

工具与软件:

您好!

我已经 通过 CAN 总线为 TMS320F28377D 控制器开发了定制引导加载程序。

如果我要对两个.hex 文件进行编程、一个用于应用程序、一个用于引导加载程序代码、那么在通电一个周期后它会正常运行。

执行引导加载程序代码后、它会平稳跳转到应用代码。

当我将通过 CAN 总线应用闪存扇区时、则会在跳转代码暂停期间进入非法 ISR。  

我有比较. 下载 JTAG 和 CAN 后的十六进制文件数据、两者是相同的。

请建议使用任何其他配置设置来从引导加载程序代码跳转到应用程序代码。

我将使用 asm ("LB jump_addr");将代码从引导模式跳转到应用扇区。

此致、

Bharat

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

    尊敬的 Bharat:

    返回地址是否不是应用的标准地址? 您是否可以在 codestartbranch.asm 文件中使用 LRETR?

    谢谢。此致、

    Charles

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

    尊敬的 Charles:

    目前我正在尝试使用 Hex 文件的修复大小。

    请建议使用什么  LRETR 以及如何将其编程到 codestartbranch.asm 文件中。

    我们是否遗漏了程序计数器跳转到应用程序代码的内容?

    此致、

    Bharat

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

    尊敬的 Bharat:

    LRETR 汇编指令用于跳转到由所选引导模式定义的入口地址并继续执行。 在 C2000微控制器的 CAN 闪存编程中引用的其他器件基于 CAN的引导加载程序中、codestartbranch.asm 文件使用 LRETR、其中 RPC (返回 PC)寄存器加载由引导模式确定的入口点。 从定制 CAN 引导加载程序加载应用文件后、即可遵循此方法。

    谢谢。此致、

    Charles