All Projects → rubberduck203 → stm32f3-discovery

rubberduck203 / stm32f3-discovery

Licence: Apache-2.0, MIT licenses found Licenses found Apache-2.0 LICENSE-APACHE MIT LICENSE-MIT
Rust Board Support Package for the STM32F3DISCOVERY

Programming Languages

rust
11053 projects
GDB
78 projects

stm32f3-discovery

Board support package for the STM32F3DISCOVERY board.

Rust crates.io crates.io docs.rs

Dependencies

To build embedded programs using this you'll need:

  • Rust 1.51 or newer toolchain
  • rust-std components (pre-compiled core crate) for the ARM Cortex-M target.
$ cargo install cargo-generate
$ rustup target add thumbv7em-none-eabihf

For more info on working with embedded Rust, see the Embedded Rust Book and the Discovery Book.

Documentation

https://docs.rs/stm32f3-discovery

For the board specific functionality this crate adds, see:

VS Code

This repository includes launch configurations for debugging CortexM programs with Visual Studio Code in the .vscode/ directory.
See .vscode/README.md for more information.

To debug one of the examples, open the example source file in the editor and press F5.

License

This template is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Changelog

Unreleased

  • Bump HAL to 0.8.0 for getting back MonoTimer which was accidentially droped with release 0.6.1 and came back with the latest release.

0.7.2

Implements the Accelerometer trait from the Accelerometer crate.

0.7.1

  • Implements an Iterator for the Leds struct and introduced the Leds::iter_mut() method.

    Testing shows that direct iteration over the leds using Leds::iter_mut() can save up to 800 bytes off the size of the final binary over the old Leds::into_array() method.

    See: #41

  • Adds the ability to obtain a mutable reference to a led based on it's compass direction on the board.

    See: Leds::for_direction()

    Contributed by Christian Meusel

0.7.0

Updates stm32f3xx-hal to 0.7.0. Since we re-export the stm32f3xx-hal, any breaking changes in their API are also breaking changes in ours. For details see the stm32f3xx-hal changelog

Although the minimum Rust version is technically still 1.49, because of changes to embedded_time, the minimum version of Cargo is now 1.51, so we're updating our MSRV to 1.51.

0.6.1

Update cortex-m, cortex-m-rt, and switch-hal dependencies.

0.6.0

Update stm32f3xx-hal version.
stm32f3xx-hal had breaking changes.
Since we re-export the HAL, that means we also had breaking changes.

For details, see the stm32f3xx-hal changelog.

0.5.0

  • Updated dependencies
  • InputSwitch for UserButton now has an Error type of core::convert::Infallible instead of ()

0.4.0

  • Updated stm32f3xx-hal from 0.4.0 to 0.4.1
  • Allows setting TriggerMode on the user button (breaking change)
  • Removes deprecated GpioE struct and Leds::init function

0.3.4

  • Introduced Compass struct and implemented Accelerometer trait.
  • Add Leds::new function and deprecate Leds::init.

0.3.3

  • Add wait_for_interrupt function
  • Upgrade switch-hal version

0.3.2

  • Re-export lsm303dhlc driver
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].