DCS/ruiyiweiUX/Assets/DCS项目串口通信协议说明书.md

4.6 KiB
Raw Blame History

DCS 项目串口通信协议说明书
版本 日期 负责人 主要内容
Version v1.0.0v1.0.0 2025-10-17 开发部/覃陆孙 通信协议与示例帧
**1. **通信参数
项目 参数
通信方式 UARTRS232/TTL 兼容)
波特率 115200 bps
数据位 8
停止位 1
校验位 None
流控 None
通信方向 双向(嵌入式主控 ↔ 安卓上位机)
字节序 Little Endian
**2. **通信帧格式
字段 长度**(Byte)** 说明
帧头 2 固定: 0xAA 0x55
命令字 1 指令类型(握手/心跳/上报/报警等)
数据长度 1 数据区字节数
数据区 N 实际数据内容
校验 1 从“命令字”到“数据区最后字节”的异或校验
帧尾 2 固定: 0x0D 0x0A
**3. **命令字定义
命令字 方向 含义
0x01 下→上 握手应答 + 时间同步
0x02 上→下 握手请求
0x03 上→下 心跳上报(含状态)
0x04 下→上 心跳应答
0x05 下→上 报警控制命令(开启/关闭/等级)
0x06 上→下 数据上报BFI、电量、温度等
0x07 下→上 参数查询或设置命令
0x08 上→下 告警状态反馈
0x09 下→上 时间同步命令(可选)
**4. **协议说明 **4.1 **握手流程(上电后)
嵌入式上电后主动发送握手请求:
字段 示例值 说明
帧头 AA 55 固定
命令字 0x02 握手请求
数据长度 1 固件版本号长度
数据 0x01 固件版本 V1
校验 XOR 异或和
帧尾 0D 0A 固定

上位机收到后返回时间同步帧: AA 55 01 05 YY MM DD HH mm ss CS 0D 0A

4.2 心跳与状态上报(周期 1s****

命令字0x03

字段 长度 说明
BFI 血流值 4 float, 嵌入式算法计算结果
电池电量 1 百分比 0100%
电池电压 2 单位 mV
内部温度 2 单位 0.1°C
激光器状态 1 0=异常1=工作,2=停止
电源类型 1 0=AC,1=BAT
保留扩展 4 预留字段
校验 1 异或校验

上位机应答帧: AA 55 04 01 00 CS 0D 0A

**4.3 报警控制命令(上位机 → **嵌入式)

命令字:0x05

字段 长度 说明
报警代码 1 见下方报警表
报警级别 1 0=低,1=中,2=高
报警状态 1 0=清除,1=触发
校验 1 异或校验

示例: AA 55 05 03 31 02 01 CS 0D 0A → 表示触发高优先报警代码31电池电量<5%

嵌入式根据报警等级执行:

优先级 指示灯
详细见《报警声光表达》
-
-
**4.4 数据上报(嵌入式 → **上位机)

命令字:0x06

字段 长度 说明
BFI 数据 4 Float 32 位
电池电量 1 百分比
电压 2 mV
内部温度 2 0.1°C
激光器状态 1 0=关,1=开,2=异常
电源状态 1 0=AC,1=BAT
扩展保留 4 预留字段
校验 1 异或校验

示例: AA 55 06 0B 42 48 00 00 64 0F 27 01 2C 00 01 00 00 00 CS 0D 0A → BFI=50.0,电量=100%,电压=9999mV温度=30.0°C激光状态工作中

**5. **报警代码表
报警代码 优先级 报警原因 报文方向
11 电池电量低(<40% 下位→上位
21 电池电量低(<20% 下位→上位
31 电池电量空(<5% 下位→上位
32 BFI 数值异常 上位→下位
22 激光器温度异常 上位→下位
33 激光器工作异常 上位→下位
34 通信异常 上位→下位
35 电池故障 上位→下位
12 交流电未连接 上位→下位
**6. **典型通信时序流程
MCU Android
握手请求 (0x02) ->
<- 握手应答 + 时间同步 (0x01)
周期心跳上报 (0x03) ->
<- 心跳应答 (0x04)
<-触发报警 33高优先
确认并执行灯光报警 ->
周期数据上报 (0x06) ->