⚡ 电力监控RTOS实战
30章 · 从入门到交付
📘 基于STM32 + FreeRTOS / RT-Thread
01
RTOS基础入门
什么是RTOS · 电力监控为什么需要RTOS · FreeRTOS/RT-Thread/uCOS对比
02
开发环境搭建
Keil/IAR配置 · STM32CubeMX生成RTOS工程 · 模板建立
03
任务管理核心
创建/删除 · 优先级 · 状态切换 · 空闲任务机制
04
任务调度机制
抢占式调度 · 时间片轮转 · 调度锁 · 临界区保护
05
任务间通信-队列
队列创建/读写 · 电力数据采集应用 · 超时机制
06
任务间通信-信号量
二值/计数/互斥信号量 · 优先级翻转问题
07
事件标志组
事件标志组创建 · 多事件同步 · 告警联动设计
08
消息邮箱
邮箱机制 · 与队列区别 · 参数传递使用
09
内存管理
动态/静态分配 · 内存碎片 · 电力系统内存规划
10
软件定时器
定时器创建 · 周期/单次 · 回调 · 电力定时采集
11
中断管理
中断优先级配置 · 中断与任务同步 · ISR设计原则
12
时钟与节拍
系统节拍配置 · 时钟中断 · 时间管理 · 延时对比
13
电力监控需求分析
功能模块划分 · 技术指标 · Modbus/IEC104选型
14
硬件平台选型
MCU选型(STM32F4/H7) · ADC采样 · 传感器 · 通信模块
15
系统架构设计
任务划分 · 优先级分配 · 数据流 · 状态机设计
16
数据采集任务实现
ADC驱动 · DMA传输 · 采样率控制 · 滤波算法
17
电能参数计算
电压电流有效值 · 有功无功功率 · 功率因数 · 电度累计
18
告警与保护逻辑
过压/欠压告警 · 过流保护 · 频率异常 · 告警任务
19
数据显示与交互
LCD驱动移植 · 菜单系统 · 按键扫描 · 参数设置
20
数据存储与日志
Flash驱动 · 参数存储 · 历史记录 · FATFS移植
21
Modbus协议实现
RTU模式 · 主机/从机 · 寄存器映射 · CRC校验
22
IEC104协议实现
APDU结构 · ASDU解析 · 遥测遥信 · 遥控遥调
23
双协议栈设计
协议切换策略 · 数据抽象层 · 协议优先级管理
24
远程通信任务
GPRS/4G驱动 · TCP/IP · 心跳机制 · 断线重连
25
系统监控与诊断
任务堆栈监控 · CPU利用率 · 看门狗 · 异常日志
26
低功耗设计
休眠模式 · 唤醒源 · 功耗测量 · 电池供电优化
27
固件升级(OTA)
Bootloader设计 · 固件校验 · 升级流程 · 回滚机制
28
系统联调与测试
单元测试 · 集成测试 · 压力测试 · EMC要点
29
项目实战:三相电力仪表
从需求到交付全流程 · 完整实现
30
课程总结与进阶
常见FAQ · 性能优化技巧 · 下一步学习方向