Part Number: TMS320F28379D
Tool/software: Code Composer Studio
Hello,
I'm using the RFFT_ADC_RT examples from C28x Floating Point Unit Library V1.50.00.00. (CCS7.0)I come across with the same issue with
But When I try to fix the code like this
Amin,
Change the math tables definition to this
FPUmathTables : LOAD = FLASHB,
RUN = RAMGS12,
RUN_START(_FPUmathTablesRunStart),
LOAD_START(_FPUmathTablesLoadStart),
LOAD_SIZE(_FPUmathTablesLoadSize),
PAGE = 1
In your code, you need to memcpy this section to its run location
extern uint32_t FPUmathTablesRunStart, FPUmathTablesLoadStart, FPUmathTablesLoadSize;
memcpy(&FPUmathTablesRunStart, &FPUmathTablesLoadStart, (uint32_t)&FPUmathTablesLoadSize);
Since you are using the FASTRTS build the sin() and cos() routines used in the generation of the twiddle factors come from the FASTRTS library, which requires the tables in FPUmathTables. If you run with the JTAG connected CCS loads up the tables into RAM directly, whereas if you run in standalone - JTAG unplugged - you ought to load these tables in FLASH and then copy over to RAM at runtime.
#elif defined(FLASH)
.TI.ramfunc : LOAD = FLASHC,
RUN = RAMLS1,
RUN_START(_RamfuncsRunStart),
LOAD_START(_RamfuncsLoadStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
FPUmathTables : LOAD = FLASHB,
RUN = RAMGS12,
RUN_START(_FPUmathTablesRunStart),
LOAD_START(_FPUmathTablesLoadStart),
LOAD_SIZE(_FPUmathTablesLoadSize),
PAGE = 1
.text : > FLASHN, PAGE = 0
.cinit : > FLASHM, PAGE = 0
.pinit : > FLASHM, PAGE = 0
.switch : > FLASHM, PAGE = 0
.econst : > FLASHB, PAGE = 1
and copy the memcpy func into main func
Is it right?
The freq value and fft output is 0;
And I noticed that the CCS warning
creating outout section RFFT data 1 without a section specification.
... data 2 3 4
I did't change the #pragma DATA_section() func in the head of main.c.Is the warning also relevent to the problem?
Thanks!