蓝牙广播通信方法、系统及其主设备、从设备技术方案

技术编号:26653655 阅读:23 留言:0更新日期:2020-12-09 00:57
本发明专利技术涉及了一种蓝牙广播通信方法、系统及其主设备、从设备,其中,应用在主设备中的蓝牙广播通信方法包括:获取待发射的原始数据,对所述原始数据进行分段并计算每个分段的分段校验值,根据所述原始数据和所述分段校验值生成发射数据;判断所述发射数据的当前发送次数是否达到预设次数;在未达到预设次数时,对所述发射数据进行蓝牙广播,以使从设备在接收到所述发射数据后,使用其中的分段校验值对其中的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。实施本发明专利技术的技术方案,多次重发机制可提升广播消息被正确接收的机率,而且,分段校验和重组机制可提升对突发且短暂干扰的抗干扰能力。

【技术实现步骤摘要】
蓝牙广播通信方法、系统及其主设备、从设备
本专利技术涉及蓝牙广播领域,尤其涉及一种蓝牙广播通信方法、系统及其主设备、从设备。
技术介绍
在蓝牙广播通信方式下,主设备对外进行数据广播,位于其周边的从设备均可接收其广播数据,而无需进行连接,相比传统的点对点通信方式可省去建立连接的时间。但是在存在干扰的情况下,广播包极易丢失或出错,而且,从设备又不会发射数据包,若主设备发射的数据包在干扰下未能被从设备正确接收,从设备也无法通知主设备让其进行重传,因此,数据传输的可靠性和连续性就无法得到保证。例如,近年来,随着智能手机的普遍化,蓝牙无线通信技术得到了广泛的应用,其中以手机为中心的蓝牙音箱及耳机等便携式音频设备更是深得消费者的青睐,但这些应用仍采用的是传统点到点的技术方式,一部手机只能将声音推送给一台音频设备,这种拓扑结构极大的限制了其应用领域。为此,蓝牙标准化组织(BluetoothSpecialInterestGroup)增加了一种一对多的广播式拓扑结构:基于无连接的从设备广播技术,简称CSB(ConnectionlessSlaveBroadcast)技术。CSB技术类似于FM广播技术,允许一个蓝牙设备作为蓝牙发射平台对外进行数据广播,位于其周边的蓝牙设备均可以自由接收其广播的数据而无需进行连接。由于蓝牙使用的波段为无需取得执照的2400–2483.5MHz短距离ISM无线电频段(IndustrialScientificMedicalBand),除了蓝牙外还有wifi、ZigBee等其它无线网络设备均工作在此范围的频段下,因此彼此干扰情况十分严重。另外,传统的点对点基于连接的蓝牙空中协议通过设备间的应答重传机制来确保蓝牙数据传输的正确性,若在干扰下收到的数据包校验有错,则接收设备会发送NAK应答包给发送设备要求其重发上次的数据包,如图1所示,主设备在发射时隙11发射的数据包,在接收时隙12接收从设备发射的应答包,主从设备双向发送,若从设备回的是NAK应答包,则主设备重发上次数据包,直到从设备回复ACK应答包。而基于无连接的CSB广播拓扑结构中,数据包由主设备单向发送,即,只有主设备发射数据包,而从设备不会发射数据包,每个包只发射一次,从设备不返回应答包,若主设备发射的数据包在干扰下未能被从设备正确接收,从设备也无法通知主设备让其进行重传。标准CSB协议的传输可靠性和连续性无法得到保证,难以应用于连续声音和图像传输,只适合于广告推送等对数据连续可靠性要求不高的应用场景。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术中无法保证数据传输的可靠性和连续性的缺陷,提供一种蓝牙广播通信方法、系统及其主设备、从设备。本专利技术解决其技术问题所采用的技术方案是:构造一种蓝牙广播通信方法,应用在主设备中,包括:获取待发射的原始数据,对所述原始数据进行分段并计算每个分段的分段校验值,根据所述原始数据和所述分段校验值生成发射数据;判断所述发射数据的当前发送次数是否达到预设次数;在未达到预设次数时,对所述发射数据进行蓝牙广播,以使从设备在接收到所述发射数据后,使用其中的分段校验值对其中的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。优选地,所述蓝牙广播包括:基于BLE协议广播或基于CSB协议广播;在对所述发射数据进行蓝牙广播之前,还包括:根据跳频协议选择当前的蓝牙广播发射频段。优选地,对所述发射数据进行蓝牙广播,包括:计算所述发射数据的整包校验值,并根据所述整包校验值及所述发射数据生成发射数据包,且将所述发射数据包进行蓝牙广播,以使从设备在接收到发射数据包后,先使用其中的整包校验值对其中的发射数据进行整包校验,并在整包校验通过时,从所述发射数据中提取原始数据,并结束本轮接收。优选地,计算所述发射数据的整包校验值,并根据所述整包校验值及所述发射数据生成发射数据包,且将所述发射数据包进行蓝牙广播,包括:计算所述发射数据的CRC校验值,并将所述CRC校验值拼接至相应发射数据的末尾,以生成发射数据包,再使用CSB协议对所述发射数据包进行蓝牙广播。优选地,根据所述原始数据和所述分段校验值生成发射数据,包括:将每个分段校验值与所述原始数据进行拼接,以生成发射数据。优选地,根据所述原始数据和所述分段校验值生成发射数据,包括:根据所述原始数据生成第一发射数据,根据所有分段校验值生成第二发射数据;所述判断所述发射数据的当前发送次数是否达到预设次数,包括:判断所述第一发射数据的当前发送次数是否达到第一预设次数;判断所述第二发射数据的当前发送次数是否达到第二预设次数;所述在未达到预设次数时,对所述发射数据进行蓝牙广播,包括:在所述第一发射数据的当前发送次数未达到第一预设次数时,对所述第一发射数据进行蓝牙广播;在所述第二发射数据的当前发送次数未达到第二预设次数时,对所述第二发射数据进行蓝牙广播。优选地,对所述发射数据进行蓝牙广播,包括:计算所述第一发射数据的第一整包校验值,并根据所述第一发射数据及其第一整包校验值生成第一发射数据包,且将所述第一发射数据包进行蓝牙广播,以使从设备接收到所述第一发射数据包后,先使用其中的第一整包校验值对其中的第一发射数据进行整包校验,若整包校验通过,则提取所述第一发射数据中的全部原始数据,并结束本轮接收;若整包校验不通过,则提取并保存所述第一发射数据中的全部原始数据,以供分段校验;计算所述第二发射数据的第二整包校验值,并根据所述第二发射数据及其第二整包校验值生成第二发射数据包,且将所述第二发射数据包进行蓝牙广播,以使从设备接收到所述第二发射数据包后,先使用其中的第二整包校验值对其中的第二发射数据进行整包校验,若整包校验通过,则提取所述第二发射数据中的分段校验值,并判断是否保存有待校验的原始数据,若是,则对所保存的待校验的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。本专利技术还构造一种蓝牙广播通信方法,应用在从设备中,包括:接收发射数据,其中,所述发射数据由主设备按预设次数通过蓝牙广播发送;获取所述发射数据中的原始数据和所述原始数据的分段校验值,使用其中的分段校验值对其中的原始数据进行分段校验,且对分段校验通过的分段数据进行保存;将校验通过的所述分段数据拼接成完整的原始数据。优选地,所述接收发射数据包括:基于BLE协议或CSB协议接收所述发射数据;接收发射数据之前,还包括:根据跳频协议选择当前的蓝牙接收频段。优选地,使用其中的分段校验值对其中的原始数据进行分段校验,且对分段校验通过的分段数据进行保存,包括:对所述发射数据中的原始数据进行分段,并对每个分段进行以下步骤:判断当前分段是否已进行过保存;若未进行过保存,则使用所述发射数据中的相应分段校验值对当前分段进行分段校验,并在分段校验通过时进行本文档来自技高网
...

