FreeRTOS

STM32 FreeRTOS

close up photo of programming of codes
Photo by luis gomes on Pexels.com

STM32CubeIDE is an advanced C/C++ development platform with peripheral configuration, code generation, code compilation, linking, and debug features. It is based on the Eclipse®/CDT framework and GCC toolchain for the development, and GDB for the debugging. It allows the integration of the hundreds of existing plugins that complete the features of the Eclipse® IDE.

STM32CubeIDE integrates ST MCU Finder (ST-MCU-FINDER-PC) and STM32CubeMX functionalities to offer all-in-one tool experience. It makes it easy to create new STM32 MCU or board projects and build them using the included GCC toolchain.

STM32CubeIDE includes a build analyzer and a static stack analyzer that provide the user with useful information about project status and memory requirements.

STM32CubeIDE also includes standard and advanced debugging features including views of CPU core registers, memories, and peripheral registers, as well as live variable watch, and serial wire viewer interface. A fault analyzer displays error information if an error is triggered by the STM32 processor during a debug session.

FreeRTOS is a real-time kernel (or real-time scheduler) on top of which embedded
applications can be built to meet their hard real-time requirements. It allows applications to be
organized as a collection of independent threads of execution. On a processor that has only
one core, only a single thread can be executing at any one time. The kernel decides which
thread should be executing by examining the priority assigned to each thread by the
application designer. In the simplest case, the application designer could assign higher
priorities to threads that implement hard real-time requirements, and lower priorities to threads
that implement soft real-time requirements. This would ensure that hard real-time threads are
always executed ahead of soft real-time threads, but priority assignment decisions are not
always that simplistic.

List of blogs will help to understand implementation of FreeRTOS application using STM32CubeIDE

  1. STM32-Cube IDE-FreeRTOS Code Generation using CubeMx
  2. STM32-Cube IDE-FreeRTOS Memory Management
  3. STM32-Cube IDE- FreeRTOS Memory Management part 2.
  4. STM32-Cube IDE-FreeRTOS Tasks
  5. STM32-Cube IDE-FreeRTOS Intertask Communication Part – 1
  6. STM32-Cube IDE-FreeRTOS Intertask Communication Part – 2
%d bloggers like this: