建立蓝牙链路的方法、装置、蓝牙芯片及设备与流程

阅读: 评论:0



1.本技术实施例涉及蓝牙技术领域,特别涉及一种建立蓝牙链路的方法、装置、蓝牙芯片及设备。


背景技术:



2.低功耗蓝牙(bluetooth low energy,ble)作为一种在经典蓝牙(bluetooth classic,bt)基础上演进而来的蓝牙技术,具有更低的成本与功耗。
3.并且,相较于经典蓝牙设备,ble设备支持同时建立更多的蓝牙链路。比如,经典蓝牙设备支持最多同时建立7条蓝牙链路,而ble设备则支持同时建立7条以上蓝牙链路。


技术实现要素:



4.本技术实施例提供了一种建立蓝牙链路的方法、装置、蓝牙芯片及设备。所述技术方案如下:
5.一方面,本技术实施例提供了一种在从设备中建立蓝牙链路的方法,所述方法包括:
6.与至少一个第一主设备建立至少一条第一蓝牙链路;
7.向第二主设备发送各条所述第一蓝牙链路的第一链路参数;
8.从所述第二主设备接收链路建立请求,所述链路建立请求用于请求与所述从设备建立第二蓝牙链路,所述链路建立请求中包含所述第二蓝牙链路的第二链路参数,所述第二链路参数由所述第二主设备基于所述第一链路参数确定得到;以及,
9.基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
10.另一方面,本技术实施例提供了一种在主设备中建立蓝牙链路的方法,所述方法包括:
11.从从设备接收各条第一蓝牙链路的第一链路参数,所述从设备与至少一个第一主设备建立至少一条所述第一蓝牙链路;
12.基于所述第一链路参数确定第二蓝牙链路的第二链路参数,所述第二蓝牙链路位于所述从设备和所述第二主设备之间;以及,
13.向所述从设备发送包括所述第二链路参数的链路建立请求,以便所述从设备基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
14.另一方面,本技术实施例提供了一种在从设备中建立蓝牙链路的装置,所述装置包括:
15.第一建立模块,用于与至少一个第一主设备建立至少一条第一蓝牙链路;
16.参数提供模块,用于向第二主设备发送各条所述第一蓝牙链路的第一链路参数;
17.请求接收模块,用于从所述第二主设备接收链路建立请求,所述链路建立请求用于请求与所述从设备建立第二蓝牙链路,所述链路建立请求中包含所述第二蓝牙链路的第二链路参数,所述第二链路参数由所述第二主设备基于所述第一链路参数确定得到;以及,
18.第二建立模块,用于基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
19.另一方面,本技术实施例提供了一种在主设备中建立蓝牙链路的装置,所述装置包括:
20.参数获取模块,用于从从设备接收各条第一蓝牙链路的第一链路参数,所述从设备与至少一个第一主设备建立至少一条所述第一蓝牙链路;
21.第二参数确定模块,用于基于所述第一链路参数确定第二蓝牙链路的第二链路参数,所述第二蓝牙链路位于所述从设备和所述第二主设备之间;以及,
22.请求发送模块,用于向所述从设备发送包括所述第二链路参数的链路建立请求,以便所述从设备基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
23.另一方面,本技术实施例提供了一种蓝牙芯片,所述蓝牙芯片包括可编程逻辑电路和/或程序指令,当所述蓝牙芯片运行时,用于实现如上述方面所述的在从设备中建立蓝牙链路的方法,或,实现如上述方面所述的在主设备中建立蓝牙链路的方法。
24.另一方面,本技术实施例提供了一种具有蓝牙功能的电子设备,所述电子设备中设置有如上述方面所述的蓝牙芯片。
25.另一方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由蓝牙芯片加载并执行以实现如上述方面所述的在从设备中建立蓝牙链路的方法,或,在主设备中建立蓝牙链路的方法。
26.另一方面,本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的蓝牙芯片从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述方面的各种可选实现方式中提供的在从设备中建立蓝牙链路的方法,或,在主设备中建立蓝牙链路的方法。
27.本技术实施例提供的技术方案可以带来如下有益效果:
28.从设备与第一主设备之间完成第一蓝牙链路建立,并需要与第二主设备建立第二蓝牙链路时,从设备通过向第二主设备提供第一蓝牙链路对应的第一链路参数,使第二主设备能够根据第一链路参数,确定第二蓝牙链路与已建立的第一蓝牙链路不存在调度冲突时(即第二蓝牙链路上的调度时间点与各条第一蓝牙链路上的调度时间点均不同)采用的第二链路参数,并基于该第二链路参数向从设备发送链路建立请求,进而与从设备之间建立第二蓝牙链路;采用本技术实施例提供的方案,从设备通过预先提供已建立蓝牙链路的链路信息,使待建立连接的主设备能够在链路建立阶段通过调整链路参数来规避多蓝牙链路之间的调度冲突,避免因多蓝牙链路之间调度冲突导致业务中断的问题,并有助于提高
多链路带宽和空口利用率。
附图说明
29.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
30.图1示出了本技术一个示例性实施例提供的实施环境的示意图;
31.图2是相关技术中多链路场景下主设备调度冲突过程的示意图;
32.图3示出了本技术一个示例性实施例提供的建立蓝牙链路的方法的流程图;
33.图4示出了本技术另一个示例性实施例提供的建立蓝牙链路的方法的流程图;
34.图5是本技术一个示例性实施例示出的蓝牙广播发送过程的实施示意图;
35.图6是本技术一个示例性实施例示出的负载中第一链路参数的示意图;
36.图7是本技术一个示例性实施例示出的第一主设备和第二主设备各自对应调度时间点的示意图;
37.图8是本技术一个示例性实施例示出的蓝牙链路建立过程的时序图;
38.图9示出了本技术一个实施例提供的在从设备中建立蓝牙链路的装置的结构框图;
39.图10示出了本技术另一个实施例提供的在主设备中建立蓝牙链路的装置的结构框图;
40.图11示出了本技术一个示例性实施例提供的具有蓝牙功能的电子设备的结构方框图。
具体实施方式
41.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
42.请参考图1,其示出了本技术一个示例性实施例提供的实施环境的示意图,该实施环境中包括多个主设备110(master)和从设备120(slave)。
43.主设备110和从设备120均是具有蓝牙功能的电子设备。在一种可能的实施方式中,主设备110和从设备120均ble设备。其中,主设备110处于主设备模式,而从设备120处于从设备模式,且工作在主设备模式的电子设备可以主动搜索周围其他蓝牙设备并选择需要连接的蓝牙设备,而工作在从设备模式的电子模式则只能够被其他电子设备搜索而无法主动搜索。
44.在一些实施例中,主设备110可以是智能手机、平板电脑、可穿戴式设备、个人计算机等等,从设备120可以是智能音箱、蓝牙耳机、电视、智能手机等等。图1中以主设备110和从设备120均为智能手机为例进行说明,但并不对此构成限定。
45.本技术实施例中,从设备120可以同时与多个主设备110建立蓝牙链路。其中,该蓝牙链路可以为acl(asynchronous connection less)链路(主要用于分组数据传输)。示意性的,如图1所示,从设备120与第一主设备111之间建立有第一蓝牙链路,且与第二主设备
112之间建立有第二蓝牙链路,从设备120通过第一蓝牙链路与第一主设备111进行数据传输,从设备120通过第二蓝牙链路与第二主设备112进行数据传输。
46.需要说明的是,上述实施例仅以从设备与两个主设备建立蓝牙链路为例进行说明,在其他可能的实施方式中,从设备可以与至少三个主设备建立蓝牙链路,本实施例并不对此构成限定。
47.相关技术中,与从设备建立蓝牙链路的各个主设备决定各自的调度时间点,并进行周期性调度,实现与从设备之间的数据传输,其中,该调度时间点基于初始调度时间点以及调度间隔确定得到。
48.示意性的,如图2所示,从设备与第一主设备建立有第一蓝牙链路,与第二主设备建立有第二蓝牙链路。第一主设备的初始调度时间点为t0,基于第一调度间隔,第一主设备分别在t0时刻、t1时刻以及t2时刻与从设备进行数据收发;第二主设备的初始调度时间点为t3,基于第二调度间隔,第二主设备分别在t3时刻、t4时刻以及t5时刻与从设备进行数据收发。
49.然而,由于第一主设备和第二主设备之间互不知悉对方的调度时间点,而当第一主设备和第二主设备的调度时间点重合时,将会出现调度冲突。而当出现调度冲突时,从设备会基于主设备的优先级、收发性能等因素,选择通过其中一条蓝牙链路与主设备进行数据传输。
50.示意性的,如图2所示,第一主设备的调度时间点t1与第二主设备的调度时间点t4重合,由于第一主设备的优先级高于第二主设备的优先级,因此从设备选择通过第一蓝牙链路与第一主设备进行数据传输,而从设备与第二主设备之间的业务则因调度冲突打断。
51.而本技术实施例中,从设备通过预先提供已建立蓝牙链路的链路参数,使待建立连接主设备能够基于该链路参数,确定出已连接主设备的调度时间点,并通过调整链路参数避免与已连接主设备发生调度冲突,进而基于调整后的链路参数与从设备建立蓝牙链路,避免多链路场景下从设备与主设备之间的业务因调度冲突而中断;并且,通过合理规划各个主设备的调度时间点,能够提高多链路带宽以及空口利用率。
52.请参考图3,其示出了本技术一个示例性实施例提供的建立蓝牙链路的方法的流程图,本实施例以该方法用于图1所示的实施环境为例进行说明,该方法包括:
53.步骤301,从设备与至少一个第一主设备建立至少一条第一蓝牙链路。
54.本实施例中,第一主设备指已经与从设备建立蓝牙链路的主设备。
55.在一种可能的实施方式中,从设备依次与各个第一主设备建立第一蓝牙链路,且各条第一蓝牙链路之间不存在调度冲突。其中,当从设备与首个第一主设备建立蓝牙链路时,该第一主设备向从设备发送包含自身调度间隔的链路建立请求,从设备即根据该链路建立请求与第一主设备建立首条第一蓝牙链路。与后续第一主设备建立蓝牙链路时,为了避免调度冲突,从设备则需要通过链路参数共享机制,指示后续第一主设备基于已连接主设备的链路参数对自身链路参数进行调整,并建立第一蓝牙链路。
56.步骤302,从设备向第二主设备发送各条第一蓝牙链路的第一链路参数。
57.关于提供第一链路参数的具体方式,可选的,从设备可以通过广播数据包的方式,向第二主设备发送第一链路参数。其中,广播方式可以包括蓝牙广播、近场通信(near field communication,nfc)广播、wifi广播等等,本实施例对此不作限定。
58.在一种可能的实施方式中,响应于主设备连接指令,从设备开启广播功能,或者,从设备保持广播功能开启,并在广播信道广播蓝牙数据包(包含各条第一蓝牙链路的第一链路参数)。其中,该主设备连接指令可以由用户触发,比如用户开启从设备的蓝牙发现功能后(开启蓝牙发现功能后即可被其他蓝牙设备发现),从设备开启广播功能。
59.在一些实施例中,该蓝牙数据包为扩展广播(extended advertising,ae adv),且该第一链路参数被写入ae adv的负载(payload)。
60.为了保证蓝牙数据包中第一链路参数的准确性,可选的,第一主设备每完成一次调度,从设备都需要对第一链路参数进行更新,并将更新后的第一链路参数更新至蓝牙数据包。
61.步骤303,第二主设备从从设备接收各条第一蓝牙链路的第一链路参数。
62.本实施例中,第二主设备则是指暂未与从设备建立蓝牙链路的主设备。
63.在一种可能的实施方式中,当第二主设备需要与从设备建立蓝牙链路时,第二主设备即在广播信道上接收从设备发送的蓝牙数据包,并从蓝牙数据包中解析出各条第一蓝牙链路的第一链路参数。
64.在一些实施例中,当蓝牙数据包为扩展广播(extended advertising,ae adv)时,第二主设备即在广播信道进行ae扩展扫描(extended scan),从而接收到从设备发送的ae adv。
65.除了通过蓝牙通信的方式获取第一链路参数外,第二主设备还可以通过蓝牙通信以外的方式获取第一链路参数,比如通过nfc组件与从设备进行nfc通信并获取第一链路参数、通过与从设备之间的wifi连接获取第一链路参数(即通过wifi或nfc接收从设备发送的第一链路参数),本技术实施例并不对此进行限定。
66.步骤304,第二主设备基于第一链路参数确定第二蓝牙链路的第二链路参数,第二蓝牙链路位于从设备和第二主设备之间。
67.在一种可能的实施方式中,若从蓝牙数据包中解析得到第一链路参数,第二主设备则确定从设备已经与其他主设备建立蓝牙链路,需要基于第一链路参数确定自身的第二链路参数。若未从蓝牙数据包中解析得到第一链路参数,第二主设备则确定从设备未与其他主设备建立蓝牙链路,从而直接基于自身调度间隔请求与从设备建立蓝牙链路。
68.在一些实施例中,第二主设备基于第一链路参数确定出各个第一主设备的调度时间点,从而以避免第二主设备的调度时间点与第一主设备的调度时间点重合为原则,确定第二蓝牙链路的第二链路参数。关于确定第二链路参数的具体方式,下述实施例将进行详述。
69.步骤305,第二主设备向从设备发送包括第二链路参数的链路建立请求,链路建立请求用于请求与从设备建立第二蓝牙链路。
70.进一步的,第二主设备基于确定出的第二链路参数生成链路建立请求,并向从设备发送链路建立请求,请求与从设备建立第二蓝牙链路,其中,请求建立蓝牙链路过程中,第二主设备处于发起态(initiator)。
71.步骤306,从设备从第二主设备接收链路建立请求。
72.相应的,从设备接收第二主设备发送的链路建立请求,并解析其中包含第二链路参数,以便完成第二蓝牙链路建立后,基于该第二链路参数接受第二主设备的调度。
73.步骤307,从设备基于第二链路参数与第二主设备建立第二蓝牙链路,其中,第二蓝牙链路上第二主设备的调度时间点不同于各条第一蓝牙链路上第一主设备的调度时间点。
74.在一种可能的实施方式中,从设备与第二主设备建立第二蓝牙链路后,基于该第二链路参数确定第二主设备的调度时间点(即确定第二主设备的调度方式),并基于该调度时间点接收第二主设备调度。由于第二主设备与各个第一主设备的调度时间点之间不重合,因此各条蓝牙链路之间不存在调度冲突。
75.可选的,完成第二蓝牙链路建立后,从设备停止广播蓝牙数据包。
76.可选的,完成蓝牙链路建立后,第二主设备即成为第一主设备,相应的,从设备对第二主设备对应的第二链路参数进行存储,后续再次广播蓝牙数据包时,则需要在蓝牙数据包中增加链路参数。
77.综上所述,本技术实施例中,从设备与第一主设备之间完成第一蓝牙链路建立,并需要与第二主设备建立第二蓝牙链路时,从设备通过向第二主设备提供第一蓝牙链路对应的第一链路参数,使第二主设备能够根据第一链路参数,确定第二蓝牙链路与已建立的第一蓝牙链路不存在调度冲突时(即第二蓝牙链路上的调度时间点与各条第一蓝牙链路上的调度时间点均不同)采用的第二链路参数,并基于该第二链路参数向从设备发送链路建立请求,进而与从设备之间建立第二蓝牙链路;采用本技术实施例提供的方案,从设备通过预先提供已建立蓝牙链路的链路信息,使待建立连接的主设备能够在链路建立阶段通过调整链路参数来规避多蓝牙链路之间的调度冲突,避免因多蓝牙链路之间调度冲突导致业务中断的问题,并有助于提高多链路带宽和空口利用率。
78.对于已经建立蓝牙链路的第一主设备而言,在初始调度时间点完成调度后,第一主设备即按照固定的调度间隔进行调度。因此,第二主设备可以通过调整自身初始调度时间点与第一主设备的调度时间点之间的调度偏差(offset),以及自身的调度间隔(interval)。避免与第一主设备发生调度冲突。下面采用示例性的实施例进行说明。
79.请参考图4,其示出了本技术另一个示例性实施例提供的建立蓝牙链路的方法的流程图,本实施例以该方法用于图1所示的实施环境为例进行说明,该方法包括:
80.步骤401,从设备与至少一个第一主设备建立至少一条第一蓝牙链路。
81.本步骤的实施方式可以参考上述步骤301,本实施例在此不再赘述。
82.步骤402,从设备获取各条第一蓝牙链路对应的第一调度间隔,第一调度间隔为第一主设备根据调度时间点在第一蓝牙链路上调度从设备时,相邻调度时间点之间的时间间隔。
83.在一种可能的实施方式中,各个主设备与从设备建立蓝牙链路前,都会向从设备提供自身调度间隔,以便从设备基于该调度间隔周期性的接受主设备调度。相应的,从设备对各个已建立蓝牙链路的主设备的调度间隔进行存储。当需要对第一链路参数进行广播时,从设备即获取各个第一主设备对应的第一调度间隔。
84.步骤403,从设备确定蓝牙数据包相对于各条第一蓝牙链路的发送时序偏移,发送时序偏移用于表征从设备广播蓝牙数据包的时刻与第一主设备对应调度时间点之间的偏移。
85.若仅将第一调度间隔作为第一链路参数,第二主设备仅能确定出相邻调度时间点
之间的时间间隔,而无法确定每次调度的准确时间点,进而无法进行调度冲突规避。因此,第一链路参数中还需要包含用于确定至少一个准确调度时间点的参数。
86.由于从设备需要基于各个第一主设备的调度情况,在各个第一主设备不进行调度时广播蓝牙数据包,因此蓝牙数据包的发送时刻与各个第一主设备的调度时刻之间存在一定偏差。为了使第二主设备能够以蓝牙数据包的广播时刻为时间起始点,从而基于第一链路参数确定出各个第一主设备的调度时间点,从设备需要确定蓝牙数据包相对于各条第一蓝牙链路的发送时序偏移。在一种可能的实施方式中,本步骤可以包括如下步骤。
87.1、确定各条第一蓝牙链路各自对应的第一调度时间点。
88.由于从设备知悉主设备的调度方式,因此从设备可以确定出第一蓝牙链路对应的第一调度时间点。其中,该第一调度时间点可以是最近一次调度时的时间点。
89.示意性的,如图5所示,当从设备与第一主设备建立有第一蓝牙链路时,从设备确定第一蓝牙链路对应的第一调度时间点为t0。
90.2、基于各个第一调度时间点以及蓝牙数据包的广播时间点,确定发送时序偏移。
91.作为蓝牙数据包的发送方,从设备能够基于各个第一主设备的调度情况决定蓝牙数据包的广播时间点,因此从设备能够进一步根据第一调度时间点以及蓝牙数据包的广播时间点(未来某一时间点),计算得到蓝牙数据包相对于各条第一蓝牙链路的发送时序偏移。其中,该发送时序偏移=广播时间点-第一调度时间点。
92.示意性的,如图5所示,从设备基于第一主设备的调度情况,确定蓝牙数据包的广播时间点为t1,进而确定发送时序偏移为t1-t0。
93.步骤404,从设备将第一调度间隔和发送时序偏移确定为第一链路参数,并根据第一链路参数广播蓝牙数据包。
94.进一步的,从设备将各条第一蓝牙链路对应的第一调度间隔以及发送时序偏移确定为第一链路参数,并广播包含第一链路数据的蓝牙数据包。在一种可能的实施方式中,本步骤可以包括如下步骤。
95.1、基于各条第一蓝牙链路的链路标识以及第一链路参数,生成至少一组链路信息。
96.为了使第二主设备能够区分不同第一蓝牙链路对应的第一链路参数,从设备将第一蓝牙链路的链路标识与第一链路参数作为一组链路信息,即每组链路信息是由链路标识、发送时序偏移以及第一调度间隔构成的三元组。其中,该链路标识用于唯一表示一条蓝牙链路。
97.2、广播包含至少一组链路信息的蓝牙数据包。
98.在一种可能的实施方式中,从设备将至少一组链路信息写入蓝牙数据包的负载中。在一个示意性的例子中,如图6所示,当蓝牙数据包为ae adv时,扩展广播的负载长度最大为251字节,而每组链路信息占用6字节,其中,链路标识(handle)占用2个字节,发送时序偏移占用2个字节,第一调度间隔占用2个字节。本实施例仅以上述字节长度为例进行说明,但并不对此构成限定。
99.进一步的,当达到预先确定出的广播时间点时,从设备广播蓝牙数据包。
100.在一种可能的实施方式中,从设备在主广播信道发送adv_ext_ind,指示通过副广播信道(secondary advertising channel)发送aux_adv_ind,并在副广播信道上发送包含
第一链路参数的aux_adv_ind。第二主设备在主广播信道接收到adv_ext_ind后,进一步在副广播信道上接收aux_adv_ind。
101.示意性的,如图5所示,从设备在t1时刻,通过主广播信道(37、38、39信道)发送adv_ext_ind(扩展广播),并在一定时间偏移量后在副广播信道上发送aux_adv_ind(辅助广播)。
102.步骤405,第二主设备接收从设备广播的蓝牙数据包。
103.在一种可能的实施方式中,第二主设备在主广播信道接收到adv_ext_ind后,解析出adv_ext_ind中包含的偏移量,并基于该偏移量确定副广播信道上aux_adv_ind的接收窗口,从而在该接收窗口内接收aux_adv_ind,并解析出其中包含的第一链路参数。
104.示意性的,如图5所示,主广播信道37中adv_ext_ind与副广播信道中aux_adv_ind之间的偏移量为偏移量1,主广播信道38中adv_ext_ind与副广播信道中aux_adv_ind之间的偏移量为偏移量2,主广播信道39中adv_ext_ind与副广播信道中aux_adv_ind之间的偏移量为偏移量3,当第二主设备在主广播信道38中接收到adv_ext_ind时,解析得到偏移量1并确定出aux_adv_ind的接收窗口,从而在该接收窗口接收aux_adv_ind。
105.可选的,当第一链路参数以链路信息组的形式写入蓝牙数据包的负载时,第二主设备从蓝牙数据包的负载中读取至少一组链路信息,每组链路信息中包含第一蓝牙链路的链路标识以及第一链路参数,且链路信息的组数与第一蓝牙链路的数量相同。
106.步骤406,第二主设备基于蓝牙数据包的广播时间点以及发送时序偏移,确定各条第一蓝牙链路对应的第一调度时间点。
107.第二主设备从蓝牙数据包中解析得到各条第一蓝牙链路的发送时序偏移后,即可以蓝牙数据包的广播时间点为起始时间点,确定出各条第一蓝牙链路对应的第一调度时间点,其中,该第一调度时间点可以是各条第一蓝牙链路上蓝牙数据包广播时刻之前最近的调度时间点。
108.示意性的,当第一蓝牙链路的发送时序偏移为offset0,且蓝牙数据包的广播时间点为t时,第一蓝牙链路的第一调度时间点t0=t-offset0。
109.步骤407,基于第一调度时间点以及第一调度间隔,确定各条第一蓝牙链路对应的第一调度时间点序列。
110.由于主设备是按照调度间隔进行周期性调度,因此确定出第一主设备的第一调度时间点后,第二主设备可以在第一调度时间点的基础上,基于第一调度间隔,确定出第一蓝牙链路对应的第一调度时间点序列,其中,第一调度时间点序列是以第一调度时间点为时间点起点,以第一调度间隔为间隔的时间点序列。
111.示意性的,当第一蓝牙链路的第一调度时间点为t0,且第一蓝牙链路的调度间隔为interval1时,第一蓝牙链路对应的第一调度时间点序列可以表示为:
112.t1=t0+num1*interval1
113.其中,num1为自然数。
114.步骤408,第二主设备基于第一调度时间点序列,确定第二调度间隔以及调度偏移。
115.为了避免第二主设备的调度时间点与第一主设备的调度时间点重合,第二主设备基于第一调度时间点序列,通过调整自身的第二调度间隔以及调度偏移,确保第二蓝牙链
路对应的第二调度时间点序列与第一调度时间点序列不重叠,其中,第二调度间隔为第二主设备进行调度时,相邻调度时间点之间的时间间隔,调度偏移用于表征第二主设备的调度时间点与第一主设备对应的调度时间点之间的偏移。
116.示意性的,当第二蓝牙链路的调度间隔为interval2,且与第一蓝牙链路之间的调度偏移为offset时,第二蓝牙链路对应的第二调度时间点序列可以表示为:
117.t2=t1+offset+num2*interval2
118.其中,num2为自然数。
119.在一种可能的实施方式中,基于第一调度时间点序列以及第二调度时间点序列的表达式,第二主设备调整offset以及interval2,直至t1≠t2。
120.可选的,为了简化调整过程,第二主设备将第二调度间隔设置为第一调度间隔,并通过调整调度偏移,使第一调度时间点序列和第二调度时间点序列不重叠。
121.需要说明的是,当存在多条第一蓝牙链路时,第二主设备需要确保第二调度时间点序列与各个第一调度时间点序列之间均不重叠。
122.步骤409,第二主设备将第二调度间隔和调度偏移确定为第二链路参数。
123.进一步的,第二主设备将第二调度间隔和调度偏移确定为第二链路参数(interval2,offset)。
124.步骤410,第二主设备向从设备发送包括第二链路参数的链路建立请求。
125.步骤411,从设备从第二主设备接收链路建立请求。
126.上述步骤410至411的实施方式可以参考步骤305至306,本实施例在此不再赘述。
127.步骤412,从设备基于第二链路参数以及第一链路参数,对第二蓝牙链路和第一蓝牙链路进行调度冲突检测。
128.由于第一链路参数和第二链路参数在传输或解析过程中可能会发生偏差,因此为了保证建立的第二蓝牙链路与第一蓝牙链路不存在调度冲突,从设备需要基于第二链路参数以及第一链路参数,对第二蓝牙链路和第一蓝牙链路进行调度冲突检测。在一种可能的实施方式中,从设备基于第一链路参数确定各条第一蓝牙链路的调度时间点,并基于第二链路参数确定第二蓝牙链路的调度时间点,从而检测两者的调度时间点是否存在重叠,若存在重叠,则确定未通过调度冲突检测,若不存在重叠,则确定通过调度冲突检测。
129.步骤413,响应于不存在调度冲突,从设备基于第二链路参数与第二主设备建立第二蓝牙链路。
130.当通过调度冲突检测时,从设备即与第二主设备建立第二蓝牙链路,本步骤的实施例方式可以参考上述步骤307,本实施例在此不再赘述。
131.示意性的,如图7所示,第二主设备确定出第一主设备的调度时间点分别为t0,t0+interval1,t0+2*interval1

