STMicroelectronics STM32 F101xx, F102xx, F103xx, F105xx, F107xx, F100xx, L151xx, L152xx microcontroller Application note

STM32 STM32F101xx, STM32 STM32F102xx, STM32 STM32F103xx, STM32 STM32F105xx, STM32 STM32F107xx, STM32 STM32F100xx, STM32 STM32L151xx, STM32 STM32L152xx are ARM-based microcontrollers that offer a range of features and capabilities for a variety of embedded applications.

PDF Download
Document
STM32 STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx, STM32F107xx, STM32F100xx, STM32L151xx, STM32L152xx Application note | Manualzz

Advertisement

Advertisement

Advertisement

Key features

  • System memory boot mode
  • Bootloader activation
  • Exiting system memory boot mode
  • Bootloader identification
  • Dual bank boot feature
  • Bootloader configuration
  • Bootloader hardware requirements
  • Bootloader selection
  • Bootloader version

Frequently asked questions

The bootloader is a small program stored in the internal boot ROM memory (system memory) of STM32 devices. It is programmed by ST during production. The bootloader's main task is to download the application program to the internal Flash memory through one of the available serial peripherals (USART, CAN, USB, etc.). A communication protocol is defined for each serial interface, with a compatible command set and sequences.

The bootloader is automatically activated by configuring the BOOT0 and BOOT1 pins in the specific "System memory" configuration and then by applying a reset. Depending on the used pin configuration, the Flash memory, system memory or SRAM is selected as the boot space.

System memory boot mode must be exited in order to start execution of the application program. This can be done by applying a hardware reset. During reset, the BOOT pins (BOOT0 and BOOT1) must be set at the proper levels to select the desired boot mode. Following the reset, the CPU starts code execution from the boot memory located at the bottom of the memory address space starting from 0x0000 0000.

Depending on the used STM32 device, the bootloader may support one or more embedded serial peripherals used to download the code to the internal Flash memory. The bootloader identifier (ID) provides information about the supported serial peripherals.

For STM32F101xx and STM32F103xx XL-density devices (these devices have two Flash memory banks: Bank 1 and Bank 2), an additional boot mechanism is available which allows booting from Bank 2 or Bank 1 (depending on the BFB2 bit status (bit 19 in the user option bytes @ 0x1FFFF800)).
Preparing document for printing…
0%