Developing Embedded Systems with C++: A Comprehensive Guide

Developing Embedded Systems with C++: A Comprehensive Guide

Writing embedded systems is indeed an interesting task. Unlike regular application development, we have to deal directly with the hardware and also worry about memory usage and real-time performance. As a veteran in embedded systems for over a decade, I find that developing embedded systems with C++ is quite cool. It allows us to utilize … Read more

Essential Microcontroller Programming: Understanding Circular Queues and Message Queues

Essential Microcontroller Programming: Understanding Circular Queues and Message Queues

Follow+Star Public Account Number, don’t miss exciting content Author | strongerHuang WeChat Public Account | Embedded Column In the process of microcontroller development, the “message queue” is often used, and there are various implementation methods.This article shares the principles and mechanisms of queue implementation. Circular Queue The circular queue is a very useful data structure … Read more

How to Catch Errors in Embedded Development at Compile Time?

How to Catch Errors in Embedded Development at Compile Time?

Have you ever thought about how some simple syntax rules in C can lead to clever methods? For example, the length of an array in C cannot be negative; of course, it makes no sense for an array length to be negative. For instance, int arr[1]; is correct, while int arr[-1]; is incorrect. This rule … Read more

How to Set the RTOS Tick in Embedded Development?

How to Set the RTOS Tick in Embedded Development?

Recently, a reader asked this question: Why is the default configuration of the RTOS system tick (Tick) 1000? Can I set it to 100, 10000, or 2000? Many beginners have this question, including myself when I first learned about RTOS. I was confused about the different values for tick configuration and their impacts. Today, let’s … Read more

Program Architecture in Embedded Development

Program Architecture in Embedded Development

Introduction In embedded software development, including microcontroller development, software architecture is a critical consideration for developers. Software architecture is crucial for the overall stability and reliability of the system. A suitable software architecture not only has a clear structure but also facilitates development. I believe that in the early stages of embedded or microcontroller software … Read more

What Is CMSIS-RTOS?

What Is CMSIS-RTOS?

Follow+Star Public Account, don’t miss the exciting content Author | strongerHuang WeChat Official Account | strongerHuang CMSIS: Cortex Microcontroller Software Interface Standard. It contains a lot of content: CMSIS-RTOS: Mainly used for RTOS API, providing a consistent software layer that can work with middleware and library components. CMSIS-DSP: A rich set of DSP functions optimized … Read more

How FreeRTOS Reduces RAM Usage and Speeds Up Execution

How FreeRTOS Reduces RAM Usage and Speeds Up Execution

Previously shared the article “What Features Were Updated in FreeRTOS V10.4.0?” and today we will elaborate on one of the knowledge points: FreeRTOS’s direct task (message) notification, aimed at reducing RAM usage and speeding up execution. 1. Introduction Almost all RTOS operating systems provide queue and semaphore functionalities, which are essential skills for most beginners. … Read more

Introduction to Synchronization and Mutex in FreeRTOS

Introduction to Synchronization and Mutex in FreeRTOS

This article aims to learn and use synchronization and mutex in FreeRTOS. Following the descriptions in this article, you should be able to run the experiment and apply the knowledge. Experimental conditions: Basic knowledge of C language and an integrated development environment installed, such as Keil uVision5. Concepts of Synchronization and Mutex Synchronization is used … Read more

FreeRTOS: A Popular, Free, Open Source RTOS

FreeRTOS: A Popular, Free, Open Source RTOS

FreeRTOS is a popular, free, open-source real-time operating system (RTOS) widely used in various embedded systems. It is known for its lightweight, ease of use, portability, and powerful features, making it the preferred RTOS for many embedded developers. This article will delve into the features, functionalities, and application scenarios of FreeRTOS. What is a Real-Time … Read more