【技术保护点】
1.一种蓝牙广播通信方法,应用在主设备中,其特征在于,包括:/n获取待发射的原始数据,对所述原始数据进行分段并计算每个分段的分段校验值,根据所述原始数据和所述分段校验值生成发射数据;/n判断所述发射数据的当前发送次数是否达到预设次数;/n在未达到预设次数时,对所述发射数据进行蓝牙广播,以使从设备在接收到所述发射数据后,使用其中的分段校验值对其中的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。/n

【技术特征摘要】
1.一种蓝牙广播通信方法,应用在主设备中,其特征在于,包括:
获取待发射的原始数据,对所述原始数据进行分段并计算每个分段的分段校验值,根据所述原始数据和所述分段校验值生成发射数据;
判断所述发射数据的当前发送次数是否达到预设次数;
在未达到预设次数时,对所述发射数据进行蓝牙广播,以使从设备在接收到所述发射数据后,使用其中的分段校验值对其中的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。


2.根据权利要求1所述的蓝牙广播通信方法,其特征在于,
所述蓝牙广播包括:基于BLE协议广播或基于CSB协议广播;
在对所述发射数据进行蓝牙广播之前,还包括:
根据跳频协议选择当前的蓝牙广播发射频段。


3.根据权利要求1所述的蓝牙广播通信方法,其特征在于,对所述发射数据进行蓝牙广播,包括:
计算所述发射数据的整包校验值,并根据所述整包校验值及所述发射数据生成发射数据包,且将所述发射数据包进行蓝牙广播,以使从设备在接收到发射数据包后,先使用其中的整包校验值对其中的发射数据进行整包校验,并在整包校验通过时,从所述发射数据中提取原始数据,并结束本轮接收。


