📘 智能按摩仪·固件课程
🧩 30章 · 从零到量产
v2.0
01
项目概述与开发环境搭建
智能按摩仪项目介绍 · 功能需求分析 · 硬件选型 · Keil/STM32CubeMX · 工程模板创建
02
GPIO基础与LED控制
GPIO工作原理 · 寄存器操作 · 点亮板载LED · 呼吸灯 · 按键消抖
03
定时器与PWM输出
定时器原理 · STM32定时器配置 · PWM模式 · 电机调速 · 多级力度调节
04
ADC与触摸按键
ADC工作原理 · 读取压力传感器 · 触摸按键RC充放电 · 触摸开关控制
05
串口通信与调试
UART协议 · 串口配置 · printf重定向 · 串口调试助手 · AT指令解析
06
I2C总线与传感器读取
I2C协议详解 · STM32 I2C配置 · 读取LM75/MPU6050 · 应答信号
07
SPI总线与显示驱动
SPI模式/极性/相位 · 驱动OLED/LCD · 显示字符与图形
08
中断系统与实时响应
NVIC · 外部中断EXTI · 定时器中断 · 优先级管理 · 中断规范
09
DMA与高效数据传输
DMA控制器 · 存储器到外设 · 外设到存储器 · 与中断配合 · 无CPU干预搬运
10
电机驱动与控制算法
H桥驱动 · L298N/DRV8833 · PID入门 · 速度闭环 · 位置控制
11
传感器数据融合与滤波
一阶低通滤波 · 滑动平均 · 卡尔曼滤波入门 · 加速度计/陀螺仪融合 · 姿态解算
12
电源管理与低功耗设计
系统功耗分析 · Sleep/Stop/Standby · 外部唤醒 · 电池电量检测 · DVFS
13
Flash存储与参数保存
内部Flash操作 · 读写用户数据 · 磨损均衡 · 保存用户配置 · 掉电保存
14
看门狗与系统稳定性
独立看门狗IWDG · 窗口看门狗WWDG · 喂狗策略 · 死机复位 · 异常处理
15
RTOS入门与任务管理
FreeRTOS移植 · 任务创建/删除 · 优先级调度 · 任务状态 · 多任务按摩程序
16
RTOS同步与通信
信号量 · 互斥锁 · 队列 · 事件标志组 · 任务间数据传递 · 共享资源冲突
17
软件定时器与时间管理
RTOS软件定时器 · 一次性/周期性 · 回调函数 · 按摩定时15分钟自动停止
18
状态机与模式切换
有限状态机FSM · 状态表/转移图 · 按键状态机 · 揉捏/敲击/推拿切换
19
蓝牙通信与手机APP控制
HC-05/HM-10 · SPP协议 · 自定义通信协议 · 接收APP指令 · 远程控制
20
Wi-Fi通信与物联网接入
ESP8266/ESP32 · AT指令连Wi-Fi · MQTT入门 · 阿里云IoT · 远程监控
21
用户界面与交互设计
OLED菜单系统 · 多级菜单 · 图标动画 · 旋钮编码器 · 友好交互
22
语音控制与识别
语音模块SU-03T · 串口控制 · 自定义唤醒词 · 语音开关机/模式切换
23
安全保护与故障检测
过流/过温保护 · 电机堵转检测 · 传感器自检 · 故障代码上报 · 安全状态机
24
固件升级(OTA)
Bootloader设计 · 固件分区 · 蓝牙/Wi-Fi接收 · CRC32校验 · 远程升级
25
生产测试与校准
产测流程 · 功能测试用例 · 传感器校准 · 电机参数标定 · 测试报告
26
EMC与可靠性设计
EMC概念 · PCB布局布线 · 去耦电容/滤波 · 屏蔽接地 · ESD防护
27
代码规范与版本管理
编码规范 · Git入门 · 分支管理 · 代码审查流程
28
单元测试与集成测试
TDD入门 · CUnit/Ceedling · Mock对象 · 自动化测试 · CI概念
29
项目文档与维护
需求/设计文档 · Doxygen API文档 · 用户手册 · 版本发布 · 售后跟踪
30
项目总结与展望
完整项目回顾 · 技术复盘 · 性能优化 · 产品化思考 · AI按摩/健康监测