Other Parts Discussed in Thread: TMS320F28335
Hello!
My microcontroller is TMS320F28335.
I need to place a large data block (approx. 78k words) in the program memory area. My data array is defined like that:
const unsigned int Name[ ] = { ..., ..., ..., ...} ;
By default the .const section is 4k words. So it's not enough. And all the data memory also. I tried to modify the 28335_RAM_lnk.cmd file:
MEMORY
{
PAGE 0 :
...
FLASHROM : origin = 0x30 0000, length = 0x14000
}
SECTIONS
{
...
.econst : > FLASHROM, PAGE = 0
}
The data block now located at the 0x30 0000 address. But the program code near address 0x9000 is partially damaged by fragments of these data block.
I also tried to define data without "const" word and use #pragma DATA_SECTION. But it also does not works, because compiler tries to generate instructions that initialize all these data like variables.
Please explain me what is the best and correct way to place me constant array in the program memory area starting from address 0x30 0000 ore higher.
Thanks.