C语言指针详解(上):指针变量、函数指针 C语言指针详解(上):指针变量、函数指针 本篇讲解指针的核心概念与使用方法。关于指针安全(空指针、野指针)和嵌入式实战用法,请看《C语言指针详解(下)》。 一、指针基础 1.1 定义 指针变量是一个特殊的变量,它存储的值是另一个变量的内存地址(即地址编号),而不是数据本身。我们平时说的"指针",通常指的就是这个地址值本身。 ℹ️ 指针 vs 指针变量 指针:一个内存地址(一个数 C语言进阶 林峰 2026-03-17 808 热度 0评论
C语言关键字—typedef/sizeof/struct/union/enum/inline笔记(下) C语言进阶 — 关键字详解(下) 上篇:C语言关键字(上)—— static、extern、volatile、const。 本篇聚焦嵌入式开发中与类型定义、编译优化、数据组织相关的关键字:typedef、sizeof、register、inline、enum、struct、union。 5 typedef 关键字 💡 核心思想 typedef 为已有类型创建一个别名,提高代码可读性和可移植性。 5 C语言进阶 林峰 2026-03-17 348 热度 0评论
C语言关键字—static/extern/volatile/const 笔记(上) C语言进阶 — 关键字详解(上) C 语言共有 32 个关键字(C89)/ 44 个(C11)。本篇聚焦嵌入式开发中与存储、链接、优化直接相关的四个核心关键字:static、extern、volatile、const。 下篇:C语言关键字(下)—— typedef、sizeof、register、inline、enum、struct、union。 1 static 关键字 💡 核心思想 stati C语言进阶 林峰 2026-03-16 969 热度 0评论
C语言字符串:字符指针char * 与 字符数组char[]区别 字符串与字符数组 — char *、char、strlen、sizeof C 没有字符串类型。"字符串"就是以 \\0 结尾的 char 数组。 本文从内存布局讲清 char * 和 char 的区别,以及 sizeof 和 strlen 到底在算什么。 1 字符串的本质 // "hello" 实际占 6 字节: // 'h' C语言进阶 林峰 2026-03-16 604 热度 0评论
宏定义与宏函数 C语言进阶 — 宏定义与宏函数 宏是 C 预处理器最强大也最容易"翻车"的特性。本文聚焦于对象宏与函数式宏的用法、函数式宏的三大经典陷阱、以及嵌入式开发中最实用的宏技巧。 1 预处理器本质:文本替换引擎 1.1 编译四阶段中的预处理 源文件 (.c) │ ▼ ① 预处理 (gcc -E) 展开后的源文件 (.i) ← 宏替换、#include 展开、条件编译 │ ▼ ② 编译 C语言进阶 林峰 2026-03-16 567 热度 0评论
C 语言内存管理(一):内存段与布局(.text/.data/.bss/堆/栈) 内存管理 — 内存段与布局 内存管理是嵌入式 C 语言开发的核心难点。本文聚焦于程序内存布局、内存段的逻辑与物理映射、以及嵌入式内存优化实践。 1 程序内存布局 1.1 内存段的基本概念 C 程序运行时,内存被划分为不同的区域,每个区域存储特定类型的数据: 代码段(.text):存放程序的机器指令,只读 只读数据段(.rodata):存放常量和字符串字面量,只读 已初始化数据段(.data):存放 C语言进阶 林峰 2026-03-14 902 热度 0评论
FreeRTOS阅读源码之编程风格 FreeRTOS 阅读源码之编程风格 一、编程风格 FreeRTOS 严格遵循匈牙利命名法——看到名字就能推断出返回值类型、所属模块和参数类型。 变量看前缀,类型一目了然 → u/c/s/l/x/p 函数三段式,返回+模块+动作 → vTaskDelay / xQueueSend 宏看开头词,就知在哪定义 → config/pd/port/task 💬 匈牙利命名法已不是现代必用规范(IDE 弱化 嵌入式开发 林峰 2026-03-14 553 热度 0评论
SolidWorks 装配体:如何让零件和装配体基准面快速重合 目标 让零件的前视/上视/右视基准面(或原点坐标系)与装配体的对应基准面/原点完全重合——位置 + 方向全部对齐。 ℹ️ 核心思路:选中两个原点 → 添加重合配合 → 勾选\"对齐轴\",一步到位。 操作步骤 1. 确保零件为浮动状态 右键零件 → 选择浮动(不能是"固定",否则无法添加配合)。 浮动状态设置 2. 依次选中两个原点 先点击装配体的原点(设计树最上方的原点,或图形区 3D打印 林峰 2026-03-12 596 热度 0评论
嵌入式通信基础概念 嵌入式通信基础概念 在深入各种总线之前,先把几个容易混淆的基础概念彻底搞清楚。这些是理解所有通信协议的"元知识"。 1. 同步 vs 异步:到底谁在"喊节拍"? ℹ️ 一句话区别:有没有一根专门的时钟线来统一收发双方的节奏。 对比项 同步通信 异步通信 时钟线 有(如 I2C 的 SCL、SPI 的 SCLK) 没有 同步方式 主机通过时钟线"喊节 嵌入式开发 林峰 2026-03-11 392 热度 0评论
PID 控制算法: 位置式与增量式对比 第二篇(进阶) PID 进阶实战:位置式与增量式完全对比 在上一篇《PID 控制算法 第一篇(基础篇)》中,介绍了 PID 控制的基础概念、三个参数的物理意义以及基本的调参方法。如果你还没有阅读过第一篇,建议先回顾基础知识再来阅读本文。 本篇作为 PID 系列的第二篇,将深入探讨 PID 控制器在工程实践中最核心的两种离散化实现方式——位置式 PID 和增量式 PID。我们会从数学推导、代码实现、优缺点对比、工程 嵌入式开发 林峰 2026-03-10 836 热度 0评论