Part Number:TMS320F28379D
hello, I am using a modified version of the code from lab3 which can be downloaded here: ![]()
I wanted to run the code from flash and successfully have succeeded in doing so but I am a little confused by this section in the Flash_linker command file:
#ifdef __TI_COMPILER_VERSION__
#if __TI_COMPILER_VERSION__ >= 15009000
.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
Basically, If I run the code as is, it doesnt work, I need to bypass the #if __TI_COMPILER_VERSION__ >= 15009000 such that my code uses 'ramfuncs' as the section instead.
I also used a similar bypass in my .c file:
#ifdef __TI_COMPILER_VERSION__
#if __TI_COMPILER_VERSION__ >= 15009000
#define ramFuncSection "ramfuncs"
// #define ramFuncSection ".TI.ramfunc" - not being used
#else
#define ramFuncSection "ramfuncs"
#endif
#endif
Basically, the default code would have me believe that I need to use .TI.ramfunc instead of ramfuncs based on my compiler version however I could only get it to work by using ramfuncs. If anyone could help shed some light on this that would be much appreciated.