Microcontroller: STM32G474Vxx, F407xx, H753xx, F767xx, H755xx, etc
Software: STM32CubeIDE, STM32CubeMX, STM32CubeProgrammer
Library: Bare-Metal Programming (LL), CMSIS, HAL
Debugger: STLINK-V3SET
FreeRTOS is an open-source real-time operating system (RTOS) designed for embedded devices, known for its simplicity, small footprint, and real-time capabilities. It provides a lightweight kernel that allows for task scheduling, inter-task communication, and resource management in embedded systems.
- LL, CMSIS, HAL
- System Clock, Timer Interrupt, SysTick
- GPIO Write/GPIO Read with Polling or External Interrupt
- ADC with Polling, ISR, DMA, Timer Trigger, Analog Watchdog, Injected
- DMA Interface/Memory to Memory
- UART Transmit/Receive with/without Interrupt, DMA
- SPI Transmit/Receive with/without Polling, Interrupt, DMA
- I2C Transmit/Receive with/without Polling, Interrupt, DMA
- CAN Transmit/Receive with/without Polling, Interrupt, DMA
- CAN-FD Transmit/Receive with/without Polling, Interrupt, DMA
- Real Time Clock (RTC) Interface
- Ethernet with/without Polling, Interrupt, DMA, LwIP, HTTPD, SSI, CGI
- CMSIS DPS Software Library
The FreeRTOS Reference Manual
Mastering the FreeRTOS Real-Time Kernel
- Task (Creation, Parameters, Priority, Suspend, Resume, Terminate, Block, Idle Task)
- List (Creation, Insertion, Delete)
- Queue (Creation, Send/Receive Data, Queue Set, Gatekeep Task, w/wo ISR)
- Semaphore (Binary Semaphore, Counting Semaphore, Mutex, w/wo ISR)
- Timer (One-shot Timer, Auto-reload Timer)
- Event Groups (Event Bits, Multiple Setters, Task Synchronization)
- Notifications (Task Notification)
- Scheduler (Preemption, Time Slicing)
STM32F4 Discovery Pinout
STM32F407 Block Diagram
STM32F407 Clock Tree
STM32F407 Memory Mapping
STM32F407 Vector Table
STM32F407 DMA Request Mapping
STM32F407 Alternate Function Mapping
STM32F4 HAL and Low Layer Drivers
STM32F407 Datasheet
STM32F407 Reference Manual
RTC and TAMP with STM32 MCUs
Cortex-M4 Devices Generic User Guide
Nucleo F767ZI Pinout
Nucleo F767ZI Schematic
STM32F767xx Block Diagram
STM32F767 Clock Tree
STM32F767 Vector Table
STM32F767 DMA Request Mapping
STM32F767 Alternate Function Mapping
STM32F7 HAL and Low Layer Drivers
STM32F767xx Datasheet
STM32F767xx Reference Manual
STM32H753xI Block Diagram
STM32H753xI Datasheet
STM32H753xI Reference Manual
A suite of common signal processing functions for use on Cortex-M and Cortex-A processor based devices. The library is released in source form. It is strongly advised to compile the library using -Ofast to have the best performances. The library functions are declared in the public file arm_math.h which is placed in the Include folder.
- Basic math functions
- Fast math functions
- Complex math functions
- Filtering functions
- Matrix functions
- Transform functions
- Motor control functions
- Statistical functions
- Support functions
- Interpolation functions
- Support Vector Machine functions (SVM)
- Bayes classifier functions
- Distance functions
- Quaternion functions

Back to top of the page