Part Number:TMS320F28375S
我采用的办法是在主函数前加上
#pragma CODE_SECTION(xxxx,".TI.ramfunc");
如果xxxx是定义在主函数的函数,那么在map中可以看到已经在ram中运行,但是这个函数不是定义在主函数的,那么在map中就可以看到他还是在flash中,没有搬运到ram中去
Yale Li:
你这个操作实际上是将xxxx直接分配在了.TI.ramfunc,也就是RAM。
有关将函数放置在FLASH,但是从RAM中运行,请参考:
https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_C2000_sdto_cgt_Linker-Command-File-Primer.html
,
?? ?:
感谢您的解答 但是我想问一个问题,就是一个函数我把他放到ram中运行,可以在map中看到他是在ram了,但是这个函数包含的子函数仍然在flash中,有什么办法可以解决
,
Yale Li:
以及这一部分:
https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_C2000_sdto_cgt_Linker-Command-File-Primer.html
,
?? ?:
这个好像是和之前是同一个链接
,
Yale Li:
是同一个链接的不同section,可以搜索链接中#后面的section名称;
?? ? 说:但是这个函数包含的子函数仍然在flash中
这是正常的,因为两个函数之间只有调用关系;可以以同样的方式把被调用的子函数也放置到RAM中。