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.

[参考译文] 从仅汇编器项目加载 BSL/主闪存

Guru**** 2386600 points
Other Parts Discussed in Thread: MSP430F5524, MSP430F5525
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/723489/loading-bsl-main-flash-from-an-assembler-only-project

器件型号:MSP430F5524
主题中讨论的其他器件: MSP430F5525

工具/软件:Code Composer Studio

关于 :MSP430F5524
 从仅汇编器项目加载 BSL/主闪存

如果我的信息/术语令人困惑、我会提前提出拓扑。 我的目标是将 CCS IDE 用作具有调试功能的汇编器/链接器、适用于仅汇编语言项目。 我想在没有任何 C/C++引用的情况下从单个项目加载 BSL_Flash 和 Program_Flash。 我只是不对它进行 C 语言处理。

提出问题而不是进行测试的原因是、由于成本限制、我没有硬件原型或 EVM。 在投资有限的资源之前、我正在努力确保我能够亲自支持产品。

我的问题是:
1.项目是否会按照链接映射的说明加载 BSL 和主存储器部分?
2.您是否认为由于我设置项目的方式、使用调试器会出现问题?

为了设置项目、我已经从 CCS 中删除了尽可能多的 C 语言框架。 我已删除除项目根目录之外的所有目录 includes。 我已将"msp430f5525.cmd"复制到我的项目目录、将其重命名为"msp430f5525.asm"、并在汇编器中重写它。

为了设置这个项目、我将"lnk_msp430f5524.cmd"复制到我的项目目录、去除条件语句、创建了我自己的引导段并编写了一个程序来测试构建。

"lnk_msp430f5524.cmd"中添加的代码 为:

存储器

   …
   INFOD      :origin = 0x1800,length = 0x0080
   MYBOOT     :origin = 0x1000,length = 0x0800   /*由 ME 添加*/
   闪存      :origin = 0x4400,length = 0xBB80
   …


部分

  …
   infoD     :{}> infod
   myboot    :{}> MYBOOT         /*由我添加*/
   .int00     :{}>int00               
   …

简化的测试程序"BSL.ASM"为:

 .def  启动代码            ;导出程序入口点

 .include "msp430f5524.asm"

 保留
 .retainrefs
 .sect ".myboot"   ;BSL 闪存

引导代码
 MOV.w  #WDTCTL、R4
 可重置

相关的映射文件引用包括:

存储器配置
     名称       源   长度     使用    未使用  的属性   填充
--------  ----  ------  ----  ----  --------  

 MYBOOT        00001000  00000800 00000006 000007fa RWIX

部分分配映射
 输出                                 属性/
段  页   原点     长度      输入段
----  --------   ------   --------

myboot   0    00001000   00000006     
                00001000   00000006    BSL.obj (.myboot)

提前感谢您的帮助、
Rudy

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

    我不确定您对 CCS 的修改。 您可以使用默认编辑器以汇编语言编写所有内容。 调试时、默认编辑器仍将起作用、因为您可以在汇编级别单步执行(绿色箭头)、并且可以使用反汇编器视图。

    对于 BSL 的开发和调试、必须特别小心。 为此,请遵循自定义 BSL 用户指南(http://www.ti.com/lit/slaa450 )中第1.5节 BSL 开发和调试中的建议。 通常、如果您使用的是定制 BSL、它是独立于应用开发的、并在应用之前加载到器件中。 我听说过客户获取其定制 BSL 及其应用的二进制映像、并将其组合在一起(因为没有存储器位置会重叠)、以便同时将两者下载到器件中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢你,Jace。 这正是我希望得到的信息。 最后、我将把 BSL 拆分为一个单独的项目、并在制造过程中使用它来加载主存储器。