ARM MDK 3.4: module / function startadress. I would like to have a flash programming function on a specified address (0xf000) from where the normal program can be updated. This would be a simplified approach for ISP. If something goes wrong, JTAG will solve this problem. I could not find a linker control which would allow this. I already searched forum, with no success.
Functionality: a) first installed program (0x0000..<0xf000) contains ISP function on 0xf000 b) updated program (0x0000..<0xf000) does not contain ISP function, only absolut call to it.
Thanks for any hints Werner
An alternative to scatterfiles is using the Keil IDE to place your flash programming function.
- Place the function in a separate file flash_prog.c
- Under project > Options for Target > Specify a memory range starting at 0xF000
- Under Project â€" Option for File/Group, set the memory area 0xF000 for flash_prog.c under Memory Assignment â€" Code/Const.
An similar thing is done here:
http://www.keil.com/support/docs/3195.htm
> An alternative to scatterfiles is using the Keil IDE > to place your flash programming function.
This changes the scatter file, too. It's just that the dialog hides the details from the user. Being a GUI option it is not quite as flexible as hand coding. For simple cases definitely easier to use. Thanks.
Regards Marcus http://www.doulos.com/arm/
thanks for your help. Using memory assignment in File / Group does work, and creates a sct file, where I see how it works. Somehow the default location except for startup becomes IROM2, so the standard group source and the libraries must be defined to belong to IROM1 otherwise they end up in the wrong place. Werner