#api #information #peripheral

no-std stm32l1

Device support crates for STM32L1 devices

21 releases (breaking)

0.15.1 Jul 4, 2022
0.14.0 Oct 3, 2021
0.13.0 Feb 15, 2021
0.12.1 Sep 22, 2020
0.2.2 Jul 11, 2018

#1918 in Embedded development

Used in 2 crates


217K SLoC


This crate provides an autogenerated API for access to STM32L1 peripherals. The API is generated using svd2rust with patched svd files containing extensive type-safe support. For more information please see the main repo.

Refer to the documentation for full details.


Each device supported by this crate is behind a feature gate so that you only compile the device(s) you want. To use, in your Cargo.toml:

version = "0.15.1"
features = ["stm32l100"]

The rt feature is enabled by default and brings in support for cortex-m-rt. To disable, specify default-features = false in Cargo.toml.

In your code:

use stm32l1::stm32l100;

let mut peripherals = stm32l100::Peripherals::take().unwrap();
let gpioa = &peripherals.GPIOA;
gpioa.odr.modify(|_, w| w.odr0().set_bit());

For full details on the autogenerated API, please see: https://docs.rs/svd2rust/0.24.1/svd2rust/#peripheral-api

Supported Devices

Module Devices Links
stm32l100 STM32L100 RM0038, st.com
stm32l151 STM32L151, STM32L152 RM0038, st.com
stm32l162 STM32L162 RM0038, st.com