Should You Use RTOS? Here Are the Answers

Should You Use RTOS? Here Are the Answers

Follow andstar our public account to not miss exciting content Readers have been asking various questions about RTOS, such as: Should I learn RTOS now? What are the benefits of learning RTOS? Should my project run on RTOS? …and other questions regarding RTOS. Ultimately, it boils down to your insufficient understanding of RTOS and lack … Read more

From Schematic PCB to Porting RTOS: A Detailed Discussion on STM32 GPIO

From Schematic PCB to Porting RTOS: A Detailed Discussion on STM32 GPIO

Introduction Why Should We Understand Both Hardware and Software? In 2010, while I was at Huawei, I temporarily took a break from my regular duties to participate in recruitment efforts. To recruit more people for my department and compete for HC numbers (the number of positions available), I worked hard to ensure that every candidate … Read more

Is There Any Meaning in Running RTOS on an 8-bit MCU?

Is There Any Meaning in Running RTOS on an 8-bit MCU?

Recently, a question was discussed in the group: Is there any meaning in running RTOS on a 51 microcontroller?Regarding this question, everyone has their own opinions. Below, I will elaborate on the 51 and RTOS. 1About 8-bit Microcontrollers and Their Performance and Resources 8-bit microcontrollers can be considered classics of our generation because they have … Read more

libmetal: A Unified Abstraction Layer for Real-Time Operating Systems (RTOS), Bare-Metal Environments, and User-Space Linux

libmetal: A Unified Abstraction Layer for Real-Time Operating Systems (RTOS), Bare-Metal Environments, and User-Space Linux

libmetal is an open-source project designed to provide a unified abstraction layer for real-time operating systems (RTOS), bare-metal environments, and user-space Linux environments. This framework offers a common user API, ensuring consistency and convenience in operations such as device access, device interrupt handling, and memory requests across different operating environments. This article will detail the … Read more

Unlocking the Potential of LwIP: Easily Implementing Multi-NIC on MCU

Unlocking the Potential of LwIP: Easily Implementing Multi-NIC on MCU

1. Introduction Recently, while communicating with developers, there was a request to implement multi-NIC functionality (Ethernet + USB 4G NIC) on the Xianji platform. I sent a reference to an article from nearly two years ago titled “[hpm_application] How to Easily Implement Multi-NIC (Ethernet + USB 4G) on Xianji MCU in RT-Thread” and reflected on … Read more

MCU in Embedded Development – Task Management in FreeRTOS

MCU in Embedded Development - Task Management in FreeRTOS

Continuing from the previous article, we have already learned about the porting and startup process of FreeRTOS. Today, we will continue to study the task management part of FreeRTOS, starting with understanding what a task is. 1. Task 1.1 Introduction to Tasks (1) In bare-metal systems, we generally use a front-and-back system for development. If … Read more

FreeRTOS – Task Scheduling Mechanism

FreeRTOS - Task Scheduling Mechanism

Tasks are the smallest units of execution competing for system resources. Multiple tasks with the same priority can share the same priority level. In FreeRTOS, if configUSE_TIME_SLICING is defined as 1, then multiple ready tasks with the same priority will share the processor in a time-slicing manner, where one time slice equals one tick. Task … Read more

Choosing Between Bare-Metal Systems and Operating Systems in MCU Development

Choosing Between Bare-Metal Systems and Operating Systems in MCU Development

In the field of microcontroller (MCU) development, developers often face architectural choices: whether to adopt a bare-metal system or a real-time operating system (RTOS). Below, we will analyze the applicable scenarios for both options through C language code examples and system flowcharts. 1. Applicable Scenarios for Bare-Metal Systems 1.1 Resource-Constrained Projects When MCU resources are … Read more

Zephyr Enthusiasts Monthly Issue 4 – 202504

Zephyr Enthusiasts Monthly Issue 4 - 202504

This issue records the latest news and shareable content about Zephyr, published in the last week of each month. This magazine is open source (GitHub: lgl88911/Zephyr_Fans_Monthly[1]), and contributions, issue submissions, or recommendations for Zephyr content are welcome. Project Data Excluding merges, 367 authors pushed 1,770 commits to the main branch and 1,884 commits to all … Read more

In-Depth Analysis of FreeRTOS Kernel Source Code: From Task Scheduling to Interrupt Handling

In-Depth Analysis of FreeRTOS Kernel Source Code: From Task Scheduling to Interrupt Handling

In-Depth Analysis of FreeRTOS Kernel Source Code: From Task Scheduling to Interrupt Handling Introduction As a representative of embedded real-time operating systems, FreeRTOS has an elegant and efficient kernel implementation. This article will delve into the key implementations of the FreeRTOS kernel, including task scheduling, memory management, interrupt handling, and other core mechanisms. Task Management … Read more