用于蓝牙通讯的数据传输方法和装置以及存储介质制造方法及图纸

技术编号:23406314 阅读:21 留言:0更新日期:2020-02-22 17:04
本发明专利技术公开了一种用于蓝牙通讯的数据传输方法和装置以及存储介质,该方法包括:将待传输的多条数据按顺序存储在数据队列中;从数据队列中依次取出多条数据中的一条数据并发送所取出的一条数据;其中,发送所取出的一条数据包括:将所取出的一条数据拆分为多个数据包,并将多个数据包按顺序存储在封装队列中;依次发送封装队列中的多个数据包。本发明专利技术的上述技术方案,至少能够解决在蓝牙传输大数据时容易发生数据顺序错乱而导致接收到的数据不可解析的问题。

Data transmission method and device and storage medium for Bluetooth communication

【技术实现步骤摘要】
用于蓝牙通讯的数据传输方法和装置以及存储介质
本专利技术涉及蓝牙传输
,具体来说,涉及一种用于蓝牙通讯的数据传输方法和装置以及存储介质。
技术介绍
随着物联网的兴起,越来越多的设备与物联网相关联。由于蓝牙通讯技术具有较远的控制距离,且范围内不受位置影响,因此完美的替代了红外控制和有线控制。所以蓝牙通讯技术也越来越多的被应用于物联网设备,比如蓝牙门锁、蓝牙电灯、蓝牙手表等。通常在使用蓝牙通讯时,小数据可以通过一次性发送而到达例如智能门锁端的接收端。然而当数据量较大时,蓝牙无法实现一次性传输这样的大数据。因此就要对大数据进行拆包处理,即把大数据拆分成多个小数据块,然后在经过多次发送到达智能门锁端之后,再由智能门锁端将多个小数据块拼接成完整的大数据,由此完成大数据的蓝牙通讯传输。上述的蓝牙通讯传输方法所带来的问题也随之而来。当与数据接收端(例如智能门锁等)需要较大数据量通讯时,便会出现数据接收端收到的数据无法解析的问题。例如,智能门锁的用户列表及其对应的钥匙列表数据,该数据较大,所以需要对数据进行拆包后再进行传输。拆分后的小数据包在发送时就有可能出现顺序错乱,导致智能门锁无法对收到的数据进行解析和处理。然而这种实现方案可能会出现拆包后的小数据块发送顺序错乱的问题,进而导致智能门锁端接收并拼接的大数据无法正常解析。这种问题会在连续上传大数据时频繁出现。
技术实现思路
针对相关技术中的上述问题,本专利技术提出一种用于蓝牙通讯的数据传输方法和装置以及存储介质,能够解决在蓝牙传输大数据时容易发生数据顺序错乱而导致接收到的数据不可解析的问题。本专利技术的技术方案是这样实现的:根据本专利技术的一个方面,提供了一种用于蓝牙通讯的数据传输方法,包括:将待传输的多条数据按顺序存储在数据队列中;从数据队列中依次取出多条数据中的一条数据;发送所取出的一条数据,包括:将所取出的一条数据拆分为多个数据包,并将多个数据包按顺序存储在封装队列中;依次发送封装队列中的多个数据包。根据本专利技术的实施例,发送所取出的一条数据还包括:将所要发送的数据包的发送方式设置为发送成功后返回回执;在所要发送的数据包发送成功之后,从封装队列中移除发送成功的数据包。根据本专利技术的实施例,在移除发送成功的数据包之后还包括:判断封装队列是否为空,若是,则从数据队列中移除一条数据并取出和发送下一条数据直到数据队列为空。根据本专利技术的实施例,发送所取出的一条数据还包括:判断所取出的数据是否大于预定大小;其中,根据判断结果将大于预定大小的数据拆分为多个数据包。其中,根据判断结果,直接发送不大于预定大小的数据。根据本专利技术的另一方面,提供了一种用于蓝牙通讯的数据传输装置,包括:数据存储模块,用于将待传输的多条数据按顺序存储在数据队列中;数据取出模块,用于从数据队列中依次取出多条数据中的一条数据;数据发送模块,用于发送所取出的一条数据,包括:数据包存储单元,用于将所取出的一条数据拆分为多个数据包,并将多个数据包按顺序存储在封装队列中;数据包发送单元,用于依次发送封装队列中的多个数据包。根据本专利技术的实施例,数据发送模块还包括:数据包设置单元,用于将所要发送的数据包的发送方式设置为发送成功后返回回执;数据包移除单元,用于在所要发送的数据包发送成功之后,从封装队列中移除发送成功的数据包。根据本专利技术的实施例,数据发送模块还包括:第一判断单元,用于判断封装队列是否为空,其中,若第一判断单元判断封装队列为空,则数据取出模块从数据队列中移除一条数据并取出和发送下一条数据直到数据队列为空。根据本专利技术的实施例,数据发送模块还包括:第二判断单元,用于判断所取出的数据是否大于预定大小;其中,数据包存储单元根据判断结果将大于预定大小的数据拆分为多个数据包;数据包发送单元根据判断结果,直接发送不大于预定大小的数据。根据本专利技术的又一方面,提供了一种存储介质,存储有程序,程序被执行以实现上述的用于蓝牙通讯的数据传输方法。本专利技术通过数据队列来按顺序存储需要发送给接收端的多条数据的数组队列,并且通过封装队列来按顺序存储数据队列中的数据拆包之后的数据包的数组队列。这样,数据队列保证了多条数据的发送顺序,封装队列保证了同一条数据的多个数据包的发送顺序。因此,本专利技术提供的数据传输方法,通过对数据队列和封装队列这两个顺序队列的维护,能够解决现有技术中同一条数据拆包之后发送顺序错乱的问题以及在多发送条数据时顺序错乱的问题,保证了数据拆包后的数据包的发送顺序,也保证了多条数据的发送顺序。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的用于蓝牙通讯的数据传输方法的流程图;图2是根据本专利技术另一个实施例的用于蓝牙通讯的数据传输方法的流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。图1是根据本专利技术实施例的用于蓝牙通讯的数据传输方法的流程图。如图1所示,根据本专利技术实施例的用于蓝牙通讯的数据传输方法可以包括以下步骤:S110,将待传输的多条数据按顺序存储在数据(data)队列中。待传输的多条数据可以是蓝牙数据,例如是要发送给接收端(智能门锁端)的蓝牙数据。S120,从数据队列中依次取出多条数据中的一条数据。S130,发送所取出的一条数据。其中,在步骤S130处可以通过以下步骤来发送所取出的一条数据。S131,将所取出的一条数据拆分为多个数据包,并将多个数据包按顺序存储在封装(package)队列中。S132,依次发送封装队列中的多个数据包。本专利技术的上述技术方案,通过数据队列来按顺序存储需要发送给接收端的多条数据的数组队列,并且通过封装队列来按顺序存储数据队列中的数据拆包之后的数据包的数组队列。这样,数据队列保证了多条数据的发送顺序,封装队列保证了同一条数据的多个数据包的发送顺序。因此,本专利技术提供的数据传输方法,通过对数据队列和封装队列这两个顺序队列的维护,能够解决现有技术中同一条数据拆包之后发送顺序错乱的问题以及在多发送条数据时顺序错乱的问题,保证了数据拆包后的数据包的发送顺序,也保证了多条数据的发送顺序。图2是根据本专利技术另一个实施例的用于蓝牙通讯的数据传输方法的流程图。如图2所示,本专利技术提供的数据传输方法可以具体包括以下步骤:S201,接收数据发送请求,并响应于数据发送请求而在接收到数据发送请求之后执行步骤S202。<本文档来自技高网...

