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.

TMS320F28027: boot code and app code in one device

Part Number: TMS320F28027


Hi, my customer is using F28027 and he writes two projects, one for boot loader(boot code) and another for application(app code).

1. Can I debug the two projects with CCS at the same time? for example, if the app code want to call a function, say funcA, defined in boot code, I cannot know how funcA behaves if I can not make the two projects at the debug state at the same time.

2. How to set the allocate space for a function defined in a lab? 

For a function defined in the same C file, I can use the following pragma CODE_SECTION.

#pragma CODE_SECTION(Example_Done,"ramfuncs");
void Example_Done(void)
{

asm(" ESTOP0");
asm(" SB 0, UNC");
}

But if I wrote

#pragma CODE_SECTION(Flash_APIVersionHex,"ramfuncs");//  assume Flash_APIVersionHex is a function of Flash2802x_API_V201.lib, and does not reside in ROM.

the compiler will say 

Description Resource Path Location Type specified symbol 'Flash_APIVersionHex' undefined Example_Flash2802x_API.c /Example_Flash2802x_API line 226 C/C++ Problem

3. How can I call a function, a variable, or a struct defined in another project?

For a function, I can only use the syntax "LB" ? Can I call the function the same way I call a function defined in the same project?

By using "LB", I have to know the address of the function, right? And the way to know this is to look at the memory map, right?

For a variable or a struct, say the variable's name is VAR1, can I just write "VAR1=1"? or I have to know the address of the variable or struct, and use the pointer to change the value or read the value of the variable or struct?