All Projects → neykov → Armboot

neykov / Armboot

Rust language testbed project for porting to STM32F4xx ARM microcontrollers.

Programming Languages

c
50402 projects - #5 most used programming language

armboot

A testbed project used for porting the Rust language to bare metal STM32F4xx ARM microcontrollers. Tested on STM32F4DISCOVERY.

The project resulted in patches to the Rust compiler and eventually to LLVM to add support for segmented stacks to the platform.

The current version supports only static memory allocation and no stack pointer safety checks.

Requirements:

  • arm-none-eabi toolchain
  • llvm-3.6 (nightly) toolchain
  • rustc (requires Rust 1.0.0-alpha2)

Compiling:

Edit "Makefile" with the path to the rustc compiler and type "make".

Upload the resulting binary (one of blinky.{elf, bin, hex}) on the target.

Structure

  • main.rs - sample program (blinks the red led of the STM32F4DISCOVERY board)
  • libarm/ - microcontroller related definitions
  • sys/ - bootstrap code (boot loader and system initialization)
  • zero/ - zero.rs and additional C stubs

Credits

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].