I would like to run my program from the SRAM region of the device.
It seemed quite clear to me, that I have to perform following steps:
- Modify the vector table offset register
SCB->VTOR
(located at0xE000ED08
) to point to the beginning of the SRAM region, as that is where my vector table is located:0x20000000
- Reset the device so it fetches the stack pointer initialization value and the reset handler adress again.
Unfortunately, whenever I issue a reset init
command in OpenOCD, the value of SCB->VTOR
gets cleared. Hence, stack pointer initialization value and reset handler adress are fetched from 0x00000000
instead of 0x20000000
.
Question
How do I get my STM32F4 to fetch the vector table from 0x20000000
?