Getting Started with FreeRTOS – Task Management

Getting Started with FreeRTOS - Task Management

Scan to FollowLearn Embedded Together, learn and grow together This series of articles on FreeRTOS aims to help beginners quickly get started and master the basic principles and usage methods of FreeRTOS while organizing knowledge. Getting Started with FreeRTOS – Exploring the System The official Chinese version of the FreeRTOS website is now online! FreeRTOS … Read more

Understanding the Timer Module in FreeRTOS

Understanding the Timer Module in FreeRTOS

Introduction:In modern embedded systems, timers are one of the core components for task scheduling, event triggering, and resource management. However, hardware timer resources are limited, making it difficult to meet the diverse timing requirements in complex application scenarios.The software timer module in FreeRTOS is a key component in real-time systems. By utilizing virtualization technology, it … Read more

An In-Depth Explanation and Practical Applications of FreeRTOS Queues

An In-Depth Explanation and Practical Applications of FreeRTOS Queues

An In-Depth Explanation and Practical Applications of FreeRTOS Queues What is a Queue? Imagine you are in line to buy ice cream. The first person is at the front of the line, and the first person to finish buying ice cream will leave the queue, followed by the second person, and so on. If you … Read more

FreeRTOS: Save Memory and Speed Up by Ten Times with Task Notification Mechanism!

FreeRTOS: Save Memory and Speed Up by Ten Times with Task Notification Mechanism!

1. Basic Concepts In FreeRTOS, there is an efficient and lightweight inter-task communication mechanism: <span>Task Notification</span>. This mechanism is used in FreeRTOS to implement unidirectional communication, event flags, counting semaphores, binary semaphores, and message passing. The message notification mechanism in FreeRTOS can also be referred to as “Direct to Task Notifications”. Each task (<span>TaskHandle_t</span>) has … Read more

FreeRTOS Development: Message Buffer – An Advanced Choice for Task Communication

FreeRTOS Development: Message Buffer - An Advanced Choice for Task Communication

1. Basic Concepts In FreeRTOS, the “message buffer” refers to <span>Message Buffer</span>, which is a communication mechanism provided by FreeRTOS for transmitting variable-length data (byte streams) between tasks or between interrupts and tasks. It is part of FreeRTOS and was officially introduced in version <span>v10.0.0</span>. Simply put, a message buffer (Message Buffer) is equivalent to … Read more

Priority Inversion Problem in FreeRTOS

Priority Inversion Problem in FreeRTOS

Priority inversion in FreeRTOS occurs when a high-priority task is blocked while waiting for resources (such as a mutex) held by a low-priority task, allowing a medium-priority task to execute in the meantime, which leads to scheduling anomalies where the high-priority task cannot run in a timely manner. Scenario Example: Task Priorities: There are three … Read more

Learning FreeRTOS: Mutex Semaphores

Learning FreeRTOS: Mutex Semaphores

Scan to followLearn Embedded Together, learn and grow together A mutex semaphore (Mutex, short for Mutual Exclusion) is a special type of binary semaphore in FreeRTOS, specifically designed for implementing mutual access to resources. Compared to ordinary semaphores, mutex semaphores have the following key characteristics: Ownership Concept: Only the task that takes the mutex can … Read more

A Step-by-Step Guide to Developing a Multitasking Project Based on FreeRTOS

A Step-by-Step Guide to Developing a Multitasking Project Based on FreeRTOS

Source | Embedded Software GuesthouseFreeRTOS is currently the most commonly used RTOS, yet many beginners find it difficult to get started. Today, we willprovide a step-by-step guide on how to develop a multitasking project based on FreeRTOS. 1. FreeRTOS Multitasking Basic Architecture 1.1 Overview of Task Model As a lightweight real-time operating system, FreeRTOS’s core … Read more

In-Depth Analysis of Stream Buffers: A Powerful Tool for Real-Time Byte Stream Communication in FreeRTOS

In-Depth Analysis of Stream Buffers: A Powerful Tool for Real-Time Byte Stream Communication in FreeRTOS

1. Basic Concepts Stream buffers are a type of memory buffer specifically designed for FreeRTOS to transmit byte stream data. It is a FIFO (First In, First Out) buffer, but unlike message queues, stream buffers transmit data continuously in bytes rather than as discrete “messages”. Design Purpose To solve the problem of passing variable-length byte … Read more

Learning FreeRTOS: Counting Semaphores

Learning FreeRTOS: Counting Semaphores

Scan to followLearn Embedded Together, learn and grow together This is a series of introductory articles on FreeRTOS. While organizing my knowledge, I hope to help beginners quickly get started and master the basic principles and usage of FreeRTOS. Quick Start with FreeRTOS – Initial Exploration of the System The official Chinese version of the … Read more