Exploring the World of Embedded Linux: Basic Setup and Simple Application Development

Exploring the World of Embedded Linux: Basic Setup and Simple Application Development

Exploring the World of Embedded Linux: Basic Setup and Simple Application Development Embedded Linux, as an efficient, stable, and widely applicable operating system, has become an indispensable technological cornerstone in many fields. Whether in consumer electronics, networking devices, automotive electronics, or industrial control, embedded Linux plays a crucial role. This article mainly introduces the basic … Read more

Essential Tools for Embedded Development: Sanitizer

Essential Tools for Embedded Development: Sanitizer

Hello everyone, I am the Mixed Cuisine Master. Today we are going to share a development and debugging tool – Sanitizer. Introduction to Sanitizer Sanitizer is an open-source toolkit initiated by Google, designed to detect memory leaks and other issues. Link: https://github.com/google/sanitizers/wiki/ It includes various tools such as AddressSanitizer, MemorySanitizer, ThreadSanitizer, and LeakSanitizer. These tools … Read more

Rules for Debugging Logs in Embedded Development

Rules for Debugging Logs in Embedded Development

Follow+Star Public Account, don’t miss out on exciting content Source | Embedded Miscellaneous In our embedded development, printing logs is the most commonly used debugging method. Properly printing logs can help us quickly analyze problems. This article summarizes some rules for logging in embedded systems. 1. When to Add Logs? (1) Error Handling For unrecoverable … Read more

Why Design Patterns Are Rarely Used in Embedded Development

Why Design Patterns Are Rarely Used in Embedded Development

Follow+Star Public Account, don’t miss the wonderful content Author | Li Xiaoyao Source | Technology Makes Dreams Greater In the first two years of my work, I wrote code for projects without considering code extensibility, portability, or modularity, which led to difficulties when new features were added or modifications were needed. Today, I’m sharing an … Read more

Comparison of C Compilers on Embedded Development Boards

Comparison of C Compilers on Embedded Development Boards

Comparison of C Compilers on Embedded Development Boards Embedded system development has always been a field that is both challenging and fun in the programming world, especially when conducting project practices on development boards like Raspberry Pi. Among them, choosing a suitable C compiler is one of the important decisions every developer must make before … Read more

Common C Language Tools for Embedded Development

Common C Language Tools for Embedded Development

The C language tools commonly used in embedded development are indeed very important. Below are some sword-level C language tool code examples, along with brief explanations. 1. Circular Buffer: typedef struct { int buffer[SIZE]; int head; int tail; int count; } CircularBuffer; void push(CircularBuffer *cb, int data) { if (cb->count < SIZE) { cb->buffer[cb->head] = … Read more

Design of a Pauseable Eight-Way Buzzer Based on AT89C51 Microcontroller

Design of a Pauseable Eight-Way Buzzer Based on AT89C51 Microcontroller

Click the link below to read the original article or copy the link to your browser to obtain the Keil source code and Project Backups simulation images: https://gf.bilibili.com/item/detail/1107885063 C+15 Abstract With the advancement of society and technology, the application of electronic devices in various activities has become increasingly common. Buzzers, as a tool for answering … 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

Task Scheduling in FreeRTOS

Task Scheduling in FreeRTOS

Convention: This article is based on freeRTOSv202212.01. Defining a Task Task scheduling involves the “tasks” that need to be managed, so we need to first understand what a “task” looks like. An independent task must consider the following points: 1. The system must recognize and manage this task, so the task needs an identification card … Read more

Getting Started with FreeRTOS: Memory Management

Getting Started with FreeRTOS: Memory Management

1. Concept and Classification of Memory In computing systems, memory is used to store variables and intermediate data. The system memory can be divided into two types: Internal Storage Space (RAM): Typically refers to Random Access Memory, which allows fast data access and random access, but data is lost when power is off. External Storage … Read more