最大包长为32字节 | 字节序号 | 数据类型 | 含义 | 备注 | | ---- | ---------- | ------------ | -------------------------------------- | | 0 | uint8_t | 数据标识符 | 固定为0xF1 | | 1 | uint8_t | 数据标识符 | 固定为0xF1 | | 2 | uint8_t | 包长度 |从包长度字节开始直到帧尾中间所有字节数 | | 3 | uint8_t | 指令ID | 表示当前指令功能,详见下放指令ID对照表 | | 4 | uint8_t[n] | 数据内容 | 详见下方数据内容格式 | | 4+n | uint16_t | 校验码 | 使用crc16计算校验值,从包长度开始计算直到校验码前字节|
| 指令ID | 指令功能 | 备注 |
|---|---|---|
| 0x01 | 获取版本号 | 数据内容为版本号,1字节 |
| 0x02 | 配置蓝牙mac地址和广播名称 | 数据内容为mac地址长度+mac地址+广播名称长度+广播名称 |
| 0x03 | 透传APP数据,具体APP数据格式详见下方APP与蓝牙间通信协议 | |
| 0x04 | 蓝牙连接事件 | |
| 0x05 | 蓝牙断开连接事件 |
例如:F1F1040108303D
| 数据标识符 | 数据标识符 | 包长度 | 指令ID | 数据内容 | 校验码 |
|---|---|---|---|---|---|
| 0xF1 | 0xF1 | 0x04 | 0x01 | 0x08 | 0x303D |
2.1 查询can数据
| 字节序号 | 数据类型 | 功能 | 备注 |
|---|---|---|---|
| 1 | uint8_t | 指令类型 | 0x51 |
| 2 | uint8_t | 数据包序号 | 从0到125循环递增,不包括125 |
| 3 | uint8_t | 数据帧类型 | 标准帧(00),扩展帧(04) |
| 4 | uint32_t | 数据帧ID | |
| 8 | uint8_t | 数据内容长度 | |
| 9 | uint8_t[n] | 数据内容 | 最大为8字节 |
2.2 查询can数据回复
| 字节序号 | 数据类型 | 功能 | 备注 |
|---|---|---|---|
| 1 | uint8_t | 指令类型 | 0x52 |
| 2 | uint8_t | 数据包序号 | 从0到125循环递增,不包括125,起始值与主机下发的相对应 |
| 3 | uint8_t | 数据帧类型 | 标准帧(00),扩展帧(04) |
| 4 | uint32_t | 数据帧ID | |
| 8 | uint8_t | 数据内容长度 | |
| 9 | uint8_t[n] | 数据内容 | 最大为8字节 |