,从而确定出自身的第二调度间隔interval2和调度偏移offset,基于interval2和offset,第二主设备即在t0+offset,t0+offset+interval2,t0+offset+2*interval2

这些调度时间点进行调度。并且,由于interval2=interval1,因此第一主设备与第二主设备的调度时间点之间交错,互不重叠,从而避免了调度冲突。
132.结合上述实施例提供的方法,在一个示意性的例子中,如图8所示,第一主设备与从设备之间首先建立起acl1(第一蓝牙链路)。当从设备需要与第二主设备建立acl2(第二蓝牙链路)时,从设备计算广播与acl1之间的发送时序偏差offset0,并获取第一主设备的
interval1,从而启动ae广播,向第二主设备发送包含ae adv(包含offset0和interval1)。第二主设备接收到ae adv后,解析得到其中的offset0和interval1,并以ae adv为起始时间点,计算acl2的offset以及interval1,从而向从设备发送链路建立请求(包含offset和interval2)。从设备基于该链路建立请求,与第二主设备建立acl2,并停止广播。
133.本实施例中,从设备通过广播包含第一链路参数的蓝牙数据包,使待连接的第二主设备接收并解析蓝牙数据包中的第一链路参数后,能够基于第一链路参数调整自身的第二链路参数,避免与第一蓝牙链路产生调度冲突;并且,通过将第一蓝牙链路的第一调度间隔以及与蓝牙数据包广播时间点之间的发送时序偏差作为第一链路参数,使第二主设备能够以蓝牙数据包的广播时刻为起始时间点,确定出各条第一蓝牙链路的调度时间点,进而确定出各条第一蓝牙链路对应的调度时间点序列,一方面降低了传输第一链路参数所占用的字节数,另一方面提高了确定出的调度时间点的准确性。
134.此外,上述实施例仅以广播蓝牙数据包为例进行说明,当通过wifi或nfc等方式向第二主设备提供第一链路参数时,从设备可以基于wifi数据包或nfc数据包的发送时刻确定发送时序偏移,并将该发送时序偏移作为第一链路参数写入wifi数据包或nfc数据包中,本实施例在此不做赘述。
135.需要说明的是,上述实施例,以从设备为执行主体的步骤可以单独实现成为在从设备中建立蓝牙链路的方法,以第二主设备为执行主体的步骤可以单独实现成为在主设备中建立蓝牙链路的方法,本实施例在此不再赘述。
136.下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
137.请参考图9,其示出了本技术一个实施例提供的在从设备中建立蓝牙链路的装置的结构框图。该装置可以包括:
138.第一建立模块901,用于与至少一个第一主设备建立至少一条第一蓝牙链路;
139.参数提供模块902,用于向第二主设备发送各条所述第一蓝牙链路的第一链路参数;
140.请求接收模块903,用于从所述第二主设备接收链路建立请求,所述链路建立请求用于请求与所述从设备建立第二蓝牙链路,所述链路建立请求中包含所述第二蓝牙链路的第二链路参数,所述第二链路参数由所述第二主设备基于所述第一链路参数确定得到;以及,
141.第二建立模块904,用于基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
142.可选的,所述参数提供模块902,用于:
143.广播单元,用于广播包含第一链路参数的数据包,其中,广播方式包括蓝牙广播、wifi广播和nfc广播中的至少一种。
144.可选的,所述广播单元,用于:
145.获取各条所述第一蓝牙链路对应的第一调度间隔,所述第一调度间隔为所述第一主设备根据调度时间点在所述第一蓝牙链路上调度从设备时,相邻调度时间点之间的时间间隔;
146.确定所述数据包相对于各条所述第一蓝牙链路的发送时序偏移,所述发送时序偏移用于表征所述从设备广播所述数据包的时刻与所述第一主设备对应调度时间点之间的偏移;以及,
147.将所述第一调度间隔和所述发送时序偏移确定为所述第一链路参数,并根据所述第一链路参数广播所述数据包。
148.所述确定所述数据包相对于各条所述第一蓝牙链路的发送时序偏移时,所述广播单元,具体用于:
149.确定各条所述第一蓝牙链路各自对应的第一调度时间点;以及,
150.基于各个所述第一调度时间点以及所述数据包的广播时间点,确定所述发送时序偏移。
151.所述根据所述第一链路参数广播所述数据包时,所述广播单元,具体用于:
152.基于各条所述第一蓝牙链路的链路标识以及所述第一链路参数,生成至少一组链路信息;以及,
153.广播包含至少一组所述链路信息的所述数据包,所述链路信息的组数与第一蓝牙链路的数量相同。
154.可选的,所述第二链路参数包括所述第二蓝牙链路对应的第二调度间隔以及调度偏移,所述调度偏移用于表征所述第二主设备的调度时间点与至少一个所述第一主设备对应的调度时间点之间的偏移。
155.可选的,所述第二建立模块904,用于:
156.基于所述第二链路参数以及所述第一链路参数,对所述第二蓝牙链路和所述第一蓝牙链路进行调度冲突检测;以及,
157.响应于不存在调度冲突,基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路。
158.请参考图10,其示出了本技术另一个实施例提供的在主设备中建立蓝牙链路的装置的结构框图。该装置可以包括:
159.参数获取模块1001,用于从从设备接收各条第一蓝牙链路的第一链路参数,所述从设备与至少一个第一主设备建立至少一条所述第一蓝牙链路;
160.第二参数确定模块1002,用于基于所述第一链路参数确定第二蓝牙链路的第二链路参数,所述第二蓝牙链路位于所述从设备和所述第二主设备之间;以及,
161.请求发送模块1003,用于向所述从设备发送包括所述第二链路参数的链路建立请求,以便所述从设备基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。
162.可选的,所述参数获取模块1001,包括:
163.接收单元,用于接收所述从设备广播的数据包,所述数据包中包含各条所述第一蓝牙链路的所述第一链路参数,其中,广播方式包括蓝牙广播、wifi广播和nfc广播中的至少一种。
164.可选的,所述第二参数确定模块1002,包括:
165.第一确定单元,用于基于所述第一链路参数确定所述第二蓝牙链路对应的第二调
度间隔以及调度偏移,所述第二调度间隔为所述第二主设备根据调度时间点在所述第二蓝牙链路上调度所述从设备时,相邻调度时间点之间的时间间隔,所述调度偏移用于表征所述第二主设备的调度时间点与所述第一主设备对应的调度时间点之间的偏移;以及,
166.第二确定单元,用于将所述第二调度间隔和所述调度偏移确定为所述第二链路参数。
167.可选的,所述第一链路参数包括第一调度间隔以及发送时序偏移,所述第一调度间隔为所述第一主设备根据调度时间点在所述第一蓝牙链路上调度所述从设备时,相邻调度时间点之间的时间间隔,所述发送时序偏移用于表征所述从设备广播所述数据包的时刻与所述第一主设备对应调度时间点之间的偏移;
168.所述第一确定单元,用于:
169.基于所述数据包的广播时间点以及所述发送时序偏移,确定各条所述第一蓝牙链路对应的第一调度时间点;
170.基于所述第一调度时间点以及所述第一调度间隔,确定各条所述第一蓝牙链路对应的第一调度时间点序列,所述第一调度时间点序列是以所述第一调度时间点为时间点起点,以所述第一调度间隔为间隔的时间点序列;以及,
171.基于所述第一调度时间点序列,确定所述第二调度间隔以及所述调度偏移,其中,采用所述第二调度间隔以及所述调度偏移时,所述第二蓝牙链路对应的第二调度时间点序列与所述第一调度时间点序列不重叠。
172.可选的,所述第一调度时间点序列表示为:t1=t0+num1*interval1;
173.所述第二调度时间点序列表示为:t2=t1+offset+num2*interval2;
174.t0为所述第一调度时间点,interval1为所述第一调度间隔,offset为所述调度偏移,interval2为所述第二调度间隔,num1和num2为自然数。
175.可选的,所述第一链路参数包含在所述数据包中;
176.所述装置还包括:
177.读取模块,用于从所述数据包中读取至少一组链路信息,每组所述链路信息中包含所述第一蓝牙链路的链路标识以及所述第一链路参数,且所述链路信息的组数与第一蓝牙链路的数量相同。
178.请参考图11,其示出了本技术一个示例性实施例提供的具有蓝牙功能的电子设备的结构方框图。该电子设备1100可以是智能手机、平板电脑、可穿戴式设备等。本技术中的电子设备1100可以包括一个或多个如下部件:处理器1110、存储器1120和蓝牙芯片1130。
179.处理器1110可以包括一个或者多个处理核心。处理器1110利用各种接口和线路连接整个电子设备1100内的各个部分,通过运行或执行存储在存储器1120内的指令、程序、代码集或指令集,以及调用存储在存储器1120内的数据,执行电子设备1100的各种功能和处理数据。可选地,处理器1110可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器1110可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)、神经网络处理器(neural-network processing unit,npu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需
要显示的内容的渲染和绘制;npu用于实现人工智能(artificial intelligence,ai)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1110中,单独通过一块芯片进行实现。
180.存储器1120可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory,rom)。可选地,该存储器1120包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1120可用于存储指令、程序、代码、代码集或指令集。存储器1120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据电子设备1100的使用所创建的数据(比如音频数据、电话本)等。
181.蓝牙芯片1130是用于实现蓝牙功能的组件。其中,蓝牙芯片1130包含host和controller两部分(对应不同蓝牙协议栈),host和controller可以运行在同一芯片上(单芯片架构),也可以运行在不同芯片上(双芯片架构)。比如,host运行在处理器上,而controller运行在蓝牙模块上;或者,host和controller均运行在蓝牙芯片1130上。本技术实施例提供的设备添加方法即由蓝牙芯片1130通过执行指令实现。
182.除此之外,本领域技术人员可以理解,上述附图所示出的电子设备1100的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备1100中还包括显示屏、传感器、扬声器、麦克风、电源等部件,在此不再赘述。
183.本技术实施例还提供了一种蓝牙芯片,蓝牙芯片包括可编程逻辑电路和/或程序指令,当蓝牙芯片运行时,用于实现如上述方面所述的在从设备中建立蓝牙链路的方法,或,实现如上述方面所述的在主设备中建立蓝牙链路的方法。
184.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有至少一条程序代码,所述程序代码由蓝牙芯片加载并执行以实现如上各个实施例所述的在从设备中建立蓝牙链路的方法,或,在主设备中建立蓝牙链路的方法。
185.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的蓝牙芯片从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述方面的各种可选实现方式中提供的在从设备中建立蓝牙链路的方法,或,在主设备中建立蓝牙链路的方法。
186.应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本技术实施例对此不作限定。
187.以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。

