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.

Compiler/TMS320F280049C: Some strange phenomenon when define variables in .cla file

Part Number: TMS320F280049C
Other Parts Discussed in Thread: C2000WARE

Tool/software: TI C/C++ Compiler

Hi Expert,

I add the below function in the Cla1Task1 in .cla file of "cla_ex3_background_nesting_task_cla" example.

-------------------------------------------------------------------------------------

Phase_VB_SENSE++;

if((Phase_VB_SENSE >= 222222)&& (Phase_VB_SENSE <= 233333))
{
__mdebugstop();
Phase_VB_SENSE = 0;
}

---------------------------------------------------------------------------------------------------------------

There're some confusions when I define variables.

  1. if just define "int32_t Phase_VB_SENSE;" in .cla file, according to the value in expression window, the length of variable is 16bit not 32 bit, the LED is light normally.
  2. if define "extern int32_t Phase_VB_SENSE;" in .cla file & "int32_t Phase_VB_SENSE=0;" in main.c file, the expression window shows the variable is "long" and the value is always "0", the LED is light normally.

The above phenomenon is really weird, and I'm not sure about the reason.

Could you please help to debug this issue or give me some notes about how to configure to get the reasonable variable value?

Thanks!

Best Regards

Rayna

cla_ex3_background_nesting_task_cla