Crate rtic[][src]

Real-Time Interrupt-driven Concurrency (RTIC) framework for ARM Cortex-M microcontrollers

HEADS UP This is an beta pre-release; there may be breaking changes in the API and semantics before a proper release is made.

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

The user level documentation can be found here.

Don’t forget to check the documentation of the #[app] attribute (listed under the reexports section), which is the main component of the framework.

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.

Re-exports

pub use rtic_monotonic;
pub use rtic_monotonic::embedded_time as time;

Modules

mutex_prelude

Makes locks work on N-tuples, locks the mutexes from left-to-right in the tuple. These are used to reduce rightward drift in code and to help make intentions clearer.

Structs

Exclusive

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

Traits

Monotonic

A monotonic clock / counter definition.

Mutex

Memory safe access to shared resources

Functions

pend

Sets the given interrupt as pending

Attribute Macros

app

Attribute used to declare a RTIC application