ESP32-FreeRTOS: A Comprehensive Collection of FreeRTOS Examples for Reference and Learning

ESP32-FreeRTOS is a set of open-source example codes that awaken the fun features of the ESP32, such as multitasking, timers, events, and semaphores, making it easier and more reliable for you to write IoT applications. What Can It Help You Do Don’t be fooled by the ESP32’s built-in Wi-Fi/Bluetooth; using bare-metal programming for complex projects … Read more

Introduction to FreeRTOS on STM32

When working on STM32 or other microcontroller projects, you often hear others say: “This project uses FreeRTOS.” What exactly is FreeRTOS? What benefits does it bring us? This article will provide a brief introduction to FreeRTOS. 1. What is FreeRTOS? Let’s break down the name👇 Free → Free of charge RTOS → Real-Time Operating System … Read more

FreeRTOS Source Code Analysis – Implementation of Linked Lists

FreeRTOS Source Code Analysis – Implementation of Linked Lists In the previous chapter, Embedded Operating System: FreeRTOS Source Code Analysis Part Three – Task Startup and Switching, we officially started tasks. In FreeRTOS, tasks can also be referred to as threads. Next, we will introduce inter-thread synchronization mechanisms (semaphores, mutexes, event groups, etc.) and inter-thread … Read more

In-Depth Explanation of FreeRTOS Task Management: Task Creation and Deletion

In-Depth Explanation of FreeRTOS Task Management: Task Creation and Deletion This article will take you deep into understanding the mechanisms of task creation and deletion in FreeRTOS, from the usage of API functions to the internal implementation principles, allowing you to easily master the core knowledge of task management! 📌 Introduction In FreeRTOS, tasks are … Read more

From RT-Thread to FreeRTOS: Why I Decided to Start a New Learning Journey

From RT-Thread to FreeRTOS: Why I Decided to Start a New Learning Journey Hello everyone! Recently, many friends have asked me: “Haven’t you already learned RT-Thread? Why do you want to learn FreeRTOS?” Today, I want to discuss this topic and also announce that I will be updating my FreeRTOS learning notes from time to … Read more

FreeRTOS Source Code Analysis: Task Startup and Switching

FreeRTOS Source Code Analysis – Task Startup and Switching In the previous article, “Embedded Operating Systems: FreeRTOS Source Code Analysis Part Two – Task Creation,” we analyzed how tasks are created and added to the linked list. Now, we return to SVC 0, and after calling this statement, the first task will officially start.In this … Read more

Technological Stacks Supporting Embedded Development

The embedded development framework serves as a bridge connecting hardware abstraction and business logic, making it more important to grasp its design principles than to memorize specific APIs. Embedded Development Framework System Layered Architecture Design Embedded systems adopt a layered architecture design, with each layer having clear responsibility boundaries: Application Layer Middleware Layer OS Layer … Read more

Detailed Explanation of FreeRTOS Configuration File

Detailed Explanation of FreeRTOS Configuration File —— Understanding freertos_config.h from Scratch As one of the most popular real-time operating systems in the embedded field, FreeRTOS’s core configuration file<span>FreeRTOSConfig.h</span> acts like the “control panel” of the system. This article will guide you through this configuration file line by line, allowing you to truly understand the meaning … Read more

The Theory of Software Development for RTOS

Introduction: In software development, most people rely on experience and lack theoretical knowledge. For example, when encountering problems, they know how to fix them but do not understand the underlying reasons. At certain stages, reading theoretical tutorials from universities can be more enlightening than the piecemeal technical summaries from popular bloggers, thus enhancing one’s skills. … Read more

Integrating Touch Screen with STM32F407 and LVGL

So far, the project has integrated LVGL with STM32F407 and also supports touch screens using STM32F407 + SPI for resistive touch screens. Therefore, integrating the touch screen with LVGL is a natural progression. You can refer to the official documentation at https://docs.lvgl.io/master/details/main-modules/indev/overview.html#indev-creation. It is simpler to refer to an official example template, especially for touch … Read more