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.

[参考译文] CCS:从头开始时重新定义_Ramfuncs_xxxx

Guru**** 2585275 points
Other Parts Discussed in Thread: CONTROLSUITE, C2000WARE

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/602732/ccs-redefinition-of-_ramfuncs_xxxx-when-beginning-from-scratch

主题中讨论的其他部件:controlSUITEC2000WARE

工具/软件:Code Composer Studio

您好,

当我从头开始启动CCS项目并在项目向导中选择.cmd文件时,我会得到一个.cmd文件,其中包含两次_Ramfuncs_xxxx的区域。
是否有人能向我解释"至"区域的区别? 我n´t了#ifdefs,但我不明白。
我知道.cmd文件和部分部分的使用。

/*分配计划领域:*/
.cinit :> FLASHB 页面= 0,对齐(4)
。\n定位 :> FLASHB, 页面= 0,对齐(4)
.text :>> FLASHB | FLASHC | FLASHD | FLASHE 页面= 0,对齐(4)
代码开始 :>开始 页面= 0,对齐(4)
ramfuncts :负载= FLASHD,
RUN = RAMLS0 | RAMLS1 | RAMLS2 |RAMLS3,
load_start(_RamfuncsLoadStart),
load_size (_RamfuncsLoadSize),
load_end (_RamfuncsLoadEnd),
run_start(_RamfuncsRunStart),
Run_Size (_RamfuncsRunSize),
Run_End(_RamfuncsRunEnd),
Page =0,align(4)

#ifdef __TI_Compiler_version__
#if __TI_Compiler_version__>= 1500.9万
.TI.ramfunc:{} load = FLASHD,
RUN = RAMLS0 | RAMLS1 | RAMLS2 |RAMLS3,
load_start(_RamfuncsLoadStart),
load_size (_RamfuncsLoadSize),
load_end (_RamfuncsLoadEnd),
run_start(_RamfuncsRunStart),
Run_Size (_RamfuncsRunSize),
Run_End(_RamfuncsRunEnd),
Page =0,align(4)
#endif
#endif 

此致,
Jasson

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

    有关如何以及何时生成.ti.ramfunc部分的背景信息,请查看此维客页面:
    http://processors.wiki.ti.com/index.php/Placing_functions_in_RAM

    这是编译器工具版本15.9 0.0中引入的一项新功能,因此链接器命令文件中的#IF规范。 以前版本的工具使用了ramfuncs部分。  

    此外,在链接程序命令文件包含else语句以处理任一节命名之前,您似乎正在使用较早版本的链接程序命令文件。  您使用的是哪个版本的CCS? CCS 7.1 应包含最新/更新的链接器命令文件,并且最新的controlSUITE和C2000Ware软件包也应包含更新的文件。