一种蓝牙通信方法、系统以及一种电子设备

申请号 CN201510697882.6 申请日 2015-10-23 公开(公告)号 CN105246029A 公开(公告)日 2016-01-13
申请人 上海斐讯数据通信技术有限公司; 发明人 徐志文;
摘要 本 发明 提供一种蓝牙通信方法、系统以及一种 电子 设备,所述方法包括:基于linux系统的电子设备启动蓝牙扫描,获取扫描到的各蓝牙设备的类型;将扫描到的各蓝牙设备的设备信息保存至预先设置的类型数组内;在待接入的蓝牙设备为标准蓝牙设备时,进行蓝牙 配对 认证,获取标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态;在待接入的蓝牙设备为低功耗蓝牙设备时,获取低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。本发明可以在linux系统下,使电子设备能兼容经典(标准)、低功耗蓝牙设备并进行数据通信。
权利要求

1.一种蓝牙通信方法,应用于基于linux系统的电子设备与标准蓝牙设备和低功耗蓝牙设备的建立蓝牙通信的过程中,其特征在于:所述蓝牙通信方法包括:
基于linux系统的电子设备启动蓝牙扫描,获取扫描到的各蓝牙设备的类型;
根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内;
在待接入的所述蓝牙设备为标准蓝牙设备时,进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态;
在待接入的所述蓝牙设备为低功耗蓝牙设备时,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
2.根据权利要求1所述的蓝牙通信方法,其特征在于:所述获取所述标准蓝牙设备的设备信息具体包括:
在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
3.根据权利要求2所述的蓝牙通信方法,其特征在于:在连接所述标准蓝牙设备之后,所述更新所连接的标准蓝牙设备的设备状态具体包括:
根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
4.根据权利要求1所述的蓝牙通信方法,其特征在于:获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态具体包括:
根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
5.根据权利要求1所述的蓝牙通信方法,其特征在于:所述设备信息包括:蓝牙设备名称、蓝牙设备ID、生产厂商ID和/或设备功率中的至少一个。
6.一种蓝牙通信系统,应用于基于linux系统的电子设备中,其特征在于:所述蓝牙通信方法系统包括:
类型数组模,包括用于存储蓝牙设备的设备信息的类型数组;
获取模块,用于在启动蓝牙扫描并获取扫描到的各蓝牙设备的类型;
保存模块,与所述类型数组模块和所述获取模块相连,用于根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内;
标准蓝牙设备处理模块,与所述保存模块相连,在待接入的所述蓝牙设备为标准蓝牙设备时,用于进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态;
低功耗蓝牙设备处理模块,与所述保存模块相连,在待接入的所述蓝牙设备为低功耗蓝牙设备时,用于获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
7.根据权利要求6所述的蓝牙通信系统,其特征在于:所述标准蓝牙设备处理模块还用于在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
8.根据权利要求7所述的蓝牙通信系统,其特征在于:所述标准蓝牙设备处理模块还用于根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
9.根据权利要求6所述的蓝牙通信系统,其特征在于:所述低功耗蓝牙设备处理模块还用于根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
10.一种电子设备,其特征在于,所述电子设备内包含如权利要求6至权利要求9任一权利要求中所述的蓝牙通信系统。

说明书全文

一种蓝牙通信方法、系统以及一种电子设备

技术领域

[0001] 本发明涉及网络通信技术领域,特别是涉及网络通信流量控制技术领域,具体为一种蓝牙通信方法、系统以及一种电子设备。

背景技术

