PID 控制算法: 位置式与增量式对比 第二篇(进阶)

PID 进阶实战:位置式与增量式完全对比 在上一篇《PID 控制算法 第一篇(基础篇)》中,介绍了 PID 控制的基础概念、三个参数的物理意义以及基本的调参方法。如果你还没有阅读过第一篇,建议先回顾基础知识再来阅读本文。 本篇作为 PID 系列的第二篇,将深入探讨 PID 控制器在工程实践中最核心的两种离散化实现方式——位置式 PID 和增量式 PID。我们会从数学推导、代码实现、优缺点对比、工程
PID 控制算法: 位置式与增量式对比 第二篇(进阶)

第四篇FreeRTOS同步机制-信号量、互斥量与优先级反转

第四篇 FreeRTOS 同步机制:信号量、互斥量与优先级反转 掌握信号量与互斥量的原理和使用场景,深入理解优先级反转问题。这是 RTOS 面试中出现频率最高的知识点之一。本文从"为什么需要同步"讲起,带你彻底搞清楚二值信号量、计数信号量、互斥量的区别和实战用法。 一、为什么需要同步机制? 1.1 多任务并发问题 任务A: 读取温度 → → 写入全局变量 temp 任
第四篇FreeRTOS同步机制-信号量、互斥量与优先级反转

第二篇FreeRTOS任务管理-基础架构与生命周期

FreeRTOS 基础架构与任务管理 理解 RTOS 存在的意义,掌握 FreeRTOS 任务的完整生命周期,能独立创建多任务程序。本文从裸机与 RTOS 的对比入手,带你一步步搞懂 FreeRTOS 任务的创建、状态机、调度规则和常用 API。 一、FreeRTOS 是什么?为什么需要它? 1.1 裸机 vs RTOS 对比 对比项 裸机(前后台系统) FreeRTOS 架构 while(1)
第二篇FreeRTOS任务管理-基础架构与生命周期

嵌入式通信协议UART、I2C 、SPI、CAN、Modbus总线协议区别

嵌入式常用总线特点与区别 前置知识: 先搞懂同步/异步、串行/并行、全双工/半双工、差分/单端信号等基础概念,后面的协议就能秒懂《 👉 通信基础概念》 一览表(速查) 特性 UART I2C SPI CAN Modbus 全称 Universal Asynchronous Receiver/Transmitter Inter-Integrated Circuit Serial Peripheral
嵌入式通信协议UART、I2C 、SPI、CAN、Modbus总线协议区别

详解GCC编译器常用命令

GCC 从入门到实战:编译四阶段 + 常用命令速查 GCC(GNU Compiler Collection)是 Linux 下最常用的 C/C++ 编译器,也是嵌入式开发中不可或缺的工具。 基本格式:gcc 源文件 -o 输出文件 💡 嵌入式中的交叉编译 交叉编译器的用法和 gcc 完全一致,只是前缀不同: arm-linux-gnueabihf-gcc — ARM Linux aarc
详解GCC编译器常用命令

第三篇FreeRTOS 通信机制 — 队列、事件组与任务通知

FreeRTOS 通信机制 — 队列、事件组与任务通知 FreeRTOS 提供了三大核心通信机制:队列、事件组、任务通知。掌握它们的原理、API 和适用场景,是写好多任务程序的关键。本文带你逐一攻破。 一、队列(Queue) 1.1 什么是队列 FreeRTOS 队列(又称消息队列)是一种线程安全的 FIFO 缓冲区,专门用于在任务与任务、任务与中断之间传递数据。你可以把它想象成一个带锁的管道——
第三篇FreeRTOS 通信机制 — 队列、事件组与任务通知

嵌入式开发中 void 的用法总结

在 C 语言嵌入式开发中,*void 万能指针*是一个必须掌握的核心概念。void* 被称为"万能指针",因为它可以指向任意数据类型,是实现 C 语言"泛型"和"多态"的唯一手段。无论是 RTOS 内核、驱动抽象层,还是硬件寄存器操作,void 万能指针无处不在。本文将从基础概念到实战应用,全面讲解 void* 万能指针的使用方法。 一、
嵌入式开发中 void 的用法总结

Keil µVision 软件使用指南

Keil µVision 软件使用指南 Keil µVision 是 ARM 公司旗下的嵌入式集成开发环境(IDE),是 51 单片机和 ARM Cortex-M 开发中最主流的工具。 版本 适用芯片 编译器 Keil C51 STC8/STC15/AT89C51 等 51 系列 C51 编译器 Keil MDK STM32/GD32/NXP 等 ARM Cortex-M ARMCC / ARM
Keil µVision 软件使用指南

GDB 调试器使用指南

GDB 调试器使用指南 GDB(GNU Debugger)是 Linux 下最常用的 C/C++ 程序调试工具。GDB 主要能做以下四件事来帮助你定位 Bug: 启动程序 —— 可以指定任何可能影响程序行为的参数与环境。 条件中断 —— 让程序在满足指定条件时停下来。 检查现场 —— 程序停下后,检查当时究竟发生了什么。 动态修改 —— 在运行中修改程序状态,从而验证对某个 Bug 的修复思路,再
GDB 调试器使用指南

轮趣 MG370P34_12V 霍尔编码器频率与转速计算

霍尔编码器简要笔记 轮趣 MG370P34_12V 电机采用的是磁式霍尔增量编码器,主要由多对极磁环和霍尔元件组成。 MG370 电机所带的霍尔 AB 相编码器属于增量式编码器(区别于 AS5600 这类磁性绝对角度传感器),其输出的 A、B 两路信号具有固定的相位先后关系,可用于判断电机转动方向,并统计转速及转动角度增量。由于该编码方式不提供绝对位置信息,上电后需从初始状态开始累计。其结构简单、
轮趣 MG370P34_12V 霍尔编码器频率与转速计算