embassy/examples/boot/application/stm32f7
Dario Nieuwenhuis d3c4e4a20a executor: add Pender, rework Cargo features.
This introduces a `Pender` struct with enum cases for thread-mode, interrupt-mode and
custom callback executors. This avoids calls through function pointers when using only
the thread or interrupt executors. Faster, and friendlier to `cargo-call-stack`.

`embassy-executor` now has `arch-xxx` Cargo features to select the arch and to enable
the builtin executors (thread and interrupt).
2023-04-03 03:09:11 +02:00
..
.cargo Move bootloader main to examples 2022-06-24 19:56:15 +02:00
src/bin Remove flash lock/unlock public API from stm32 flash, and perform the unlocking and locking automatically on erase and write operations 2022-09-30 06:00:46 +02:00
build.rs Move bootloader main to examples 2022-06-24 19:56:15 +02:00
Cargo.toml executor: add Pender, rework Cargo features. 2023-04-03 03:09:11 +02:00
flash-boot.sh Move bootloader main to examples 2022-06-24 19:56:15 +02:00
memory-bl.x Fix RAM origin copy paste from nrf 2022-06-29 19:14:07 +02:00
memory.x Move bootloader main to examples 2022-06-24 19:56:15 +02:00
README.md Move bootloader main to examples 2022-06-24 19:56:15 +02:00

Examples using bootloader

Example for STM32F7 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
./flash-boot.sh
# 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 STM32F767ZITx