Difference between revisions of "DFU Bootloader"

From Stm32World Wiki
Jump to navigation Jump to search
Line 13: Line 13:
 
| End
 
| End
 
| -->
 
| -->
| 0x808000
+
| 0x8080000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 19: Line 19:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x8078000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 25: Line 25:
 
|
 
|
 
|
 
|
| 0x807000
+
| 0x8070000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 31: Line 31:
 
|
 
|
 
|
 
|
| 0x806800
+
| 0x8068000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 37: Line 37:
 
|
 
|
 
|
 
|
| 0x806800
+
| 0x8060000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 43: Line 43:
 
|
 
|
 
|
 
|
| 0x805800
+
| 0x8058000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 49: Line 49:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x8050000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 55: Line 55:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x8048000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 61: Line 61:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x8048000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 67: Line 67:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x80400000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB
Line 73: Line 73:
 
|
 
|
 
|
 
|
| 0x807800
+
| 0x8078000
 
| 0x8000
 
| 0x8000
 
| 32kB
 
| 32kB

Revision as of 04:06, 31 May 2021

All STM32 MCUs have a built-in bootloader which will allow reflashing. The Boot0 pin is used to toggle between "normal" boot and this bootloader. Unfortunately this process can not be controlled without manipulating the Boot0 pin, so if we want to control this from our application, we will have to implement our own bootloader.

Overall Architecture

Address Size (hex) Size (kb)
End --> 0x8080000 0x8000 32kB
0x8078000 0x8000 32kB
0x8070000 0x8000 32kB
0x8068000 0x8000 32kB
0x8060000 0x8000 32kB
0x8058000 0x8000 32kB
0x8050000 0x8000 32kB
0x8048000 0x8000 32kB
0x8048000 0x8000 32kB
0x80400000 0x8000 32kB
0x8078000 0x8000 32kB

Bootloader

Application

Miscellaneous Links