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.

how to run my code from FLASH ROM, when code size is larger than one FLASH block?



Dear all,

i am trying to run my code from FLASH, but the size of code is larger than a single block. 

i have modified some portion under SECTIONS of the F28035.cmd file

initially it was:

.text : > FLASHA PAGE = 0

i tried with both the following options:

1)
.text : >> FLASHA | FLASHC| FLASHD| FLASHE, PAGE = 0          // to allocate as a whole into the first memory range in which it fits completely

2)
.text: { *(.text) } >> FLASHC| FLASHD

i am using F28035 based Piccolo F2803x ControlCard & Docking Station USB-EMU. After writing the code, it works perfect. But after power reset, it does not work. It indicates that the program is not running from flash. Please help me to solve this.

SECTIONS

{

/* Allocate program areas: */
.cinit : > FLASHA PAGE = 0
.pinit : > FLASHA PAGE = 0
// .text : > FLASHA PAGE = 0
.text : >> FLASHA | FLASHC| FLASHD| FLASHE, PAGE = 0 // to allocate as a whole into the first memory range in which it fits completely
//.text: { *(.text) } >> FLASHE| FLASHH

codestart : > BEGIN PAGE = 0
ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_SIZE(_RamfuncsLoadSize),
RUN_START(_RamfuncsRunStart),
PAGE = 0