[0002] 蓝牙 是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙技术最初由电信巨头爱立信公司于1994年创制,当时是作为RS232数据线的替代方案。蓝牙可连接多个设备,克服了数据同步的难题。如今蓝牙由蓝牙技术联盟(Bluetooth Special Interest Group,简称SIG)管理。蓝牙技术联盟在全球拥有超过25,000家成员公司,它们分布在电信、计算机、网络、和消费电子等多重领域。IEEE将蓝牙技术列为IEEE
802.15.1,但如今已不再维持该标准。蓝牙技术联盟负责监督蓝牙规范的开发,管理认证项目,并维护商标权益。制造商的设备必须符合蓝牙技术联盟的标准才能以“蓝牙设备”的名义进入市场。蓝牙技术拥有一套专利网络,可发放给符合标准的设备。
[0003] 蓝牙的波段为2400–2483.5MHz(包括防护频带)。这是全球范围内无需取得执照(但并非无管制的)的工业、科学和医疗用(ISM)波段的2.4GHz短距离无线电频段。蓝牙主设备最多可与一个微微网(一个采用蓝牙技术的临时计算机网络)中的七个设备通讯,当然并不是所有设备都能够达到这一最大量。设备之间可通过协议转换色,从设备也可转换为主设备(比如,一个头戴式机如果向手机发起连接请求,它作为连接的发起者,自然就是主设备,但是随后也许会作为从设备运行。)
[0004] 蓝牙核心规格提供两个或以上的微微网连接以形成分布式网络,让特定的设备在这些微微网中自动同时地分别扮演主和从的角色。数据传输可随时在主设备和其他设备之间进行(应用极少的广播模式除外)。主设备可选择要访问的从设备;典型的情况是,它可以在设备之间以轮替的方式快速转换。因为是主设备来选择要访问的从设备,理论上从设备就要在接收槽内待命,主设备的负担要比从设备少一些。主设备可以与七个从设备相连接,但是从设备却很难与一个以上的主设备相连。规格对于散射网中的行为要求是模糊的。
[0005] 到2013年为止,蓝牙芯片应用主要有共有五个版本:1.1/1.2/2.0/2.1/3.0/4.0,目前最常有的蓝牙芯片有2.1/3.0/4.0三种版本。
[0006] 目前市场上出现了诸多健康设备,譬如:康中体温计和血糖仪等,这些设备有经典、低功耗两种类型。为了满足市场的需求,智能路由器需要实现接入各种蓝牙设备的功能,接收健康医疗蓝牙设备的数据并推送到端。由于蓝牙设备有经典和低功耗两种,目前基于linux系统的平台不同时兼容经典、低功耗蓝牙设备。

发明内容

[0007] 鉴于以上所述现有技术的缺点,本发明的目的在于提供一种蓝牙通信方法、系统以及一种电子设备,用于解决现有技术中基于linux系统的平台不同时兼容经典和低功耗蓝牙设备。
[0008] 为实现上述目的及其他相关目的,本发明提供一种蓝牙通信方法,应用于基于linux系统的电子设备与标准蓝牙设备和低功耗蓝牙设备的建立蓝牙通信的过程中,所述蓝牙通信方法包括:基于linux系统的电子设备启动蓝牙扫描,获取扫描到的各蓝牙设备的类型;根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内;在待接入的所述蓝牙设备为标准蓝牙设备时,进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态;在待接入的所述蓝牙设备为低功耗蓝牙设备时,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
[0009] 优选地,所述获取所述标准蓝牙设备的设备信息具体包括:在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
[0010] 优选地,在连接所述标准蓝牙设备之后,所述更新所连接的标准蓝牙设备的设备状态具体包括:根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
[0011] 优选地,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态具体包括:根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
[0012] 优选地,所述设备信息包括:蓝牙设备名称、蓝牙设备ID、生产厂商ID和/或设备功率中的至少一个。
[0013] 为实现上述目的,本发明还提供一种蓝牙通信系统,应用于基于linux系统的电子设备中,所述蓝牙通信方法系统包括:类型数组模,包括用于存储蓝牙设备的设备信息的类型数组;获取模块,用于在启动蓝牙扫描并获取扫描到的各蓝牙设备的类型;保存模块,与所述类型数组模块和所述获取模块相连,用于根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内;标准蓝牙设备处理模块,与所述保存模块相连,在待接入的所述蓝牙设备为标准蓝牙设备时,用于进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态;低功耗蓝牙设备处理模块,与所述保存模块相连,在待接入的所述蓝牙设备为低功耗蓝牙设备时,用于获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
[0014] 优选地,所述标准蓝牙设备处理模块还用于在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
[0015] 优选地,所述标准蓝牙设备处理模块还用于根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
[0016] 优选地,所述低功耗蓝牙设备处理模块还用于根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
[0017] 为实现上述目的,本发明还提供一种电子设备,所述电子设备内包含如上所述的蓝牙通信系统。
[0018] 如上所述,本发明的一种蓝牙通信方法、系统以及一种电子设备,具有以下有益效果:
[0019] 本发明通过根据蓝牙设备的类型,建立用于保存不同类型的蓝牙设备的设备信息的不同类型数组,再分别处理不同类型的蓝牙设备的蓝牙建立过程,可以在linux系统下,使电子设备能兼容经典(标准)、低功耗蓝牙设备并进行数据通信。附图说明
[0020] 图1显示为本发明的一种蓝牙通信方法的流程示意图。
[0021] 图2显示为本发明的一种蓝牙通信系统的结构示意图。
[0022] 图3显示为本发明的一种电子设备的结构示意图。
[0023] 元件标号说明
[0024] 1 蓝牙通信系统
[0025] 11 类型数组模块
[0026] 12 获取模块
[0027] 13 保存模块
[0028] 14 标准蓝牙设备处理模块
[0029] 15 低功耗蓝牙设备处理模块
[0030] 2 电子设备
[0031] S11~S14 步骤

