95 lines
2.1 KiB
Markdown
95 lines
2.1 KiB
Markdown
# SmartMassager_STM32
|
||
|
||
STM32 智能按摩椅控制系统项目
|
||
|
||
## 项目概述
|
||
|
||
本项目基于 STM32 微控制器开发的智能按摩椅控制系统,集成了串口屏显示、FreeRTOS 实时操作系统、多种传感器控制等功能。
|
||
|
||
## 硬件平台
|
||
|
||
- 主控芯片:STM32 系列微控制器
|
||
- 显示屏:JC 系列串口屏(通过 USART1 通信)
|
||
- 操作系统:FreeRTOS 实时操作系统
|
||
|
||
## 软件架构
|
||
|
||
### 主要模块
|
||
|
||
1. **屏幕驱动模块** (`screen.c`)
|
||
- 串口屏底层驱动实现
|
||
- 支持基本绘图功能(点、线、矩形、圆形)
|
||
- GBK 字符显示支持
|
||
- 图片显示功能
|
||
|
||
2. **任务调度模块**
|
||
- 基于 FreeRTOS 的多任务管理
|
||
- 各子系统任务协调运行
|
||
|
||
3. **日志系统**
|
||
- 集成 EasyLogger 日志框架
|
||
- 多级别日志输出
|
||
|
||
### 核心功能
|
||
|
||
#### 屏幕控制 API
|
||
- `Screen_Init()` - 屏幕初始化
|
||
- `Screen_Clear()` - 清屏
|
||
- `Screen_DrawText16_GBK()` - 绘制16号字体GBK文本
|
||
- `Screen_DrawText24_GBK()` - 绘制24号字体GBK文本
|
||
- `Screen_Box()` - 绘制矩形框
|
||
- `Screen_Line()` - 绘制直线
|
||
|
||
#### 电机控制
|
||
- 多档位速度控制
|
||
- 启动加速功能
|
||
- 过流、超温保护
|
||
|
||
#### 按键处理
|
||
- 防抖处理
|
||
- 四个功能按键:
|
||
- M_KEY: 加档
|
||
- M_KEYC7: 减档
|
||
- HOT_KEY: 热敷开关
|
||
- TIME_KEY: 定时功能
|
||
|
||
#### 音频播放
|
||
- MP3音频播放支持
|
||
- TF卡文件读取
|
||
|
||
## 开发环境
|
||
|
||
- IDE: STM32CubeIDE
|
||
- 编译器: GCC ARM
|
||
- 调试工具: ST-LINK
|
||
|
||
## 构建说明
|
||
|
||
1. 克隆项目到本地
|
||
2. 使用 STM32CubeIDE 导入项目
|
||
3. 配置目标芯片型号
|
||
4. 编译项目
|
||
5. 通过 ST-LINK 下载到目标板
|
||
|
||
## 使用说明
|
||
|
||
1. 上电后系统自动初始化
|
||
2. 屏幕显示设备名称和加载界面
|
||
3. 初始化完成后进入主操作界面
|
||
4. 通过按键控制按摩功能
|
||
|
||
## 注意事项
|
||
|
||
- 请确保电源电压符合要求
|
||
- 避免在潮湿环境中使用
|
||
- 定期检查连接线路
|
||
- 如遇异常情况请立即断电
|
||
|
||
## 版本信息
|
||
|
||
- 当前版本: v1.0.0
|
||
- 发布日期: 2024年
|
||
|
||
## 技术支持
|
||
|
||
如有问题请联系开发团队或查看相关技术文档。 |