8a9136e4e4
inline assembly is supported since rust 1.59, we're way past that. enabling this makes the compiled code more compact, and on rp2040 even decreses memory usage by not needing thunks in sram. |
||
---|---|---|
.. | ||
.cargo | ||
src/bin | ||
build.rs | ||
Cargo.toml | ||
memory.x | ||
README.md |
Examples using bootloader
Example for STM32F3 demonstrating the bootloader. The example consists of application binaries, 'a' which allows you to press a button to start the DFU process, and 'b' which is the updated application.
Prerequisites
cargo-binutils
cargo-flash
embassy-boot-stm32
Usage
# Flash bootloader
cargo flash --manifest-path ../../bootloader/stm32/Cargo.toml --release --features embassy-stm32/stm32f303re --chip STM32F303RETx
# Build 'b'
cargo build --release --bin b
# Generate binary for 'b'
cargo objcopy --release --bin b -- -O binary b.bin
Flash a
(which includes b.bin)
cargo flash --release --bin a --chip STM32F303RETx