Expand description
Flash programming operations.
This modules provides a means to do flash unlocking, erasing and programming.
It provides a convenient high level interface that can flash an ELF, IHEX or BIN file as well as a lower level block based interface.
§Examples
§Flashing a binary
The easiest way to flash a binary is using the download_file
function,
and looks like this:
use probe_rs::{Session, flashing, Permissions};
let mut session = Session::auto_attach("nrf51822", Permissions::default())?;
flashing::download_file(&mut session, "binary.hex", flashing::Format::Hex)?;
§Adding data manually
use probe_rs::{Session, flashing::{FlashLoader, DownloadOptions}, Permissions};
let mut session = Session::auto_attach("nrf51822", Permissions::default())?;
let mut loader = session.target().flash_loader();
loader.add_data(0x1000_0000, &[0x1, 0x2, 0x3])?;
// Finally, the data can be programmed:
loader.commit(&mut session, DownloadOptions::default())?;
Structs§
- Extended options for flashing a binary file.
- Options for downloading a file onto a target chip.
- A flash algorithm, which has been assembled for a specific chip.
- A block of data that is to be written to flash.
- A struct to hold all the information about one region in the flash that is erased during flashing and has to be restored to its original value afterwards.
- The built layout of the data in flash.
FlashLoader
is a struct which manages the flashing of any chunks of data onto any sections of flash.- The description of a page in flash.
- A structure to manage the flashing procedure progress reporting.
- The description of a sector in flash.
- A structure which can be used to visualize the built contents of a flash.
- Extended options for flashing a ESP-IDF format file.
Enums§
- Current boot information
- A finite list of all the errors that can occur when flashing a given file.
- Describes any error that happened during the or in preparation for the flashing procedure.
- A finite list of all the available binary formats probe-rs understands.
- A finite list of all the available binary formats probe-rs understands.
- Possible events during the flashing process.
Traits§
- Load and parse a firmware in a particular format, and add it to the flash loader.
- Helper trait for object safety.
Functions§
- Builds a new flash loader for the given target and path. This will check the path for validity and check what pages have to be flashed etc.
- Downloads a file of given
format
atpath
to the flash of the target given insession
. - Downloads a file of given
format
atpath
to the flash of the target given insession
. - Mass-erase all nonvolatile memory.
- Erases
sectors
sectors starting fromstart_sector
from flash.