Understanding Device Driver Frameworks (Device Tree) with RT-Thread as an Example

Understanding Device Driver Frameworks (Device Tree) with RT-Thread as an Example

Abstract The relationships between devices are various forms of derived inheritance, tracing back to a common origin. This article discusses the concept of “device framework” or “device tree” in embedded systems, analyzing its design intent, core design philosophy, implementation principles, etc., using the device framework of the RT-Thread system as an example. Concept of Device … Read more

The Evolution of Structures from C to C++

The Evolution of Structures from C to C++

1. Initial Impressions of Structures in C and C++ A structure (struct) can encapsulate different types of data together, forming a new, more complex data type. For example, in C, if we want to describe a student’s information, such as name, age, and score, we can define a structure like this: struct Student { char … Read more

MultiButton: A Simple and Powerful Key Driver Module

MultiButton: A Simple and Powerful Key Driver Module

MultiButton is a simple and powerful key driver module that is based on an event-driven mechanism and adopts an object-oriented design concept. It helps you easily manage multiple keys and handle key events asynchronously, simplifying your code structure and making key logic clearer and more flexible! 1. Core Advantages of MultiButton • Unlimited Key Expansion: … Read more

C++ Type Erasure Technology

C++ Type Erasure Technology

1 Type Erasure1.1 OverviewC++ is a strongly typed language, but when it comes to abstract design, the hard coding caused by strong typing can become a hassle. This is where we need the help of type erasure technology. Type erasure is a programming technique that allows you to operate on various concrete types through generic … Read more