2016-10-31 08:46 AM
Hi,
I want STM32L476 to jump to User program located at 0x80004000 if button is not pressed. Please check the flow chart as below; 1. I would like to know how can I remap the Vector table to RAM?2. What RAM address to use for Remaping Vector table and why?3. User program which will be stored at 0x8004000; need to have any specific build process to generate .hex/.bin files? i.e. is ther any configuration of Start address or initial clock to define before copile and build?Thanks regards #vector-table #in-app-programming2016-11-02 05:55 AM
You are not BUILDING the file for the 0x08004000 address, Keil doesn't naturally output .BIN files so you're performing some other steps to make them.
You need to BUILD the file for the right address, you've changed the source to account for the new address, but as I said earlier you need to get the LINKER to build the files for the target address. Go to the Project Options -> Target, and move the IROM base to 0x08004000 and shrink the size, so that the linker creates the .HEX at the correct address. To debug, suggest you go to the disassembly view and step-in If you want some mastery of this material review the existing threads and documentation, and the Cortex-M4 technical reference manual so understand the CPU and the Vector Table. The table does not contain code, it has addresses that point to code, indirectly.2016-11-03 01:58 AM
Hi Clive!
Brilliant!It works now.Great help!Really aprreciate it.Regards