Skip to content
Snippets Groups Projects
Select Git revision
  • 158bfaa07d11416d82500c506abfc1447e666857
  • master default protected
2 results

f4

f4

Board Support Crate for the NUCLEO-F411RE

d7018e - special studies in embedded systems

Name : Johannes Sjölund
Mail : johsjl-1@student.ltu.se
Personal number: 8506298978
Nucleo 64 support crate

Grading

  1. Implement drivers for the Nucleo 64, stm32f401re/stm32f411re, similar to the f3/bluepill support crates. Most or all of the peripherals should be supported in some basic configuration
  • GPIO
  • UART over USB using the ST-Link v2
  • DMA
  • Timers with configurations
    • Microsecond counter
    • PWM generation
    • Encoder mode
  • SPI
  • I²C

The peripheral pin configuration should match the standard Arduino headers.

  1. The stm32f4 supports higher clock frequency than the default 16 MHz. Implement a simple way of setting it to the maximum of 84 MHz for the stm32f401re and 100 MHz for the stm32f411re, or any valid lower value (configured using the PLL).

  2. Create a demo using the RTFM core and some external peripheral such as an IMU or Bluetooth device. The demo should show how to use the RTFM core for safe concurrency and demonstrate different peripherals such as GPIO, USART, DMA, SPI etc.

Documentation

F3 Rust support crate

Blue-pill Rust support crate

Nucleo 64 Manual

STM32F411 Datasheet

STM32F411 Reference Manual

Nucleo F411RE pins

Nucleo F411RE morpho pins

License

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.