【技术保护点】
1.一种用于蓝牙通讯的数据传输方法,其特征在于,包括:/n将待传输的多条数据按顺序存储在数据队列中;/n从所述数据队列中依次取出所述多条数据中的一条数据;/n发送所取出的所述一条数据,包括:/n将所取出的所述一条数据拆分为多个数据包,并将所述多个数据包按顺序存储在封装队列中;/n依次发送所述封装队列中的所述多个数据包。/n

【技术特征摘要】
1.一种用于蓝牙通讯的数据传输方法,其特征在于,包括:
将待传输的多条数据按顺序存储在数据队列中;
从所述数据队列中依次取出所述多条数据中的一条数据;
发送所取出的所述一条数据,包括:
将所取出的所述一条数据拆分为多个数据包,并将所述多个数据包按顺序存储在封装队列中;
依次发送所述封装队列中的所述多个数据包。


2.根据权利要求1所述的用于蓝牙通讯的数据传输方法,其特征在于,发送所取出的所述一条数据还包括:
将所要发送的数据包的发送方式设置为发送成功后返回回执;
在所要发送的所述数据包发送成功之后,从所述封装队列中移除发送成功的所述数据包。


3.根据权利要求2所述的用于蓝牙通讯的数据传输方法,其特征在于,在移除发送成功的所述数据包之后还包括:
判断所述封装队列是否为空,
若是,则从所述数据队列中移除所述一条数据并取出和发送下一条数据直到所述数据队列为空。


4.根据权利要求1所述的用于蓝牙通讯的数据传输方法,其特征在于,发送所取出的所述一条数据还包括:
判断所取出的所述数据是否大于预定大小;
其中,根据判断结果将大于所述预定大小的数据拆分为多个数据包。


5.根据权利要求4所述的用于蓝牙通讯的数据传输方法,其特征在于,
根据判断结果,直接发送不大于所述预定大小的数据。


6.一种用于蓝牙通讯的数据传输装置,其特征在于,包括:
数据存储模块,用于将待传输的多条数据按顺序存储在数据队列中;
...

【专利技术属性】
技术研发人员:孙吉平孔彬
申请(专利权)人:北京深思数盾科技股份有限公司
类型:发明
国别省市:北京;11

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

1