📘 事件标志组实战
FreeRTOS · 30章
🎯 从基础到综合实战
1
事件标志组基础概念
什么是事件标志组 · 与信号量区别 · 应用场景
2
事件标志组数据结构
EventGroup_t 结构体 · 事件位映射 · 存储布局
3
创建与删除
xEventGroupCreate · Static · vEventGroupDelete
4
事件标志组置位操作
xEventGroupSetBits · ISR · 置位原理
5
等待操作
xEventGroupWaitBits · 等待模式 · 超时机制
6
同步操作
xEventGroupSync · 多任务同步 · 典型应用
7
清除操作
xEventGroupClearBits · ISR · 自动清除
8
查询操作
xEventGroupGetBits · ISR · 状态监控
9
中断安全
ISR操作 · 中断优先级 · 临界区保护
10
与任务通知对比
性能对比 · 适用场景 · 选择策略
11
内存管理
静态/动态分配 · 内存碎片问题
12
调试技巧
uxEventBits调试 · 事件跟踪 · 错误排查
13
实战1:多按键事件响应
需求分析 · 架构设计
14
实战1:代码实现
按键去抖处理 · 事件驱动
15
实战1:事件分发与优先级
分发机制 · 优先级处理
16
实战2:传感器数据采集同步
需求分析 · 多传感器同步策略
17
实战2:DMA+事件标志组
DMA结合 · 数据就绪通知
18
实战2:超时与错误恢复
超时处理 · 错误恢复机制
19
实战3:协议解析状态机
事件驱动状态机 · 状态转换表
20
实战3:帧接收与解析事件
帧接收完成 · 解析完成事件
21
实战3:错误处理与重传
错误处理 · 重传机制实现
22
实战4:多任务协同工作流
生产者消费者 · 事件驱动流水线
23
实战4:工作流阶段与触发
阶段划分 · 事件触发链
24
实战4:性能优化与负载均衡
性能优化 · 负载均衡
25
高级用法
事件掩码设计 · 优先级编码
26
与队列结合
事件通知+数据传递 · 混合通信
27
性能分析
时间开销 · 上下文切换 · 优化建议
28
常见陷阱
事件丢失 · 优先级反转 · 死锁预防
29
移植与配置
configUSE_16_BIT_TICKS · 事件位数量
30
综合实战:智能家居控制中心
系统设计 · 事件驱动 · 多模块协同