智能手表软件架构设计文档初稿

发布于:2025-05-13 ⋅ 阅读:(18) ⋅ 点赞:(0)

📘 智能手表软件架构设计文档初稿

项目名称:Aurora Watch S1
版本号:v1.0
编写人:XXX(嵌入式软件架构师)
日期:2025年xx月xx日


在这里插入图片描述

一、文档目的

本文件旨在明确智能手表软件系统的架构设计,包括MCU固件、蓝牙通信、传感器处理、UI交互及与移动APP间的通信接口。文档为各模块开发、联调、测试提供统一的软件框架与接口规范。


二、系统总体架构

软件系统分为三大层级:

  1. 智能手表端(MCU)
  2. 蓝牙通信层(BLE)
  3. 手机端APP(iOS/Android)
          手机端APP
         ┌────────────┐
         │ UI层        │
         │ 业务逻辑层   │
         │ 蓝牙通讯模块 │
         └────────────┘
                ▲
              BLE
                ▼
         ┌────────────┐
         │ MCU主控芯片 │
         │ RTOS系统    │
         │ 任务调度    │
         │ 应用服务层  │ ← 心率/运动/消息
         │ HAL驱动层   │ ← I2C/SPI/ADC
         │ BLE协议栈   │ ← 通知/同步
         └────────────┘

三、模块划分说明

1️⃣ MCU固件软件架构

软件层级 功能描述
应用服务层 实现运动监测、健康算法、消息推送、UI交互等模块
系统任务层 基于FreeRTOS,管理多任务、调度优先级、资源共享
驱动层 (HAL) 负责底层传感器/显示/触摸/按键/充电/电源管理等接口
协议栈层 蓝牙协议(BLE 5.0),支持Gatt Server/Client、OTA、Time Sync等
核心任务模块(RTOS)
任务名称 功能简述 优先级
UI任务 显示刷新/界面滑动
传感器任务 采集心率/血氧/加速度
通讯任务 BLE通信、数据同步
电源管理任务 睡眠模式、充电检测
日志任务 本地存储、日志管理

2️⃣ BLE通信架构

项目 内容
BLE角色 Peripheral(手表) + GATT Server
通信通道 Notify(状态推送)、Write(APP下发命令)、Read(读取配置)
OTA升级 支持DFU模式,基于BLE OTA协议
加密支持 支持AES128连接加密,配对绑定
常用服务 Battery、HeartRate、Device Info、Custom Service

3️⃣ APP端架构(Android/iOS)

模块 功能描述
蓝牙通信模块 扫描、连接、服务发现、数据读写、OTA升级
账户/云模块 登录注册、同步设置、云端健康数据同步
数据缓存 本地SQLite存储手表同步的数据
UI界面层 仪表盘、运动记录、健康报告、消息中心
通知中转 接收系统通知→转发给手表(通过BLE)

四、关键功能模块设计

🫀 1. 健康数据采集模块

传感器 驱动接口 功能 采样频率 数据存储周期
心率传感器 I2C 实时心率+动态HRV 1Hz~25Hz 每分钟采样一次
血氧传感器 I2C/SPI 静态SpO₂检测 每5分钟 本地保留1天
加速度计 I2C 步数/姿态/抬腕亮屏 25Hz 实时上传/本地同步

🔋 2. 电源管理模块

功能 实现方式
睡眠唤醒 RTC定时器 / 外部中断 / 抬腕触发
电量检测 ADC检测电池电压
充电状态 GPIO读取PMIC状态
电源模式 RUN / IDLE / DEEP SLEEP 模式切换

📲 3. 蓝牙数据交互流程(典型)

手机端发起连接 →
手表响应连接请求 →
完成配对和加密 →
APP获取Gatt服务 →
APP写入命令如“开始测心率” →
手表执行采样,定时Notify数据 →
APP接收并显示或上传云端

五、开发与调试接口

类型 接口说明
UART调试口 串口输出日志、CLI命令交互
BLE日志输出 通过自定义BLE服务上传日志
OTA升级 支持BLE OTA + 本地USB升级
模拟数据注入 PC工具通过BLE注入模拟传感器数据

六、软件版本管理与发布

阶段 内容
Alpha UI框架搭建,BLE通信验证
Beta 添加传感器处理、APP通信、健康算法
RC UI稳定,通信协议冻结,开始系统测试
Release 正式发布,导入OTA版本控制

七、后续开发建议

  • 增加支持多运动模式(跑步、骑行、游泳)
  • 加入NFC支付/公交卡模拟模块
  • 支持iOS/Android双平台自动适配
  • 后续考虑支持蓝牙双模(Classic + BLE)

附录

  • BLE GATT服务定义表
  • MCU端任务调度图
  • OTA数据包结构说明
  • APP-手表命令交互协议表

网站公告

今日签到

点亮在社区的每一天
去签到