Skip to content

Latest commit

 

History

History
42 lines (27 loc) · 1.81 KB

File metadata and controls

42 lines (27 loc) · 1.81 KB

FreeRTOS Workspace

Crates.io

This project is based on code from freertos.rs and FreeRTOS-rust and some additions to simplify the usage of FreeRTOS in embedded applications written in Rust.

Crate sub projects:

  • freertos The runtime dependency for you FreeRTOS Rust application.
  • freertos-build A tool to build the FreeRTOS-Kernel.

How it works

The freertos-build build-dependency compiles the FreeRTOS code from its original "C" sources files into an archive to be linked against your Rust app. Internally it uses the cc crate and some meta info provided by your apps build.rs: A path to the app specific FreeRTOSConfig.h. You can copy one from examples.

The freertos dependency provides an interface to access all FreeRTOS functionality from your (embedded) Rust app.

Usage

See freertos README

Examples

stm32f1-FreeRTOS-example is a more complete example for STM32F1.

And there are some simple examples in freertos-rust-examples for:

  • Cortex M33 (nRF9160)
  • Cortex M3 (STM32F103C8)
  • Cortex M4 (STM32F411CE)
  • Windows
  • Linux

License

This repository is using the MIT License. Some parts might state different licenses that need to be respected when used.

🔖 Keywords

freertos · rtos · rust · embedded · embedded-hal · no-std · scheduler · multitasking · bindings · wrapper