具体实施方式

[0032] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0033] 本发明的目的在于提供一种蓝牙通信方法、系统以及一种电子设备,用于解决现有技术中基于linux系统的平台不同时兼容经典和低功耗蓝牙设备。以下将详细阐述本发明的一种蓝牙通信方法、系统以及一种电子设备的原理及实施方式,使本领域技术人员不需要创造性劳动即可理解本发明的一种蓝牙通信方法、系统以及一种电子设备。
[0034] 本实施例提供一种蓝牙通信方法,应用于基于linux系统的电子设备与标准蓝牙设备和低功耗蓝牙设备的建立蓝牙通信的过程中。其中所述基于linux系统的电子设备可以为任意基于linux系统的电子产品,例如,为基于linux系统的路由器。标准蓝牙设备和低功耗蓝牙设备例如为血糖仪、血压计等医疗电子设备。低功耗蓝牙设备是自动进行扫描连接,标准蓝牙设备(一般也称为经典蓝牙设备)则需要手动选择对应的设备进行配对、连接。
[0035] 具体地,如图1所示,所述蓝牙通信方法包括以下步骤。
[0036] 步骤S11,基于linux系统的电子设备启动蓝牙扫描,获取扫描到的各蓝牙设备的类型。
[0037] 步骤S12,根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内。
[0038] 步骤S13,在待接入的所述蓝牙设备为标准蓝牙设备时,进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态。
[0039] 步骤S14,在待接入的所述蓝牙设备为低功耗蓝牙设备时,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
[0040] 以下对上述步骤S11至步骤S14进行详细说明。
[0041] 步骤S11,基于linux系统的电子设备启动蓝牙扫描,获取扫描到的各蓝牙设备的类型,从而确定蓝牙设备是标准蓝牙设备,还是低功耗蓝牙设备。
[0042] 步骤S12,根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内。要兼容标准蓝牙设备和低功耗蓝牙设备这两个类型的蓝牙设备,在本实施例中,预先设置了两个类型的数组:标准蓝牙结构体数组和低功耗蓝牙结构体数组,通过标准蓝牙结构体数组和低功耗蓝牙结构体数组分别保存标准蓝牙设备的设备信息和低功耗蓝牙设备的设备信息。
[0043] 其中,在本实施例中,所述设备信息包括:蓝牙设备名称、蓝牙设备ID、生产厂商ID和/或设备功率中的一个或几个组合。
[0044] 步骤S13,在待接入的所述蓝牙设备为标准蓝牙设备时,进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态。
[0045] 其中,在本实施例中,所述获取所述标准蓝牙设备的设备信息具体包括:在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
[0046] 更进一步地,在本实施例中,在连接所述标准蓝牙设备之后,所述更新所连接的标准蓝牙设备的设备状态具体包括:根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
[0047] 具体地,在本实施例中,基于linux系统的电子设备接入标准(经典)蓝牙设备的过程如下:
[0048] 1)基于linux系统的电子设备启动蓝牙扫描进程,调用扫描新设备函数,在发现蓝牙设备为标准蓝牙设备时,初始化用来保存新发现的标准蓝牙设备的设备信息的标准蓝牙结构体数组,在本实施例中,例如定义为edr_disc()。然后可以注册一个标准蓝牙设备执行函数,例如定义为edr(),该执行函数在扫描完成后执行。
[0049] 2)执行函数edr(),保存新的标准蓝牙设备的设备信息至数组edr_disc()中。
[0050] 3)蓝牙设备认证过程,在蓝牙配对认证成功后,收到AUTH_CMPL(认证完成)事件,与标准蓝牙结构体数组保存的数据进行判断,从而获取蓝牙设备名称、蓝牙设备ID、生产厂商ID和设备功率等,将此设备信息保存在一个设备表中,更新此设备状态为未连接。
[0051] 4)选择待选设备,启动连接、数据处理进程。由于标准蓝牙设备的类型设备不是自动进行连接,需要选择对应的设备启动该进程,建立通道进行数据的处理。
[0052] 5)接收预设的open事件,与标准蓝牙结构体数组保存的数据进行判断,获取设备其他信息并更新设备表,且设置该设备状态为已连接。
[0053] 步骤S14,在待接入的所述蓝牙设备为低功耗蓝牙设备时,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
[0054] 其中,在本实施例中,获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态具体包括:根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
[0055] 具体地,在本实施例中,基于linux系统的电子设备接入低功耗蓝牙设备的过程如下:
[0056] 1)基于linux系统的电子设备启动蓝牙扫描进程,调用扫描新设备函数,在发现蓝牙设备为低功耗蓝牙设备时,初始化用来保存新发现的低功耗蓝牙设备的设备信息的低功耗蓝牙结构体数组,在本实施例中,例如定义为ble_disc()。然后可以注册一个低功耗蓝牙设备执行函数,例如定义为ble(),该函数在扫描完成后执行。
[0057] 2)执行函数ble(),保存新的低功耗蓝牙设备的设备信息至数组ble_disc()中。
[0058] 3)接收预设的open事件,读取低功耗蓝牙设备其中的设备地址信息,与低功耗蓝牙结构体数组保存的数据进行判断,从而获取蓝牙设备名称、蓝牙设备ID、生产厂商ID和设备功率等,并将此设备信息保存在设备表中,同时更新设备的状态为已连接。
[0059] 为实现上述蓝牙通信方法,本实施例对应提供提供一种蓝牙通信系统,应用于基于linux系统的电子设备中,具体地,如图2所示,所述蓝牙通信系统1包括:类型数组模块11,获取模块12,保存模块13,标准蓝牙设备处理模块14以及低功耗蓝牙设备处理模块15。
[0060] 所述类型数组模块11包括用于存储蓝牙设备的设备信息的类型数组。要兼容标准蓝牙设备和低功耗蓝牙设备这两个类型的蓝牙设备,在本实施例中,在所述类型数组模块11中预先设置了两个类型的数组:标准蓝牙结构体数组和低功耗蓝牙结构体数组,通过标准蓝牙结构体数组和低功耗蓝牙结构体数组分别保存标准蓝牙设备的设备信息和低功耗蓝牙设备的设备信息。
[0061] 所述获取模块12用于在启动蓝牙扫描并获取扫描到的各蓝牙设备的类型,从而确定蓝牙设备是标准蓝牙设备,还是低功耗蓝牙设备。
[0062] 所述保存模块13与所述类型数组模块11和所述获取模块12相连,用于根据获取的各蓝牙设备的类型将各所述蓝牙设备的设备信息保存至与各蓝牙设备的类型对应的预先设置的类型数组内。
[0063] 其中,在本实施例中,所述设备信息包括:蓝牙设备名称、蓝牙设备ID、生产厂商ID和/或设备功率中的一个或几个组合。
[0064] 所述标准蓝牙设备处理模块14与所述保存模块13相连,在待接入的所述蓝牙设备为标准蓝牙设备时,用于进行蓝牙配对认证,获取所述标准蓝牙设备的设备信息并显示各标准蓝牙设备的设备状态,选择所要连接的标准蓝牙设备建立蓝牙通信并更新所连接的标准蓝牙设备的设备状态。
[0065] 其中,在本实施例中,所述标准蓝牙设备处理模块14还用于在蓝牙配对认证成功后,根据触发的认证完成事件,从所述标准蓝牙设备所对应的类型数组内获取所述标准蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中。
[0066] 更进一步地,在本实施例中,所述标准蓝牙设备处理模块14还用于根据接收到的预设事件,更新所述设备表并根据更新后的所述设备表更新所连接的标准蓝牙设备的设备状态。
[0067] 具体地,在本实施例中,所述标准蓝牙设备处理模块14处理接入标准(经典)蓝牙设备的过程如下:
[0068] 1)基于linux系统的电子设备启动蓝牙扫描进程,调用扫描新设备函数,在发现蓝牙设备为标准蓝牙设备时,初始化用来保存新发现的标准蓝牙设备的设备信息的标准蓝牙结构体数组,在本实施例中,例如定义为edr_disc()。然后可以注册一个标准蓝牙设备执行函数,例如定义为edr(),该执行函数在扫描完成后执行。
[0069] 2)执行函数edr(),保存新的标准蓝牙设备的设备信息至数组edr_disc()中。
[0070] 3)蓝牙设备认证过程,在蓝牙配对认证成功后,收到AUTH_CMPL(认证完成)事件,与标准蓝牙结构体数组保存的数据进行判断,从而获取蓝牙设备名称、蓝牙设备ID、生产厂商ID和设备功率等,将此设备信息保存在一个设备表中,更新此设备状态为未连接。
[0071] 4)选择待选设备,启动连接、数据处理进程。由于标准蓝牙设备的类型设备不是自动进行连接,需要选择对应的设备启动该进程,建立通道进行数据的处理。
[0072] 5)接收预设的open事件,与标准蓝牙结构体数组保存的数据进行判断,获取设备其他信息并更新设备表,且设置该设备状态为已连接。
[0073] 所述低功耗蓝牙设备处理模块15与所述保存模块13相连,在待接入的所述蓝牙设备为低功耗蓝牙设备时,用于获取所述低功耗蓝牙设备的设备信息、自动建立蓝牙通信并更新已连接的低功耗蓝牙设备的设备状态。
[0074] 其中,在本实施例中,所述低功耗蓝牙设备处理模块15还用于根据接收到的预设事件,自动建立蓝牙通信,从所述低功耗蓝牙设备所对应的类型数组内获取所述低功耗蓝牙设备的设备信息并将所述设备信息保存至预设的设备表中,同时更新已连接的低功耗蓝牙设备的设备状态。
[0075] 具体地,在本实施例中,基于linux系统的电子设备接入低功耗蓝牙设备的过程如下:
[0076] 1)基于linux系统的电子设备启动蓝牙扫描进程,调用扫描新设备函数,在发现蓝牙设备为低功耗蓝牙设备时,初始化用来保存新发现的低功耗蓝牙设备的设备信息的低功耗蓝牙结构体数组,在本实施例中,例如定义为ble_disc()。然后可以注册一个低功耗蓝牙设备执行函数,例如定义为ble(),该函数在扫描完成后执行。
[0077] 2)执行函数ble(),保存新的低功耗蓝牙设备的设备信息至数组ble_disc()中。
[0078] 3)接收预设的open事件,读取低功耗蓝牙设备其中的设备地址信息,与低功耗蓝牙结构体数组保存的数据进行判断,从而获取蓝牙设备名称、蓝牙设备ID、生产厂商ID和设备功率等,并将此设备信息保存在设备表中,同时更新设备的状态为已连接。
[0079] 此外,如图3所示,本实施例还提供一种电子设备2,所述电子设备2内包含如上所述的蓝牙通信系统1,由于上述蓝牙通信系统1能兼容经典(标准)、低功耗蓝牙设备并进行数据通信,这样,经典、低功耗蓝牙设备都能够与电子设备2(例如为智能路由器)进行通信。例如,经典、低功耗蓝牙设备为健康医疗设备时,健康医疗设备可以通过所述电子设备2(例如为智能路由器)将健康医疗设备的数据传输到云端,为智慧医疗提供可靠的个人健康档案
[0080] 综上所述,本发明通过根据蓝牙设备的类型,建立用于保存不同类型的蓝牙设备的设备信息的不同类型数组,再分别处理不同类型的蓝牙设备的蓝牙建立过程,可以在linux系统下,使电子设备能兼容经典(标准)、低功耗蓝牙设备并进行数据通信。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0081] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
QQ群二维码
意见反馈