Goodbye printf! Efficient Logging Solutions for Embedded Systems

Goodbye printf! Efficient Logging Solutions for Embedded Systems

Click the aboveblue text to follow us In the field of embedded system development, logging systems are like black boxes in the digital world, carrying key information about the system’s operational status. The traditional printf debugging method, while simple and easy to use, exposes significant issues such as low efficiency, high resource consumption, and poor … Read more

Introduction to CMake Basics

Introduction to CMake Basics

Introduction to CMake 1. Overview of CMake CMake is a project build tool that is cross-platform. Other popular project build tools include Makefile (which builds projects using the Make command). Most IDEs integrate make, such as: nmake for VS, GNU make for Linux, and qmake for Qt. If you write a makefile by hand, you … Read more

PyQt: The Golden Combination for Python GUI Development

PyQt: The Golden Combination for Python GUI Development

1. Core Positioning of PyQt PyQt is the Python binding for the Qt framework, seamlessly porting the C++ Qt library to the Python ecosystem, providing: Cross-platform capability: Full support for Windows/macOS/Linux Dual licensing model: GPL (open source and free) and commercial license (closed source for commercial use) Modular architecture: Includes core modules such as QtWidgets … 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

The Most Stupid Bug in Embedded C Language History

The Most Stupid Bug in Embedded C Language History

From: CoolShell Link: https://coolshell.cn/articles/5388.html Original: https://www.elpauer.org/2011/08/the-most-stupid-c-bug-ever/ This article is based on “The most stupid C bug ever” and is quite interesting, so I am sharing it with everyone. I believe that even if you are an expert, you could make such a bug. Let’s take a look at the bug made by the author. First, … Read more

Open Source GUI Framework Based on C Language: Powerful, Efficient, Reliable, and Easy to Use

Open Source GUI Framework Based on C Language: Powerful, Efficient, Reliable, and Easy to Use

Yifei Open Source introduces creative, novel, interesting, practical open-source applications, systems, software, hardware, and technologies, serving as a platform for exploration, discovery, sharing, usage, and interaction within the open-source technology community. Committed to building a vibrant open-source community and co-creating a new open-source ecosystem! 1. Introduction to the Open Source Project AWTK, short for Toolkit … Read more

Newlib: The ‘Accelerator’ for Embedded Development

Newlib: The 'Accelerator' for Embedded Development

Introducing a project known as the “C Library Magic Tool” in the embedded community—Newlib. Whether you are a novice in chip development or an expert in low-level programming, Newlib can help you quickly handle the C standard library, mathematical operations, I/O interfaces, and more, making embedded system development easier. What is Newlib? Newlib is a … Read more

Creating and Deleting Directories in C++

Creating and Deleting Directories in C++

1. Description If the compiler supports C++17, it is recommended to use the <span>std::filesystem</span> related functions If used only on Windows platform, you can use <span>_mkdir</span> and <span>_rmdir</span> If used only on Linux platform, you can use <span>mkdir</span> and <span>rmdir</span> If the code needs to be cross-platform, you can use system calls to unify If … Read more

C++ Cross-Platform Development Techniques

C++ Cross-Platform Development Techniques

C++ Cross-Platform Development Techniques Introduction With the rapid development of software, more and more developers are seeking solutions that can support multiple operating systems simultaneously. C++ is a powerful programming language that offers high performance and good portability. This article will share some techniques for C++ cross-platform development to help beginners reduce the challenges faced … Read more

Generating Executable EXE Programs on Windows with Python

Generating Executable EXE Programs on Windows with Python

Introduction A small program was created using Python, intended for use on Windows. This demo documents the implementation process. The library used for packaging is the third-party Python library PyInstaller. Content Overview Packaging with PyInstaller Testing for usability Steps to Operate 1. Packaging with PyInstaller Install the pyinstaller dependency pip install pyinstaller Package a single … Read more