mirror of
https://gitee.com/dlmu-cone/tronone-h7-scaffold
synced 2026-07-24 03:27:45 +08:00
代码规范 prts文档
This commit is contained in:
177
User_Code/module/software/prts/prts.md
Normal file
177
User_Code/module/software/prts/prts.md
Normal file
@@ -0,0 +1,177 @@
|
||||
# PRTS_UI
|
||||
|
||||
# 睿映屏幕系统-UI(未完成)
|
||||
|
||||
## Powerful RoboMaster Toolkit for (damiaoh7devboard) Screen User Interface
|
||||
|
||||
---
|
||||
|
||||
## 🌟 项目概述
|
||||
|
||||
**睿映屏幕系统-UI** 是一款专为RoboMaster机器人竞赛设计的**高性能OLED显示驱动框架**。基于STM32H7系列开发板,本系统以"
|
||||
睿智映显,掌控全局"为设计理念,为机器人系统提供优雅、高效的图形用户界面解决方案。
|
||||
|
||||
### 核心寓意
|
||||
|
||||
- **睿**:智慧决策,精准控制
|
||||
- **映**:清晰呈现,实时反馈
|
||||
- 寓意系统如明镜般清晰映照机器人状态,以智慧驱动显示
|
||||
|
||||
---
|
||||
|
||||
## 🚀 系统特性
|
||||
|
||||
### 🎯 核心优势
|
||||
|
||||
- **⚡ 高性能渲染**:基于STM32H7硬件加速,实现60Fps流畅刷新
|
||||
- **🎨 优雅视觉**:专为RoboMaster设计的现代化UI风格
|
||||
- **🔧 高度模块化**:插件式架构,轻松扩展自定义组件
|
||||
- **📊 实时数据流**:毫秒级状态更新,确保竞赛实时性
|
||||
|
||||
### 🛠 技术特色
|
||||
|
||||
```
|
||||
├── 多层渲染架构 (背景层/状态层/数据层/紧急层)
|
||||
├── 硬件加速图形绘制
|
||||
├── 动态内存管理
|
||||
├── 事件驱动更新机制
|
||||
├── 多语言支持 (中英文界面)
|
||||
└── 离线/在线双模式
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📁 系统架构
|
||||
|
||||
### 核心模块
|
||||
|
||||
```
|
||||
PRTS_UI/
|
||||
├── Core/ # 核心驱动层
|
||||
│ ├── prts_core.c # 系统初始化与基础绘图
|
||||
│ ├── prts_fonts.c # 字体管理系统
|
||||
│ └── prts_buffer.c # 显存管理
|
||||
├── Layers/ # 显示层管理
|
||||
│ ├── background/ # 背景层组件
|
||||
│ ├── robot_status/ # 机器人状态显示
|
||||
│ ├── sensor_data/ # 传感器数据可视化
|
||||
│ └── emergency/ # 紧急状态界面
|
||||
├── Widgets/ # UI组件库
|
||||
│ ├── gauges/ # 仪表盘组件
|
||||
│ ├── charts/ # 实时曲线图
|
||||
│ ├── indicators/ # 状态指示器
|
||||
│ └── panels/ # 信息面板
|
||||
├── Drivers/ # 硬件驱动适配
|
||||
│ └── damiaoh7devboard/ # 大喵H7开发板专用驱动
|
||||
└── Examples/ # 示例代码
|
||||
├── basic_demo/ # 基础使用示例
|
||||
├── advanced_ui/ # 高级UI示例
|
||||
└── competition/ # 竞赛场景示例
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎮 功能特性
|
||||
|
||||
### 1. 机器人状态监控
|
||||
|
||||
- **实时姿态显示**:机器人实时姿态
|
||||
- **电控系统监控**:电机状态、电流、温度可视化
|
||||
- **弹丸管理**:弹仓状态、射速、剩余弹药显示
|
||||
|
||||
### 2. 传感器数据可视化
|
||||
|
||||
- **IMU数据**:姿态角、加速度、陀螺仪实时曲线
|
||||
- **视觉系统**:识别状态、目标追踪可视化
|
||||
- **电源管理**:电池电量、功耗分析
|
||||
|
||||
## 🎨 UI组件展示
|
||||
|
||||
### 标准组件库
|
||||
|
||||
| 组件类型 | 功能描述 | 适用场景 |
|
||||
|-----------|--------------|------------|
|
||||
| **智能仪表盘** | 环形/线性仪表,平滑动画 | 电量、温度、压力显示 |
|
||||
| **雷达扫描图** | 360°环境感知可视化 | 传感器覆盖范围显示 |
|
||||
| **波形显示器** | 实时数据曲线绘制 | IMU、电流波形监控 |
|
||||
| **状态矩阵** | 多系统状态集中显示 | 系统健康度监控 |
|
||||
| **战术HUD** | 抬头显示风格 | 竞赛实时信息 |
|
||||
|
||||
---
|
||||
|
||||
## 🔄 数据流架构
|
||||
|
||||
```
|
||||
传感器数据 → 数据解析 → 界面更新 → 屏幕渲染
|
||||
↓ ↓ ↓ ↓
|
||||
IMU/电机 协议解码 状态管理 硬件加速
|
||||
↓ ↓ ↓ ↓
|
||||
数据滤波 格式转换 事件触发 双缓冲
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📈 性能指标
|
||||
|
||||
| 指标项 | 性能数据 | 备注 |
|
||||
|----------|---------|--------|
|
||||
| **刷新率** | 60 FPS | 全屏刷新 |
|
||||
| **内存占用** | < 20KB | 包含帧缓存 |
|
||||
| **启动时间** | < 100ms | 冷启动 |
|
||||
| **响应延迟** | < 5ms | 事件响应 |
|
||||
| **功耗** | 15mW | 典型工作状态 |
|
||||
|
||||
---
|
||||
|
||||
## 🛡 可靠性设计
|
||||
|
||||
### 容错机制
|
||||
|
||||
- **自动降级**:在资源紧张时自动切换简化模式
|
||||
- **数据校验**:所有传输数据CRC校验
|
||||
- **看门狗保护**:防止界面卡死
|
||||
- **恢复模式**:系统故障时基础信息保障显示
|
||||
|
||||
### 质量保障
|
||||
|
||||
- 完整的单元测试覆盖
|
||||
- 实时性压力测试
|
||||
- 电磁兼容性优化
|
||||
- 温度适应性测试 (-20°C ~ 85°C)
|
||||
|
||||
---
|
||||
|
||||
## 🌍 应用场景
|
||||
|
||||
### 🤖 RoboMaster竞赛
|
||||
|
||||
- 步兵机器人状态监控
|
||||
- 英雄机器人弹道管理
|
||||
- 哨兵机器人自主显示
|
||||
- 雷达站数据可视化
|
||||
|
||||
---
|
||||
|
||||
## 🎯 未来规划
|
||||
|
||||
### 短期目标
|
||||
|
||||
- [ ] 更多预置主题风格
|
||||
- [ ] 可视化布局编辑器
|
||||
- [ ] 性能分析工具
|
||||
- [ ] 更多传感器支持
|
||||
|
||||
### 长期愿景
|
||||
|
||||
- [ ] 跨平台适配 (ESP32, Raspberry Pi)
|
||||
- [ ] 云配置同步
|
||||
- [ ] AI驱动的界面优化
|
||||
- [ ] 全息投影接口
|
||||
|
||||
---
|
||||
|
||||
**睿映屏幕系统-UI** — 让每一台RoboMaster机器人都拥有智慧的"眼睛",在竞技场上清晰映照战局,以睿智掌控胜负!
|
||||
|
||||
---
|
||||
*PRTS_UI - Powerful RoboMaster Toolkit for Screen User Interface*
|
||||
*让显示,更加优雅*
|
||||
Reference in New Issue
Block a user