Commit 82e9cb74b23449c247462493578cd928e049f7c3
1 parent
3df46521
USB JSON协议
1、优化重传机制增加 分片级重传 2、新增询问模式 和事务模式通信
Showing
1 changed file
with
44 additions
and
2 deletions
通讯协议-教育新版-基站部分usb json.md
... | ... | @@ -114,8 +114,8 @@ |
114 | 114 | |
115 | 115 | ## 1.2 发送方连续发送N包数据包,接收方无需回复 |
116 | 116 | 每个数据包都带一个字节的数据头: |
117 | -- 基站主动发送0xB2; | |
118 | -- sdk主动发送0xD2 | |
117 | +- 基站主动发送0xB2;下一字节表示当次传输序号从1开始 1-N | |
118 | +- sdk主动发送0xD2下一字节表示当次传输序号从1开始 1-N | |
119 | 119 | |
120 | 120 | ## 1.3 发送方发送询问 |
121 | 121 | | **字节** | **标识符** | **描述** | |
... | ... | @@ -147,6 +147,48 @@ |
147 | 147 | | 17-18 | This PACK Len |本次要传输的数据包长度 | |
148 | 148 | | 19-22 | This Pack crc32 | 本次要传输的数据crc32 | |
149 | 149 | | 23 | result | 接收方验证后回复结果:1-成功;2-失败 | |
150 | +| 24-N | result_information | 接收到的包号,依次往下写。接收方判断result为失败的时候查看这里可以直接做补传,后续直接发送0XB2 or0XD2 补传对应包 再询问| | |
151 | + | |
152 | + | |
153 | + | |
154 | +## 1.4 事务短包通信 | |
155 | +基站发送数据头:0XB5 SDK回复:0XB5 | |
156 | +数据量小于64字节的做精简通信,若需则可扩展的话增加第三字节(SDK&基站自己判断收齐做事情) 默认可以设定《64还是《128使用该协议 ,其他使用流通信。 | |
157 | + | |
158 | +| **字节** | **标识符** | **描述** | | |
159 | +| --- | --- | --- | | |
160 | +| 0 | Header | 数据包头:基站主动发送0x B5;sdk主动发送0Xd5 | | |
161 | +| 1-2 | com seq | 通信序号 | | |
162 | +| 3 | control bit| bit0-2:当前包总传输次数 <br>bit3-5:当前包传输次数<br>bit6-8:指定的基站编号,为0时候不指定| | |
163 | +| default | data | 数据包 | | |
164 | +| 60-63 | crc32 | 此数据包的crc32;从byte0-59共60个字节 | | |
165 | + | |
166 | + | |
167 | +## 1.5 问询精简通信 | |
168 | +该协议只在纯询问阶段使用。其他开始结束等等 通过原始指令 使用流模式或者事务模式 | |
169 | +| **字节** | **标识符** | **描述** | | |
170 | +| --- | --- | --- | | |
171 | +| 0 | Header | 数据包头:基站主动发送0x B6;sdk主动发送0Xd6 | | |
172 | +| 1-2 | com seq | 通信序号 | | |
173 | +| 3 | BASEID| 指定的基站编号,为0时候不指定| | |
174 | +| 4 | CMD| 索要数据包数据类型==》对应具体事务从1开始往下排根据数据类型来区分接收的数据长度等等数据类型| | |
175 | +| 5-6 | PACK| 数据编号| | |
176 | +| default | | | | |
177 | +| 60-63 | crc32 | 此数据包的crc32;从byte0-59共60个字节 | | |
178 | + | |
179 | + | |
180 | +回复该包之后 后续跟着0XB2/0XD2 的长透传数据包 | |
181 | +| **字节** | **标识符** | **描述** | | |
182 | +| --- | --- | --- | | |
183 | +| 0 | Header | 数据包头:基站主动发送0x B6;sdk主动发送0Xd6 | | |
184 | +| 1-2 | com seq | 通信序号 | | |
185 | +| 3 | BASEID| 指定的基站编号,为0时候不指定| | |
186 | +| 4 | CMD| 索要数据包数据类型==》对应具体事务从1开始往下排根据数据类型来区分接收的数据长度等等数据类型| | |
187 | +| 5-6 | PACK| 数据编号| | |
188 | +| 7-8 | This PACK Len| 本次要传输的数据包长度| | |
189 | +| 9-12 | This Pack crc32| 本次要传输的数据crc32| | |
190 | +| default | | | | |
191 | +| 60-63 | crc32 | 此数据包的crc32;从byte0-59共60个字节 | | |
150 | 192 | |
151 | 193 | |
152 | 194 | # 二, 功能协议 | ... | ... |