2017-09-15 08:52 AM
Hi,
I try to move some array in CCM on stm32f415.
I modify the ld script with
CCM_SRAM (rwx) : ORIGIN = 0x10000000, LENGTH = 64K
.ccmram :
{ . = ALIGN(4); _sccmram = .; /* create a global symbol at ccmram start */ *(.ccmram) *(.ccmram*). = ALIGN(4);
_eccmram = .; /* create a global symbol at ccmram end */ }> CCM_SRAMIn my programe I had 2 global array:
char buffer[1024];
char in_ccram_buffer[1024] __attribute__((section('ccmram')));and I print there address :
printf (' buffer = %08x in_ccram_buffer = %08x\n',&buffer,&in_ccram_buffer );
the result is :
buffer = 20001a3c in_ccram_buffer = 20000ce4
I don't understand why the
in_ccram_buffer isn't in 0x1000.....
#ccm #sram-ccmSolved! Go to Solution.
2017-09-15 11:01 AM
,
,
Keil example
,Look at how the symbol is described in the .MAP file, and why that would end up in SRAM
2017-09-15 08:57 AM
Use DOT CCMRAM perhaps?
char in_ccram_buffer[1024] __attribute__((section('.ccmram')));
2017-09-15 11:01 AM
,
,
Keil example
,Look at how the symbol is described in the .MAP file, and why that would end up in SRAM
2017-09-18 03:22 AM
Yes It's better with a dot .
Thanks a lot