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.

[参考译文] TMS570LS0914引导加载程序跳转到应用程序

Guru**** 2390755 points
Other Parts Discussed in Thread: TMS570LS0914

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1497771/tms570ls0914-bootloader-jump-to-application

器件型号:TMS570LS0914

工具/软件:

大家好!

我正在为 TMS570ls0914控制器开发基于 CAN 的引导加载程序。 在抵消我想说的是,由于机密性,我将无法分享该项目。 但是,我可以分享某些片段。 从引导加载程序跳转到应用程序时、我遇到了问题、因为它会点击"预取进入"并卡住。 我的应用程序端链接器配置如下  

矢量:0x00020000长度= 0x20

闪存0:0x00020020长度= 32KB

我首先通过以下方式测试此配置:从调试器将此应用程序刷写到此地址、然后刷写引导加载程序、而不擦除这些选定扇区。 然后从引导加载程序跳转到地址0x00020000、应用正常工作。  

但是、当我从应用工程(intel hex、romwidth 16 memwidth 16)生成十六进制文件并使用闪存 API 写入地址位置0x00020000时、就会出现该问题。 我检查了内部闪存、数据正常。 但我可以在内部闪存中看到一些问号(值不确定)。 这是否是由于调试器或闪存 API 使用不当造成的? 这可能会导致跳转问题吗? 如果需要、我可以分享屏幕截图。

至于闪存 API 的使用、我一次写入16个字节。 这是否违反了任何内存边界? 我将在自动 ECC 模式下使用它。  

我还尝试在代码的引导加载程序端和应用程序端禁用所有自检。  

如果您需要任何其他详细信息或代码片段、请告诉我。  

此致、

Vishnu  

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

    为"预取条目"问题添加快照以及内部闪存中的不确定值: (内部闪存-通过闪存 API over CAN 写入的应用程序十六进制)

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

    尊敬的 Vishnu:

    首先,我道歉的延迟响应,我休息了几天,不知何故我错过了你的主题。

    您是否仍无法解决此问题?

    如果是,那么,我从来没有遇到这个问题标记,而使用 FAPI 库写作。 确保您生成的 Intel Hex 在此问号位置具有正确的数据。

    此外、您能否介绍我最新的 FAPI 相关问题及其解决方案:

    (+) TMS570LC4357-API:F021闪存 EP 读取问题-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛

    上述主题也可能对您有用、请查看其解决方案。

    --
    此致、
    Jagadish。