您的足迹:首页 > 蓝牙BLE >Android BLE蓝牙一个包只有20个字节,我的数据超过20字节怎么办?

Android BLE蓝牙一个包只有20个字节,我的数据超过20字节怎么办?

______________________________________________________________

Android BLE 框架发布,功能全面,简单易用:

https://github.com/a1anwang/okble

______________________________________________________________

蓝牙一个包最多只能发送20字节的命令,如果一个命令为30字节,那么肯定要分包发送

1字节 2个长度 如:0x01

 

那么分包发送需要一套规则,来让设备端解析,然后把包合起来,才能收到完整命令

 

 

比如要发送30个字节命令如下:

12345678900987654321ABCDEFFEDCBA01  23456789012345678901234567  60个长度)

 

 

规定 0400 开头的表示 分包数据开始

 

那么app发送的第一个包为:0400 02   其中的02 表示,分包的总包数为2

 

那么第二个包为:0401  01  12345678900987654321ABCDEFFEDCBA0117个数据字节)

                   其中0401 表示这是分包数据  01 表示 这是第1个包  后面的17 字节就是第一个包的数据

 

第三个包为:0401  02  23456789012345678901234567  13个数据字节)

                   其中0401 表示这是分包数据  02 表示 这是第2个包  后面的13 字节就是第二个包的数据

 

设备那边收到这些命令 可以得到 总包数 2 ,然后拼装起来得到总命令。

这只是一个简单的规则,大致表达了这个意思。

相关推荐

发表评论

路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(1)

<a href=http://guod.me/bg/detoxic-moeto-mnenie-i-lichen-opit-ot-upotrebata-na-narkotitsi-sreshhu-paraziti.html>http://guod.me/bg/detoxic-moeto-mnenie-i-lichen-opit-ot-upotrebata-na-narkotitsi-sreshhu-paraziti.html</a>
Eugenedries 1年前 (2017-04-30) 回复