DSP

TI DSP--内存空间的分配和指定

2019-07-13 09:58发布

       在CCS编程中,如果我们不指定变量/代码的存放位置,编译器会自动的给变量/代码分配一个位置,但是如果有的时候需要把变量放在一个特定的空间内,我们应该如何操作呢,CCS提供了如下的两个指令
#pragma CODE_SECTION
#pragma DATA_SECTION
其中data_section是针对数据空间的,
#pragma DATA_SECTION(bufferB, ”my_sect”)
char bufferB[512];
在.cmd文件中建立对应的section就可以使用了.
#pragma CODE_SECTION是针对代码空间的。 #pragma CODE_SECTION(dragon_update,"ramfuncs"); Uint16 dragon_update(UPDATE_SOURCE_TYPE *update_flag) { } 然后再在cmd文件中指定这两个section的位置就可以了。 如果想在汇编中指定段,使用方法,在代码前用 .sect "XXX"开始则标示接下来的一段代码都是在xxx的代码段中。   PieVectTableFile : > PIE_VECT,   PAGE = 1   //nonBIOS. cmd
#pragma DATA_SECTION(PieVectTable,"PieVectTableFile");
struct PIE_VECT_TABLE PieVectTable;  //globalVariableDefs.c