Using Code Composer 10.3, I am importing the Flash API into my code and it builds as expected. I ensure the library paths as part of this discussion - https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1012666/launchxl-f280025c-flash-api/3742724#3742724.
I added the necessary F2808.cmd links:
Flash28_API: { -lFlash2808_API_V302.lib(.econst) -lFlash2808_API_V302.lib(.text) } LOAD = FLASHD, RUN = RAML0, LOAD_START(_Flash28_API_LoadStart), LOAD_END(_Flash28_API_LoadEnd), RUN_START(_Flash28_API_RunStart), PAGE = 0 ramfuncs : LOAD = FLASHD, RUN = RAML0, LOAD_START(_RamfuncsLoadStart), LOAD_END(_RamfuncsLoadEnd), RUN_START(_RamfuncsRunStart), PAGE = 0
As a test, I moved just the Flash_APIVersionHex( ) into my main function (after the MemCopy and the PLL setup etc.) to ensure it will work. When I run, I get jumped to an ILLEGAL_ISR() ESTOP.
I also get the following: Can't find a source file at "Flash28_Version_Hex.c"
Locate the file or edit the source lookup path to include its location.
When I step into the Flash_APIVersionHex( ) and show the disassembly, I see the following and as I single step the code, it enters the CopyData function:
Flash2808_APIVersionHex():
00851b: FE0C ADDB SP, #12
00851c: 767F51E3 LCR 0x3f51e3
100 {
CopyData(), RamfuncsRunStart:
00851e: FE0C ADDB SP, #12
115 CsmUnlock();
00851f: 767F51E8 LCR CsmUnlock
Any obvious reason why I can't seem to get the Flash API hex version with this simple setup?