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.

[参考译文] TMS570LS3137:跳转到在闪存扇区偏移处写入的应用程序

Guru**** 2478765 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/691575/tms570ls3137-jumping-to-an-pplication-written-at-an-offset-of-a-flash-sector

器件型号:TMS570LS3137

您好!

这是一种情况:

1-我将应用程序写入地址0x20000、基本上是{bank 0、扇区4}。 然后我可以跳转到该地址 0x20000、我的应用程序开始运行。

2 -我将应用程序写入 地址0x20100、因为我想为我的应用程序保留0x100字节、例如大小、CRC32等 当我跳转到 地址0x20100时、我的应用程序不会启动。

我不能在某个扇区的偏移处刻录应用程序吗? 我是否必须将应用程序的.intvec 放置在闪存扇区的开头?

不确定第二个选项为什么不起作用?

是否有任何解释?

提前感谢您、

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

    执行以下语句后:((void (*)(void))(uint32_t) 0x20100)()、PC 等于0x20100、则应用程序应启动。 请仔细检查您的 PC 值

    2.确保应用程序的 intvecs 偏移量(链接 cmd 文件)为0x20100而不是0x20000
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、我的无知。
    我应该已经更新了应用程序的链接器文件以反映更新的地址。
    我想我真想我希望处理器能解决这个问题。
    感谢您的快速响应。