Figure 11. Go Command: Host Side - ST STM32F105 Series Application Note

System memory boot mode
Hide thumbs Also See for STM32F105 Series:
Table of Contents

Advertisement

USART bootloader
When the address is valid and the checksum is correct, the program counter of the CPU
automatically jumps to the address.

Figure 11. Go command: host side

Note:
1
Valid addresses are RAM (starting from 0x2000 1000 to the end of the RAM) or Flash
memory (starting from 0x800 0000 to the end of the Flash memory) addresses. All other
addresses are considered not valid and will be NACKed by the device.
2
When an application is loaded into RAM and then a jump is made to it, the program must be
configured to run with an offset of at least 0x1000 to avoid overlapping with the first 0x1000
RAM memory used by the bootloader firmware.
3
The Go command must be used after loading an application into RAM or user Flash
memory. It will initialize the main stack pointer and jump to the loaded code.
4
The Jump to the application works only if the user application sets the vector table correctly
to point to the application address.
5
When performing a jump from the Bootloader to a loaded application code which uses the
USB IP, the user application has to disable all pending USB interrupts and reset the core
before enabling interrupts. Otherwise, a pending interrupt (issued from the bootloader code)
may interfere with the user code and cause a functional failure. This procedure is not
needed after exiting system memory boot mode.
24/83
Start Go
Send 0x21+0xDE
Wait for ACK
or NACK
ACK
Send the start address (4 bytes) &
checksum
Wait for ACK
or NACK
ACK
End of Go
Doc ID 14156 Rev 1
NACK
NACK
ai14639
AN2662

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Stm32f107 series

Table of Contents