数据帧协议定义

555

# 数据帧协议定义

通讯流程 通讯流程/有效通讯

上位机 播放盒
1.发送请求消息 1.返回指令发送成功状态码 2.返回响应消息

通讯流程/无效通讯(如LRC错误)

上位机 播放盒
1.发送请求消息 1.返回失败状态码

数据帧协议格式
协议格式采用面向字节的连接帧,每一帧数据需根据后面的协议定义进行数据封装才能被中控识别。整体封装格式如下:
上位机发送:
<STX><FLAG><DataInfo><ETX><LRC>
设备回应:
<STX><FLAG><ACK><ETX><LRC> 或者<STX><FLAG><NAK><ETX><LRC>

字段 描述 十六进制编码
STX 起始符 0x02
FLAG 标志位 串口:0x10、TCP:0x11、UDP:0x12
DataInfo 数据--- (中控用以执行的数据)
ETX 结束符 0x03
LRC 纵向冗余校验 ---
ACK 发送成功 0x06
NAK 发送失败 0x15

LRC纵向冗余校验
目前发送指令帧盒子没有进行校验,上位机发送可固定为32,盒子回复的帧采用LRC求和校验。
计算规则为对标志位到结束符进行按位异或操作(^),
例如 02 10 34 39 39 30 31 30 03 16
求和校验计算方式为:10^34^39^39^30^31^30^03 = 16
java求和检验代码如下:其中byte数组byteData为回复的数据信息。
img