📦 分拣机·RTOS移植 30章

⏱️ 实时操作系统 v2.0
01
分拣机系统概述 原理
工作原理 · 嵌入式角色 · 实时性分析
02
RTOS基础概念 核心
任务 · 调度器 · 临界区 · 同步通信
03
硬件平台选型 ARM
Cortex-M4/M7 · 内存映射 · NVIC
04
开发环境搭建 IDE
Keil MDK / IAR · 工程模板 · Linker Script
05
FreeRTOS源码结构 内核
核心文件 · 内存管理 · 配置项详解
06
移植第一步:portmacro.h
数据类型重定义 · 临界区 · 栈增长方向
07
移植第二步:port.c 核心
任务栈初始化 · 启动任务 · PendSV异常
08
FreeRTOSConfig.h 配置
时钟节拍 · 最大优先级 · 堆大小
09
中断管理 嵌套
中断嵌套模型 · 临界区保护 · 延迟优化
10
任务创建与管理 动态
xTaskCreate · 参数传递 · 删除与挂起
11
任务调度机制 调度
抢占式 · 时间片轮转 · 空闲任务钩子
12
队列(queue) IPC
创建/发送/接收 · 队列集 · 分拣机应用
13
信号量(semaphore) 同步
二值/计数/互斥 · 优先级反转
14
事件组(event group) 标志
多事件同步 · 等待标志 · 故障处理
15
任务通知 轻量IPC
替代信号量/队列 · 性能对比
16
软件定时器 Timer
创建 · 回调 · 自动重载/单次
17
内存管理优化 heap
heap_1~5对比 · 碎片问题 · 自定义分配器
18
低功耗Tickless 省电
工作原理 · 配置 · 待机功耗优化
19
MPU内存保护 安全
Cortex-M MPU · 任务隔离 · 防越界
20
栈溢出检测 调试
硬件检测 · FreeRTOS钩子 · 栈大小估算
21
运行时统计 性能
vTaskGetRunTimeStats · 性能计数器 · CPU占用
22
调试与Trace 追踪
SystemView · FreeRTOS+Trace · 断点技巧
23
分拣机任务划分 设计
传感器 · 电机控制 · 通信 · 人机交互
24
实时性验证 WCET
最坏情况执行时间 · 响应测试 · 抖动测量
25
中断延迟优化 零延迟
ISR瘦身 · 延迟处理 · 零延迟中断技术
26
任务优先级设计 分配
分配原则 · 反转避免 · 分拣机方案
27
通信协议栈移植 CAN
CANopen · Modbus RTU · FreeRTOS适配
28
Bootloader设计 升级
固件升级 · 双区备份 · 安全启动
29
系统集成测试 验证
压力测试 · 长时间稳定 · 异常恢复
30
项目实战 全流程
从零搭建控制器 · 代码架构 · 性能调优