2017-07-22 04:03 AM
Hi
STM32L073RZ supports dual bank mechanism. Dual-bank boot capability allowing to boot either from Bank 1 or Bank 2 at startup based on BOOT pins. However, I need to jump to system boot loader from user flash using simple address based mechanism to allow the user to upgrade new code on to flash memory.
Configuration
BOOT0 pin tied to 0
Using BANK 1 flash memory
Issue
On jumping to system memory from BANK 1 Flash, control (PC) returns to BANK1 flash start address as code BANK1 code is not valid. But I wanted to control to stay in system bootloader to upgrade flash memory
Is there any way to jump to system boot loader from BANK1 user flash?
#stm32l073 #stm32lo #dual-bank #system-bootloader #bootloader-rom2017-11-23 06:33 AM
What does the reference manual tell about that situation?
2017-11-23 10:59 PM
Looking at the
https://community.st.com/servlet/JiveServlet/showImage/2-163506-19288/Capture.JPG
from one of the comments above, I have made a truth table of BOOT0 state, Validity of Bank1 code and validity of Bank2 code. I have come to the conclusion that code from Bank2 will be executed if it is valid regardless of BOOT0 state. Code from Bank1 will be executed only if there is no code in Bank2.