This repository contains a customized bootloader for STM32F446RE microcontrollers. The bootloader provides a reliable and efficient method for updating and enhancing firmware on the microcontroller using the USART communication protocol.
- USART communication protocol: The bootloader leverages the USART protocol for seamless communication between the microcontroller and the host device, enabling firmware updates and enhancements.
- Customization: The bootloader has been tailored specifically for the STM32F446RE microcontroller, ensuring optimal performance and compatibility.
- Firmware Updates: The bootloader enables users to update the firmware of the microcontroller, allowing for bug fixes, new features, and improved functionality.
To get started with the bootloader, follow these steps:
- Hardware Setup: Ensure that the STM32F446RE microcontroller is properly connected to the host device via USART.
- Flash the Bootloader: Use a suitable tool or IDE to flash the bootloader onto the microcontroller.
- Host Device Configuration: Configure the host device to establish a USART connection with the microcontroller.
- UserApp Mode: Make sure that user button is pressed to jump into user application.
The bootloader supports the following commands:
- Get Bootloader's version:
BL_GET_VER
- Get help:
BL_GET_HLP
- Get Chip ID:
BL_GET_CID
- Get RDP status:
BL_GET_RDP_STATUS
- Go to a desired address:
BL_GO_TO_ADDR
- Flash erase (desired sectors/ mass erase):
BL_FLASH_ERASE
- Write in a desired address memory:
BL_MEM_WRITE
- Enable RW protection on sectors:
BL_MEM_RW_PROTECT
- Disable RW protection on sectors:
BL_DIS_RW_PROTECT
- Get sectors' protection status:
BL_READ_SECTOR_STATUS
Contributions to this project are welcome! If you encounter any bugs, have suggestions for improvements, or would like to contribute new features, please feel free to submit a pull request or open an issue.