3.0、通讯格式
协议结构如下:
帧头 | 包头数据 | 数据域 | 包校验 | 帧尾 |
0xA5(8byte) | (14byte) | (Nbyte) | (2byte) | 0X5A(1 byte) |
A5 A5 A5 A5 A5 A5 A5 A5 | FE FF 00 08 00 00 00 00 00 00 FE 02 XX 00 | 命令组+命令功能编号+数据长度+数据 | 两位CRC16 | 5A |
以下为协议中各项数据的说明:
1. 帧头由 8 个字节的0xA5组成,帧尾由一个字节的0x5A组成。帧头采用8个帧头,是为了防止0xA5丢失导致数据接收错误。在接收数据时,只要接收到一个0xA5就可认为接收到了帧头,然后等待下一个不是0xA5的数据,该数据为该帧的第一个有效数据。
2. 包头数据包含本包数据的一些属性,其定义参考包头数据格式定义。
3. 数据域为用户协议层数据,参考数据域定义。
4. 包校验为包头数据和数据域的校验值(CRC16 校验算法参考附录)。