技术特征:


1.一种在从设备中建立蓝牙链路的方法,其特征在于,所述方法包括:与至少一个第一主设备建立至少一条第一蓝牙链路;向第二主设备发送各条所述第一蓝牙链路的第一链路参数;从所述第二主设备接收链路建立请求,所述链路建立请求用于请求与所述从设备建立第二蓝牙链路,所述链路建立请求中包含所述第二蓝牙链路的第二链路参数,所述第二链路参数由所述第二主设备基于所述第一链路参数确定得到;以及,基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。2.根据权利要求1所述的方法,其特征在于,所述向第二主设备发送各条所述第一蓝牙链路的第一链路参数,包括:广播包含所述第一链路参数的数据包,其中,广播方式包括蓝牙广播、wifi广播和nfc广播中的至少一种。3.根据权利要求2所述的方法,其特征在于,所述广播包含所述第一链路参数的数据包,包括:获取各条所述第一蓝牙链路对应的第一调度间隔,所述第一调度间隔为所述第一主设备根据调度时间点在所述第一蓝牙链路上调度从设备时,相邻调度时间点之间的时间间隔;确定所述数据包相对于各条所述第一蓝牙链路的发送时序偏移,所述发送时序偏移用于表征所述从设备广播所述数据包的时刻与所述第一主设备对应调度时间点之间的偏移;以及,将所述第一调度间隔和所述发送时序偏移确定为所述第一链路参数,并根据所述第一链路参数广播所述数据包。4.根据权利要求3所述的方法,其特征在于,所述确定所述数据包相对于各条所述第一蓝牙链路的发送时序偏移,包括:确定各条所述第一蓝牙链路各自对应的第一调度时间点;以及,基于各个所述第一调度时间点以及所述数据包的广播时间点,确定所述发送时序偏移。5.根据权利要求3所述的方法,其特征在于,所述根据所述第一链路参数广播所述数据包,包括:基于各条所述第一蓝牙链路的链路标识以及所述第一链路参数,生成至少一组链路信息;以及,广播包含至少一组所述链路信息的所述数据包,所述链路信息的组数与第一蓝牙链路的数量相同。6.根据权利要求1至5任一所述的方法,其特征在于,所述第二链路参数包括所述第二蓝牙链路对应的第二调度间隔以及调度偏移,所述调度偏移用于表征所述第二主设备的调度时间点与至少一个所述第一主设备对应的调度时间点之间的偏移。7.根据权利要求1至5任一所述的方法,其特征在于,所述基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,包括:
基于所述第二链路参数以及所述第一链路参数,对所述第二蓝牙链路和所述第一蓝牙链路进行调度冲突检测;以及,响应于不存在调度冲突,基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路。8.一种在主设备中建立蓝牙链路的方法,其特征在于,所述方法包括:从从设备接收各条第一蓝牙链路的第一链路参数,所述从设备与至少一个第一主设备建立至少一条所述第一蓝牙链路;基于所述第一链路参数确定第二蓝牙链路的第二链路参数,所述第二蓝牙链路位于所述从设备和所述第二主设备之间;以及,向所述从设备发送包括所述第二链路参数的链路建立请求,以便所述从设备基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。9.根据权利要求8所述的方法,其特征在于,所述获取从设备提供的各条第一蓝牙链路的第一链路参数,包括:接收所述从设备广播的数据包,所述数据包中包含各条所述第一蓝牙链路的所述第一链路参数,其中,广播方式包括蓝牙广播、wifi广播和nfc广播中的至少一种。10.根据权利要求8所述的方法,其特征在于,所述基于所述第一链路参数确定第二蓝牙链路的第二链路参数,包括:基于所述第一链路参数确定所述第二蓝牙链路对应的第二调度间隔以及调度偏移,所述第二调度间隔为所述第二主设备根据调度时间点在所述第二蓝牙链路上调度所述从设备时,相邻调度时间点之间的时间间隔,所述调度偏移用于表征所述第二主设备的调度时间点与所述第一主设备对应的调度时间点之间的偏移;以及,将所述第二调度间隔和所述调度偏移确定为所述第二链路参数。11.根据权利要求10所述的方法,其特征在于,所述第一链路参数包括第一调度间隔以及发送时序偏移,所述第一调度间隔为所述第一主设备根据调度时间点在所述第一蓝牙链路上调度所述从设备时,相邻调度时间点之间的时间间隔,所述发送时序偏移用于表征所述从设备广播所述数据包的时刻与所述第一主设备对应调度时间点之间的偏移;所述基于所述第一链路参数确定所述第二蓝牙链路对应的第二调度间隔以及调度偏移,包括:基于所述数据包的广播时间点以及所述发送时序偏移,确定各条所述第一蓝牙链路对应的第一调度时间点;基于所述第一调度时间点以及所述第一调度间隔,确定各条所述第一蓝牙链路对应的第一调度时间点序列,所述第一调度时间点序列是以所述第一调度时间点为时间点起点,以所述第一调度间隔为间隔的时间点序列;以及,基于所述第一调度时间点序列,确定所述第二调度间隔以及所述调度偏移,其中,采用所述第二调度间隔以及所述调度偏移时,所述第二蓝牙链路对应的第二调度时间点序列与所述第一调度时间点序列不重叠。12.根据权利要求11所述的方法,其特征在于,所述第一调度时间点序列表示为:t1=t0+num1*interval1;
所述第二调度时间点序列表示为:t2=t1+offset+num2*interval2;t0为所述第一调度时间点,interval1为所述第一调度间隔,offset为所述调度偏移,interval2为所述第二调度间隔,num1和num2为自然数。13.根据权利要求9至12任一所述的方法,其特征在于,所述第一链路参数包含在所述数据包中;所述基于所述第一链路参数确定第二蓝牙链路的第二链路参数之前,所述方法还包括:从所述数据包中读取至少一组链路信息,每组所述链路信息中包含所述第一蓝牙链路的链路标识以及所述第一链路参数,且所述链路信息的组数与第一蓝牙链路的数量相同。14.一种在从设备中建立蓝牙链路的装置,其特征在于,所述装置包括:第一建立模块,用于与至少一个第一主设备建立至少一条第一蓝牙链路;参数提供模块,用于向第二主设备发送各条所述第一蓝牙链路的第一链路参数;请求接收模块,用于从所述第二主设备接收链路建立请求,所述链路建立请求用于请求与所述从设备建立第二蓝牙链路,所述链路建立请求中包含所述第二蓝牙链路的第二链路参数,所述第二链路参数由所述第二主设备基于所述第一链路参数确定得到;以及,第二建立模块,用于基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。15.一种在主设备中建立蓝牙链路的装置,其特征在于,所述装置包括:参数获取模块,用于从从设备接收各条第一蓝牙链路的第一链路参数,所述从设备与至少一个第一主设备建立至少一条所述第一蓝牙链路;第二参数确定模块,用于基于所述第一链路参数确定第二蓝牙链路的第二链路参数,所述第二蓝牙链路位于所述从设备和所述第二主设备之间;以及,请求发送模块,用于向所述从设备发送包括所述第二链路参数的链路建立请求,以便所述从设备基于所述第二链路参数与所述第二主设备建立所述第二蓝牙链路,其中,所述第二蓝牙链路上所述第二主设备的调度时间点不同于各条所述第一蓝牙链路上所述第一主设备的调度时间点。16.一种蓝牙芯片,其特征在于,所述蓝牙芯片包括可编程逻辑电路和/或程序指令,当所述蓝牙芯片运行时,用于实现如权利要求1至7任一所述的在从设备中建立蓝牙链路的方法,或,如权利要求8至13任一所述的在主设备中建立蓝牙链路的方法。17.一种具有蓝牙功能的电子设备,其特征在于,所述电子设备中设置有如权利要求16所述的蓝牙芯片。18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由蓝牙芯片加载并执行以实现如权利要求1至7任一所述的在从设备中建立蓝牙链路的方法,或,如权利要求8至13任一所述的在主设备中建立蓝牙链路的方法。

技术总结


本申请实施例公开了一种建立蓝牙链路的方法、装置、蓝牙芯片及设备,属于蓝牙技术领域。方法包括:与至少一个第一主设备建立至少一条第一蓝牙链路;向第二主设备发送各条第一蓝牙链路的第一链路参数;从第二主设备接收链路建立请求,链路建立请求用于请求与从设备建立第二蓝牙链路,链路建立请求中包含第二蓝牙链路的第二链路参数,第二链路参数基于第一链路参数确定得到;基于第二链路参数与第二主设备建立第二蓝牙链路,其中,第二蓝牙链路上的调度时间点不同于各条第一蓝牙链路上的调度时间点。本申请实施例中,待建立连接的主设备能通过调整链路参数来规避多蓝牙链路之间的调度冲突,避免因多蓝牙链路之间调度冲突导致业务中断的问题。业务中断的问题。业务中断的问题。


技术研发人员:

许超杰

受保护的技术使用者:

OPPO广东移动通信有限公司

技术研发日:

2021.06.03

技术公布日:

2022/12/5

本文发布于:2022-12-14 14:30:53,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/1/33745.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:蓝牙   链路   主设备   所述
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图