4.根据权利要求3所述的蓝牙广播通信方法,其特征在于,计算所述发射数据的整包校验值,并根据所述整包校验值及所述发射数据生成发射数据包,且将所述发射数据包进行蓝牙广播,包括:
计算所述发射数据的CRC校验值,并将所述CRC校验值拼接至相应发射数据的末尾,以生成发射数据包,再使用CSB协议对所述发射数据包进行蓝牙广播。


5.根据权利要求1-4任一项所述的蓝牙广播通信方法,其特征在于,根据所述原始数据和所述分段校验值生成发射数据,包括:
将每个分段校验值与所述原始数据进行拼接,以生成发射数据。


6.根据权利要求1-4任一所述的蓝牙广播通信方法,其特征在于,根据所述原始数据和所述分段校验值生成发射数据,包括:
根据所述原始数据生成第一发射数据,根据所有分段校验值生成第二发射数据;
所述判断所述发射数据的当前发送次数是否达到预设次数,包括:
判断所述第一发射数据的当前发送次数是否达到第一预设次数;
判断所述第二发射数据的当前发送次数是否达到第二预设次数;
所述在未达到预设次数时,对所述发射数据进行蓝牙广播,包括:
在所述第一发射数据的当前发送次数未达到第一预设次数时,对所述第一发射数据进行蓝牙广播;
在所述第二发射数据的当前发送次数未达到第二预设次数时,对所述第二发射数据进行蓝牙广播。


7.根据权利要求6所述的蓝牙广播通信方法,其特征在于,对所述发射数据进行蓝牙广播,包括:
计算所述第一发射数据的第一整包校验值,并根据所述第一发射数据及其第一整包校验值生成第一发射数据包,且将所述第一发射数据包进行蓝牙广播,以使从设备接收到所述第一发射数据包后,先使用其中的第一整包校验值对其中的第一发射数据进行整包校验,若整包校验通过,则提取所述第一发射数据中的全部原始数据,并结束本轮接收;若整包校验不通过,则提取并保存所述第一发射数据中的全部原始数据,以供分段校验;
计算所述第二发射数据的第二整包校验值,并根据所述第二发射数据及其第二整包校验值生成第二发射数据包,且将所述第二发射数据包进行蓝牙广播,以使从设备接收到所述第二发射数据包后,先使用其中的第二整包校验值对其中的第二发射数据进行整包校验,若整包校验通过,则提取所述第二发射数据中的分段校验值,并判断是否保存有待校验的原始数据,若是,则对所保存的待校验的原始数据进行分段校验,并对分段校验通过的分段数据进行保存,以用于拼接成完整的原始数据。


8.一种蓝牙广播通信方法,应用在从设备中,其特征在于,包括:
接收发射数据,其中,所述发射数据由主设备按预设次数通过蓝牙广播发送;
获取所述发射数据中的原始数据和所述原始数据的分段校验值,使用其中的分段校验值对其中的原始数据进行分段校验,且对分段校验通过的分段数据进行保存;
将校验通过的所述分段数据拼接成完整的原始数据。


9.根据权利要求8所述的蓝牙广播通信方法,其特征在于,
所述接收发射数据包括:基于BLE协议或CSB协议接收所述发射数据;
接收发射数据之前,还包括:
根据跳频协议选择当前的蓝牙接收频段。


10.根据权利要求8所述的蓝牙广播通信方法,其特征在于,使用其中的分段校验值对其中的原始数据进行分段校验,且对分段校验通过的分段数据进行保存,包括:
对所述发射数据中的原始数据进行分段,并对每个分段进行以下步骤:
判断当前分段是否已进行过保存;
若未进行过保存,则使用所述发射数据中的相应分段校验值对当前分段进行分段校验,并在分段校验通过时进行保存;
若已进行过保存,则将当前分段进行丢弃。


11.根据权利要求8所述的蓝牙广播通信方法,其特征在于,接收发射数据,包括:
接收发射数据包,并获取所述发射数据包中的整包校验值及发射数据,根据所述整包校验值对所述发射数据进行整包校验,且在整包校验通过时,从所述发射数据中提取原始数据,并结束本轮接收,在整包校验未通过时,启动分段校验。


12.根据权利要求11所述的蓝牙广播通信方法,其特征在于,接收发射数据,包括:
使用CSB协议接收发射数据包,并获取所述发射数据包中的CRC校验值及发射数据,根据所述CRC校验值对所述发射数据进行CRC校验,且在CRC校验通过时,从所述发射数据中提取原始数据,并结束本轮接收,在CRC校验未通过时,启动分段校验。


13.根据权利要求11或12所述的蓝牙广播通信方法,其特征在于,包括:
步骤S31.接收第一发射数据包,并获取所述第一发射数据包中的第一发射数据及其第一整包校验值,根据所述第一整包校验值对所述第一发射数据进行整包校验;接收第...

【专利技术属性】
技术研发人员:吴瑞
申请(专利权)人:合肥炬芯智能科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1