器件型号: TMS570LS1227
我们正在开发一款使用引导加载程序+应用程序的产品。
我们引用了 (SPNA186) SafetyMCUBootloader 代码、其中 sys_core.asm 文件包含 名为_copyAPI2RAM_的汇编函数。
我们多年来一直成功使用该闪存、但最近对写入 RAM 的闪存进行了一些微小的修改、并一直遇到持续的未定义中止。
经过一些调试后、我们认为我们已经确定了问题-_copyAPI2RAM_函数在函数开始处定义了 3 个常量、在执行期间、这些常量在到达真实指令(即复制循环等)之前被视为指令。 我们的修改更改了要写入闪存的字节大小、随后更改 了 所表示大小的视在汇编指令。
根据我们得出的结果、解决方案是将这 3 个常量 (FLASH_LOAD、FLASH_RUN 和 FLASH_SIZE) 的定义移动到函数末尾。