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.

[参考译文] 编译器/TMS570LC4357:引导加载程序 LC43x

Guru**** 2487425 points
Other Parts Discussed in Thread: LAUNCHXL2-570LC43

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/735564/compiler-tms570lc4357-boot-loader-lc43x

器件型号:TMS570LC4357
主题中讨论的其他器件:LAUNCHXL2-570LC43

工具/软件:TI C/C++编译器

问题:我的器件是 LAUNCHXL2-570LC43,并且我在以下示例 中使用引导加载程序/cfs-file/__key/communityserver-discussions-components-files/908/5460.TMS570LC4357_5F00_UART_5F00_Boot.7z ,如果在 back1中编程的应用程序发生中断,CPU 从中断矢量表加载 ISR 地址、该表由引导加载程序而非应用程序定义,应用程序如何进行编程 重新定位中断矢量表?

以上 示例仅包含 bootloader 工程、无应用工程,是否有使用 bootloader 更新?的应用工程示例

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

    Hercules 器件没有重新定位中断矢量表的功能。 异常向量的地址为0x00000000。
    当处理器接收中断时、它将执行以下操作:
    1.将下一条指令的地址保留在适当的 LR 寄存器中
    2.将 CPSR 复制到相应的 SPSR 寄存器中
    3.设置或修改 CPSR 中的几个位
    4.从引导加载程序异常向量中提取下一条指令。 处理器还设置中断禁用标志、以防止异常嵌套、否则将无法管理。

    例如、如果应用程序的异常向量为0x20000、当 CPU 接收数据中止异常时、它将获取0x10 (0x20010)的地址、然后跳转到0x20010以获取应用程序代码中的 dabort 处理程序的地址。