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.
Tool/software: Code Composer Studio
Hello,
I am trying to merge two projects into one. The first code I am using is the example in the C2000 suite under the f2800x examples, spi_ex4_eeprom, and I was able to load the program onto the uC, run it, and verify my EEPROM functionality.
The second project I am trying to get to work is a purchased software stack that was designed to run on the TMS320F2837xd. So I am attempting to port firmware designed for the Delfino family to a Piccolo chip. I went through the code and cleaned up all the errors and set up the drivers from the C2000 suite for my desired chip.
I am able to get the code to compile and load onto the chip. Everything goes well in the debugger, the program gets loaded but once I try to run the program I get the following: No source available for "0x3fbd92"
As I work through the program step by step, I can see that the error happens when the function SysCtl_setClock(DEVICE_SETCLOCK_CFG); is called. When I hover over the function, I see the following error: Error: cannot load from non-primitive location (as seen in the screenshot below)
I cannot seem to figure out how to resolve this problem. I have expanded some of the RAM/FLASH locations in the 280045_FLASH_lnk.cmd file as other threads have suggested but it has not changed my outcome. Help would be greatly appreciated.
Thanks,
Jeremy
Jeremy,
For the "No source available for "0x3fbd92"" message, please see the following post:
http://e2e.ti.com/support/microcontrollers/c2000/f/171/p/656494/2412239#2412239
All that is needed to display the source is to add the symbols, which is available in C2000Ware at:
C:\ti\c2000\C2000Ware_<version>\libraries\boot_rom\f28004x\revB\rom_source
As for the error when single-stepping 'Error: cannot load from non-primitive location', this might be because the debug info in the .lib is located on a different machine which was used to build it. A few options are:
1. Live with it and just “Locate File” every time it comes up
2. Import the Driverlib project and rebuild the .lib so the paths will match your local machine
3. Do what the Driverlib examples do and add the Driverlib source to your project but exclude it. This allows CCS to find the files, but you won’t get any build conflicts with the .lib.
I hope this helps. If this answers your question, please click the green "Verified Answer" button. Thanks.
- Ken
Ken,