您好!
我们的项目包括一个加载到闪存组0中的引导加载程序和一个加载到闪存组1中的应用程序。 引导加载程序从地址0x0开始定义引导矢量和中断矢量、引导加载程序修改了中断矢量以指向应用程序矢量地址。 应用程序链接器命令脚本具有分配给闪存组1的必要修改。
这是我们2年多来可靠地使用的过程。 我们通常通过串行端口对应用程序进行编程、但出于调试目的、我们还能够直接使用 JTAG 调试器刷写应用程序。 为了完成这一操作、项目被设置为只擦除必要的闪存扇区、这是因为否则引导加载程序(以及引导加载程序矢量分配)被擦除并且应用程序无法执行。
最近、我们开始使用第三方工具进行代码跟踪和验证。 该过程的一部分是使用脚本构建应用并将其刷写到电路板上、并将该脚本集成到第三方工具链中。 为此、我们尝试使用'loadti'命令、到目前为止、该命令正在正确构建和刷写应用程序。 但是、它也会擦除目标板上的整个闪存空间。 这会导致引导加载程序和中断矢量分配被擦除、从而导致应用程序失败。
我们在项目中设置了一个.ccxml 目标配置文件、我们 的 loadti 脚本指向该文件。 在 CCS 中手动启动配置时、已将其设置为仅擦除应用上传所需的闪存扇区。
因此、我的问题是:我们如何配置 loadti 或链接的.ccxml 文件、以便在刷写代码时仅擦除所需的闪存组1扇区、而不是擦除目标的整个闪存空间? 或者、我们是否可以在自动脚本中使用其他命令或工具来构建和上传我们的应用?
谢谢、
James
