i have written a bootloader for starting / exchanging Apllication, my µC is STM32F103RB, working with Keil uVision5.
The bootloader resides in the first 16k of Flash actually. but i want it to run in RAM to be able to exchange itself.
I tried several ways, but my my actual plan is to compile the Project for RAM, shifting the RAM Data behind the code etc.
But what i didn't found yet:
->how can i tell the uVision linker to put the reset-vector in Flash at adress [0x08000101] (it has to copy the code to RAM at startup) and the rest of the vectors in RAM?
Thanks for any hints!
To Close this:
The only straight way i foud was to compile the whole BL for RAM and use a second (very small) program to copy it to RAM and execute it there.
It works fine in the first tests.