Crate rtfm

source · []
Expand description

Real Time For the Masses (RTFM) framework for ARM Cortex-M microcontrollers

IMPORTANT: This crate is published as cortex-m-rtfm on but the name of the library is rtfm.

The user level documentation can be found here.

Don’t forget to check the documentation of the [#[app]] attribute, which is the main component of the framework.

[#[app]]: ../cortex_m_rtfm_macros/

Minimum Supported Rust Version (MSRV)

This crate is guaranteed to compile on stable Rust 1.36 (2018 edition) and up. It might compile on older versions but that may change in any new patch release.

Semantic Versioning

Like the Rust project, this crate adheres to SemVer: breaking changes in the API and semantics require a semver bump (a new minor version release), with the exception of breaking changes that fix soundness issues – those are considered bug fixes and can be landed in a new patch release.

Cargo features

  • timer-queue. This opt-in feature enables the schedule API which can be used to schedule tasks to run in the future. Also see Instant and Duration.
  • nightly. Enabling this opt-in feature makes RTFM internally use the unstable core::mem::MaybeUninit API and unstable const_fn language feature to reduce static memory usage, runtime overhead and initialization overhead. This feature requires a nightly compiler and may stop working at any time!


Newtype over &'a mut T that implements the Mutex trait

Core peripherals


Memory safe access to shared resources


Sets the given interrupt as pending

Attribute Macros

Attribute used to declare a RTFM application