AN2662
Figure 12. Go command: device side
The host sends the bytes as follow to the STM32F105xx and STM32F107xx :
Byte 1:
Byte 2:
Byte 3 to Byte 6: start address
Byte 7:
2.11
Write Memory command
The Write Memory command is used to write data to any memory address of RAM starting
from 0x2000 1000, Flash memory, or Option byte area. Refer to the STM32F10xxx Flash
programming manual (PM0042). When the bootloader receives the Write Memory
command, it transmits the ACK byte to the user. After the transmission of the ACK byte, the
bootloader waits for an address (4 bytes, byte 1 is the address MSB and byte 4 is the LSB)
and a checksum byte, it then checks the received address. For the Option byte area, the
Start Go
Received bytes =
0x21+0xDE?
ROP active
Send ACK byte
Receive the start address (4 bytes) &
checksum
Send ACK byte
Address valid &
checksum OK?
Send ACK byte
Jump to address
0x21
0xDE
Wait for ACK
byte3: MSB
byte6: LSB
checksum: XOR (byte 3, byte 4, byte 5, byte 6)
Doc ID 14156 Rev 1
No
Yes
Yes
No
No
Send NACK byte
USART bootloader
End of Go
ai14640b
25/83
Need help?
Do you have a question about the STM32F105 Series and is the answer not in the manual?
Questions and answers