⚙️ 电机控制·RTOS实战
30章
🎯 任务调试 · 从入门到精通
01
RTOS基础概念
什么是RTOS
任务与调度
任务状态机
临界区与资源保护
02
电机控制基础
直流有刷电机
PWM调速
H桥驱动
电机模型简化
03
任务创建与删除
FreeRTOS API
参数传递
任务删除与清理
任务句柄管理
04
任务优先级与调度
优先级抢占
时间片轮转
优先级反转
优先级继承
05
任务间通信
队列(queue)
发送与接收
超时处理
电机控制应用
06
信号量与互斥量
二值信号量
计数信号量
互斥信号量
死锁预防
07
任务通知
轻量级通知
通知值操作
替代信号量/队列
场景分析
08
软件定时器
回调函数
周期/单次模式
电机控制应用
09
中断管理
中断优先级
Deferred Interrupt
中断与任务同步
10
内存管理
静态 vs 动态
heap_1~heap_5
内存碎片
11
任务栈深度分析
栈溢出检测
栈深度统计
栈大小估算
案例分析
12
系统时钟与Tick
Tick中断
时间测量
vTaskDelay
时间基准
13
电机控制任务框架
任务划分
控制周期
数据流设计
状态机实现
14
电流环任务调试
电流采样时序
PI控制器
优先级设置
调试技巧
15
速度环任务调试
速度计算(编码器)
M/T法
任务周期
滤波平滑
16
位置环任务调试
位置闭环
轨迹规划
速度环耦合
调试方法
17
通信任务调试
CAN/UART
协议解析
数据打包解包
超时处理
18
看门狗与系统监控
硬件看门狗
任务监控
健康检查
故障恢复
19
低功耗设计
Tickless模式
任务休眠
外设功耗管理
电机待机
20
多核与AMP架构
多核任务分配
核间通信IPC
共享资源保护
AMP调试
21
任务优先级反转实战
经典复现
优先级继承验证
工程解决方案
22
队列溢出与数据丢失
队列深度设计
生产者消费者
溢出检测与恢复
23
死锁分析与解决
死锁条件
检测方法
预防策略
案例复盘
24
任务饥饿问题
饥饿原因
优先级调度缺陷
公平调度
调试经验
25
系统性能分析
CPU负载计算
任务执行时间
瓶颈定位
优化方法
26
Trace与日志系统
RTOS Trace工具
日志等级
环形缓冲区
离线分析
27
单元测试与集成测试
任务单元测试
Mock对象
硬件在环HIL
自动化测试
28
常见硬件问题
电机噪声干扰
电源纹波
ADC采样抖动
硬件/软件滤波
29
系统启动与初始化
启动流程
外设初始化顺序
任务创建时机
安全启动
30
综合实战
双电机同步
多任务协同
性能优化
故障注入测试
项目总结