Common Uses of Preprocessor Directives in Embedded Software

Common Uses of Preprocessor Directives in Embedded Software

Many excellent codes utilize preprocessor directives to enhance their functionality. Today, we will discuss the content related to preprocessor directives. The common preprocessing directives are as follows: # directive, has no effect #include includes a source code file #define defines a macro #undef undefines a macro #if if the given condition is true, compile the … Read more

Comprehensive Guide to Improving Code Portability in Embedded Development

Comprehensive Guide to Improving Code Portability in Embedded Development

Improving code portability in embedded development can be approached from the following aspects: 1. Follow Standards and Specifications 1. Programming Language Standards Strictly adhere to C or C++ language standards, avoiding the use of compiler or platform-specific extensions. For example, avoid using non-standard compiler built-in functions to ensure that the code compiles correctly in different … Read more

Become a Linux Debugging Expert: Unveiling the Secrets of GDB!

Become a Linux Debugging Expert: Unveiling the Secrets of GDB!

Linux | Red Hat Certified | IT Technology | Operations Engineer 👇 Join the technical exchange QQ group with 1000 members. Note 【Official Account】 for faster approval. 1: What is GDB / CGDB GDB is a powerful and user-friendly debugging tool for Linux that allows developers to inspect the internal state of a program during … Read more

Controlling Exported Functions in Linux Shared Libraries

Click the blue text above to follow directly! Convenient for next reading. If this helps you, please give it a thumbs up or a like, thank you~ Article First Published Official Account – Pou Guangming On the third day of diligently working on a business trip in Shanghai…… The previous article introduced the rules for … Read more

The Relationship Between Makefile, Kconfig, and .config in Linux Kernel

The Relationship Between Makefile, Kconfig, and .config in Linux Kernel

When compiling the Linux kernel, we often execute some commands in the top-level directory of the Linux kernel. Taking RK3288 as an example, commands such as: make firefly-rk3288-linux_defconfig, make menuconfig, make firefly-rk3288.img, make zImage, etc. are used. Without getting into the specifics of these commands, let’s raise a few questions. (1) Given the vastness of … Read more

Linux System Programming: Creating and Using Static Libraries

Click the above“Mechanical and Electronic Engineering Technology” to follow us In Linux system programming, a Static Library is a compiled code library that contains a collection of multiple compilation units (such as functions and data) that can be shared by multiple programs. Static libraries typically have the file extension .a. Creating a Static Library Compile … Read more

Debugging Information with DEBUG Print in IAR

Debugging Information with DEBUG Print in IAR

#include “stdafx.h” #include<stdio.h> #include<stdlib.h> #include<string.h> // Whether to enable DEBUG mode //#define _DEBUG_ 0 // Not enabled #define _DEBUG_ 1 // Enabled #if _DEBUG_ #define PRINTF(…) printf(__VA_ARGS__) #else #define PRINTF(…) #endif int main() { int a, b, c; b = 1; c = 2; a = b + c; PRINTF(“a = %d\n”, a); getchar(); return … Read more

Key Considerations for Mixed C and Assembly Programming in Keil

Key Considerations for Mixed C and Assembly Programming in Keil

Click the above “Chuangxue Electronics” to follow and easily learn electronic knowledge. Chuangxue Electronics Subscription Daily updates of technical articles in the electronics industry and the latest news on microcontrollers, learn easily anytime, anywhere. Here are some issues encountered in mixed programming of C language and assembly language in Keil, written down for future reference. … Read more

Simple Use of GCC to Compile C Files in Keil Projects

Simple Use of GCC to Compile C Files in Keil Projects

It must be said that Keil seems to be the most widely used IDE among domestic users. After being acquired by ARM, the introduction of the Keil MDK development environment with ARMCC and other compilers has been well received by many ARM development engineers. The large user base (many of whom have transitioned from the … Read more