rubberduck203 / stm32f3-discovery Goto Github PK
View Code? Open in Web Editor NEWRust Board Support Package for the STM32F3DISCOVERY
License: Apache License 2.0
Rust Board Support Package for the STM32F3DISCOVERY
License: Apache License 2.0
Currently, the button interrupt is configured to only trigger on rising edge.
Allow other configurations.
stm32f3-discovery/src/button/interrupt.rs
Line 42 in 33db991
Instead of taking ownership of the entire GPIOE
port and returning a new struct that only has the pins that aren't owned by the Leds
struct, just give the Leds
ctor the pins it's needs.
Also, change init
to new
for consistency with the other periphs.
There are 8 user leds on board, LD3-LD10, arranged in a "compass".
Provide
LED
trait with on
and off
functionsHello! I'm wondering if you have an example of how to setup SPI.
The feather_m0 board that I've used previously has a helper for setting up the master. Maybe something similar could be added here. https://docs.rs/feather_m0/0.6.1/feather_m0/fn.spi_master.html
There is a L3GD20
gyroscope on board.
Provide access to this peripheral.
Hi!
I'm learning embedded rust and currently trying to control the compass leds of the STM32F3 discovery board using the magnetometer data. I was able to setup everything and I get logs from the accelerometer, but not from the magnetometer.
I used the example code from examples/compass.rs
and I'm running rust 1.53.0
. Any ideas on what I might be overlooking?
Accel:I16x3 { x: -128, y: -896, z: 16512 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Accel:I16x3 { x: -320, y: -704, z: 16512 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Accel:I16x3 { x: -192, y: -576, z: 16448 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Accel:I16x3 { x: -128, y: -768, z: 16512 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Accel:I16x3 { x: -256, y: -704, z: 16384 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Accel:I16x3 { x: -320, y: -768, z: 16512 }; Mag:I16x3 { x: 0, y: 0, z: 0 }
Thanks!
The board has one user button. Provide access and abstraction to this.
It's connected to PA0
There is a LSM303DLHC
e-compass on board.
Provide access to this peripheral.
This periph also has an accelerometer.
Consider implementing the accelerometer trait.
How do you think would it be helpful for newcomers to note in this repo or may be in discovery book about easiest way to try examples with discovery board:
cargo install cargo-flash
cargo flash --chip stm32f3 --example leds --connect-under-reset
I think it can help newcomers to to start as quick as they type only 3 commands.
Much like was done for with the button::hal
, allow users to create their own LEDs from externally wired sources.
stm32f3-discovery/src/button/hal.rs
Lines 1 to 46 in d68ba0b
Lines 5 to 9 in d68ba0b
PR #36 updated the stm32fx hal.
There were breaking changes and since we re-export the hal, we also have breaking changes.
Release new version with release notes documenting the breaking change.
I had 2 problems with the examples which required non-obvious fixes.
interrupt::enable and interrupt::clear are currently hard coded to work only for the user button.
Allow these to work for any interrupt the user may want to use on the board.
Also, add UserButton.interrupt_enable()
and UserButton.interrupt_clear()
methods?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.