蓝牙的切换方法及装置

申请号 CN201610696409.0 申请日 2016-08-19 公开(公告)号 CN106454697A 公开(公告)日 2017-02-22
申请人 深圳市元征科技股份有限公司; 发明人 刘均; 彭勇;
摘要 本 发明 公开了一种蓝牙的切换方法,该方法包括: 数据采集 服务模 块 建立与 汽车 诊断设备的蓝牙之间的连接;在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。本发明还公开了一种蓝牙的切换装置。本发明能够避免蓝牙资源的抢占和CPU资源的浪费,满足车机系统中各个功能的蓝牙连接需求。
权利要求

1.一种蓝牙的切换方法,其特征在于,包括如下步骤:
数据采集服务模建立与汽车诊断设备的蓝牙之间的连接;
在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;
在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
2.如权利要求1所述的方法,其特征在于,所述在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理的步骤包括:
在车机APP启动后,若所述车机APP接收到所述升级指令,则根据所述升级指令检测汽车诊断设备是否存在新版本;
在检测到汽车诊断设备存在新版本时,所述车机APP将所述升级指令发送给所述数据采集服务模块和所述体检服务模块;
所述数据采集服务模块根据所述升级指令断开与所述蓝牙之间的连接;所述体检服务模块根据所述升级指令建立与所述蓝牙的连接,并根据所述升级指令和所述新版本对所述汽车诊断设备进行升级;
所述在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接的步骤包括:
在所述升级完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
3.如权利要求2所述的方法,其特征在于,所述在检测到汽车诊断设备存在新版本时,所述车机APP将所述升级指令发送给所述数据采集服务模块和所述体检服务模块的步骤包括:
在检测到汽车诊断设备存在新版本时,所述车机APP通过广播发送所述升级指令。
4.如权利要求1所述的方法,其特征在于,所述在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理的步骤还包括:
在车机APP启动后,若所述车机APP接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块;
所述数据采集服务模块根据所述体检指令断开与所述蓝牙之间的连接;所述体检服务模块根据所述体检指令建立与所述蓝牙的连接,并根据所述体检指令对汽车进行体检;
所述在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接的步骤还包括:
在所述体检完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
5.如权利要求4所述的方法,其特征在于,所述在车机APP启动后,若所述车机APP接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块的步骤包括:
在车机APP启动后,若所述车机APP接收到所述体检指令,则所述车机APP通过广播发送所述体检指令。
6.一种蓝牙的切换装置,其特征在于,所述装置包括:
数据采集服务模块,用于建立与汽车诊断设备的蓝牙之间的连接;
车机APP模块,用于在车机APP启动后,接收升级或体检指令;
所述数据采集服务模块还用于根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接;
体检服务模块,用于根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;
所述数据采集服务模块还用于在所述处理完成时,重新建立与所述蓝牙之间的连接。
7.如权利要求6所述的装置,其特征在于,
所述车机APP模块还用于在车机APP启动后,若接收到所述升级指令,则根据所述升级指令检测汽车诊断设备是否存在新版本;在检测到汽车诊断设备存在新版本时,将所述升级指令发送给所述数据采集服务模块和所述体检服务模块;
所述数据采集服务模块还用于根据所述升级指令断开与所述蓝牙之间的连接;
所述体检服务模块还用于根据所述升级指令建立与所述蓝牙的连接,并根据所述升级指令和所述新版本对所述汽车诊断设备进行升级;
所述数据采集服务模块还用于在所述升级完成时,重新建立与所述蓝牙之间的连接。
8.如权利要求7所述的装置,其特征在于,所述车机APP模块还用于在检测到汽车诊断设备存在新版本时,通过广播发送所述升级指令。
9.如权利要求6所述的装置,其特征在于,
所述车机APP模块还用于在车机APP启动后,若接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块;
所述数据采集服务模块还用于根据所述体检指令断开与所述蓝牙之间的连接;
所述体检服务模块还用于根据所述体检指令建立与所述蓝牙的连接,并对汽车进行体检;
所述数据采集服务模块还用于在所述体检完成时,重新建立与所述蓝牙之间的连接。
10.如权利要求9所述的装置,其特征在于,所述车机APP模块还用于在启动后,若接收到所述体检指令,则通过广播发送所述体检指令。

说明书全文

蓝牙的切换方法及装置

技术领域

[0001] 本发明涉及汽车技术领域,尤其涉及一种蓝牙的切换方法及装置。

背景技术

[0002] 车机是安装在汽车里面的车载信息娱乐产品的简称,功能在于实现人与车,车与外界(车与车)的信息通讯。市场上的主流车机采用android操作系统,具备3G/4G通讯模及蓝牙通讯模块,车机上搭载了一种集车辆体检(诊断)、行车轨迹、实时监控、车友车群、消息报警等功能的APP应用系统,以此满足用户日常行车的应用需求。
[0003] 目前,数据采集作为一种服务模块移植到车机上,通过蓝牙通道,与OBD(on-board diagnostic,车载诊断系统)终端进行无线通讯,实时获取车辆数据,并将数据上传给数据平台,可以为车机APP提供实时监控的数据服务模块。然而,而车机系统中的数据采集功能、体检功能、汽车诊断设备的升级功能等对汽车诊断设备的蓝牙都是独占方式,汽车诊断设备的蓝牙同一时间只能满足一种设备的某一个应用连接。如果使用现有的蓝牙连接机制,车机通电后,若数据采集服务模块与汽车诊断设备的蓝牙连接,那么需要体检或升级时,体检或升级应用程序无法成功连接蓝牙,导致体检或升级功能失效;同样,体检或升级过程中如果数据采集服务模块连接蓝牙,也无法连接成功。因此,这种蓝牙连接实现功能单一,不能满足车机蓝牙系统的复杂使用情况。

发明内容

[0004] 本发明的主要目的在于提出一种蓝牙的切换方法及装置,旨在协调车机中多个应用程序与汽车诊断设备的蓝牙之间的连接,保证蓝牙连接的快速有效切换,满足车机系统中各个功能的蓝牙连接需求。
[0005] 为实现上述目的,本发明提供一种蓝牙的切换方法,所述方法包括如下步骤:
[0006] 数据采集服务模块建立与汽车诊断设备的蓝牙之间的连接;
[0007] 在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;
[0008] 在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0009] 可选地,所述在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理的步骤包括:
[0010] 在车机APP启动后,若所述车机APP接收到所述升级指令,则根据所述升级指令检测汽车诊断设备是否存在新版本;
[0011] 在检测到汽车诊断设备存在新版本时,所述车机APP将所述升级指令发送给所述数据采集服务模块和所述体检服务模块;
[0012] 所述数据采集服务模块根据所述升级指令断开与所述蓝牙之间的连接;所述体检服务模块根据所述升级指令建立与所述蓝牙的连接,并根据所述升级指令和所述新版本对所述汽车诊断设备进行升级;
[0013] 所述在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接的步骤包括:
[0014] 在所述升级完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0015] 可选地,所述在检测到汽车诊断设备存在新版本时,所述车机APP将所述升级指令发送给所述数据采集服务模块和所述体检服务模块的步骤包括:
[0016] 在检测到汽车诊断设备存在新版本时,所述车机APP通过广播发送所述升级指令。
[0017] 可选地,所述在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理的步骤还包括:
[0018] 在车机APP启动后,若所述车机APP接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块;
[0019] 所述数据采集服务模块根据所述体检指令断开与所述蓝牙之间的连接;所述体检服务模块根据所述体检指令建立与所述蓝牙的连接,并根据所述体检指令对汽车进行体检;
[0020] 所述在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接的步骤还包括:
[0021] 在所述体检完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0022] 可选地,所述在车机APP启动后,若所述车机APP接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块的步骤包括:
[0023] 在车机APP启动后,若所述车机APP接收到所述体检指令,则所述车机APP通过广播发送所述体检指令。
[0024] 此外,为实现上述目的,本发明还提供一种蓝牙的切换装置,所述装置包括:
[0025] 数据采集服务模块,用于建立与汽车诊断设备的蓝牙之间的连接;
[0026] 车机APP模块,用于在车机APP启动后,接收升级或体检指令;
[0027] 所述数据采集服务模块还用于根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接;
[0028] 体检服务模块,用于根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;
[0029] 所述数据采集服务模块还用于在所述处理完成时,重新建立与所述蓝牙之间的连接。
[0030] 可选地,所述车机APP模块还用于在车机APP启动后,若接收到所述升级指令,则根据所述升级指令检测汽车诊断设备是否存在新版本,在检测到汽车诊断设备存在新版本时,将所述升级指令发送给所述数据采集服务模块和所述体检服务模块;
[0031] 所述数据采集服务模块还用于根据所述升级指令断开与所述蓝牙之间的连接;
[0032] 所述体检服务模块还用于根据接收到所述车机APP发送的所述升级指令建立与所述蓝牙的连接,并根据所述升级指令和所述新版本对所述汽车诊断设备进行升级;
[0033] 所述数据采集服务模块还用于在所述升级完成时,重新建立与所述蓝牙之间的连接。
[0034] 可选地,所述车机APP模块还用于在检测到汽车诊断设备存在新版本时,通过广播发送所述升级指令。
[0035] 可选地,所述车机APP模块还用于在车机APP启动后,若接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块;
[0036] 所述数据采集服务模块还用于根据所述体检指令断开与所述蓝牙之间的连接;
[0037] 所述体检服务模块还用于根据所述体检指令建立与所述蓝牙的连接,并对汽车进行体检;
[0038] 所述数据采集服务模块还用于在所述体检完成时,重新建立与所述蓝牙之间的连接。
[0039] 可选地,所述车机APP模块还用于在启动后,若接收到所述体检指令,则通过广播发送所述体检指令。
[0040] 本发明数据采集服务模块建立与汽车诊断设备的蓝牙之间的连接;在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。通过上述方式,车机通电后,数据采集服务模块启动并连接汽车诊断设备的蓝牙,需要体检或升级时,汽车诊断设备的蓝牙迅速切换到与体检服务模块连接,实现体检或升级功能;体检或升级完成后,汽车诊断设备的蓝牙迅速切换回与数据采集服务模块连接,实现车辆数据的实时采集。本发明通过汽车诊断设备的蓝牙与车机应用程序连接间的快速切换,避免了蓝牙资源的抢占和CPU资源的浪费,满足了车机系统中各个功能的蓝牙连接需求。附图说明
[0041] 图1为本发明蓝牙设备的切换方法第一实施例的流程示意图;
[0042] 图2为本发明第一实施例中汽车通讯系统的总体结构示意图;
[0043] 图3为本发明第一实施例中蓝牙通讯通道的数据流向示意图;
[0044] 图4为本发明蓝牙设备的切换方法第二实施例的流程示意图;
[0045] 图5为本发明蓝牙设备的切换方法第三实施例的流程示意图;
[0046] 图6为本发明蓝牙设备的切换方法第四实施例的流程示意图;
[0047] 图7为本发明蓝牙设备的切换装置第一实施例的功能模块示意图。
[0048] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0049] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0050] 本发明提供一种蓝牙的切换方法。
[0051] 参照图1,图1为本发明蓝牙的切换方法第一实施例的流程示意图,所述蓝牙的切换方法包括:
[0052] 步骤S100,数据采集服务模块建立与汽车诊断设备的蓝牙之间的连接。
[0053] 本实施例中以汽车诊断设备为golo 1s(一种蓝牙诊断接头,型号为1s)为例进行说明,当然,具体实施中还可以根据实际需要使用其他汽车诊断设备,可进行灵活选择。
[0054] 参照图2,汽车通讯系统由车机应用系统、golo 1s和OBD(On-Board Diagnostic,车载诊断系统)组成,OBD用于随时监控汽车多个系统和部件,如发动机、排放控制系统、燃油系统等。当车机用户将golo 1s的接头与OBD的接口连接后,车机上的数据采集服务模块就可以通过golo 1s的蓝牙与OBD终端进行无线通讯,实时获取OBD检测到的车辆数据,并通过互联网将获取到的车辆数据上传到数据平台,数据平台对数据进行解析计算,再将车辆行程数据、报警等展示给车机应用系统。
[0055] 具体地,作为一种实施方式,车机开机后,android系统发送开机广播:android.intent.action.BOOT_COMPLETED,数据采集服务模块收到广播后启动,并且判断本地是否保存了蓝牙地址,如果本地保存了蓝牙地址,则直接连接本地蓝牙地址,如果本地没有保存蓝牙地址,则弹出蓝牙设备列表搜索设备,让用户选择需要连接的蓝牙设备,本实施例中用户选择连接golo 1s的蓝牙,然后数据采集服务模块建立与golo 1s的蓝牙之间的连接,通过golo 1s蓝牙通讯通道,数据采集服务模块可以实时采集OBD检测到的车辆数据。
[0056] 步骤S200,在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理。
[0057] 参照图3,车机APP、数据采集服务模块和体检服务模块通过蓝牙通讯通道与golo 1s终端进行通讯。数据采集服务模块即为图中所示的数据采集服务,体检服务模块即为图中所示的体检服务,可以将数据采集服务模块和体检服务模块认为是两个没有操作界面的应用程序。
[0058] 具体地,在车机开机后,用户可以点击车机中各车机APP图标,以启动对应的车机APP,当然也可以在车机开机后,自动启动各车机APP。在车机APP启动后,若车机APP接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则将升级指令发送给数据采集服务模块和体检服务模块,根据升级指令,数据采集服务模块断开与golo 1s的蓝牙之间的连接,体检服务模块建立与golo 1s蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块可以获取升级数据并进行golo 1s的升级。具体实施中升级指令还可以不通过用户触发产生,而是根据预先设置的定时升级功能产生升级指令,比如,用户可以预先设置一个定时升级周期,车机APP根据设定的升级周期自动获取升级指令。
[0059] 在车机APP启动后,若车机APP接收到用户触发的体检指令,则将体检指令发送给数据采集服务模块和体检服务模块,根据体检指令,数据采集服务模块断开与golo 1s的蓝牙之间的连接,体检服务模块建立与golo 1s蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块可以获取OBD检测到的数据,并根据所获取的数据进行车辆体检。具体实施中体检指令还可以不通过用户触发产生,而是根据预先设置的定时体检功能产生体检指令,比如,用户可以预先设置一个定时体检周期,车机APP根据设定的体检周期自动获取体检指令。
[0060] 步骤S300,在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0061] 具体地,在golo 1s升级完成时,车机APP可以通过广播方式告知数据采集服务模块,数据采集服务模块接收到广播后重新建立与与golo 1s的蓝牙之间的连接。当然,车机APP也可以不通过广播的方式告知数据采集服务模块,比如直接发送升级结束指令给数据采集服务模块,数据采集服务模块接收到升级结束指令后重新建立与golo 1s的蓝牙之间的连接。
[0062] 在车辆体检完成时,车机APP可以通过广播方式告知数据采集服务模块,数据采集服务模块接收到广播后重新建立与golo 1s的蓝牙之间的连接。当然,车机APP也可以不通过广播的方式告知数据采集服务模块,比如直接发送体检结束指令给数据采集服务模块,数据采集服务模块接收到体检结束指令后重新建立与golo 1s的蓝牙之间的连接。
[0063] 在本实施例中,车机开机后,数据采集服务模块建立与汽车诊断设备的蓝牙之间的连接;在车机APP启动后,若所述车机APP接收到升级或体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理;在所述处理完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。由于车机系统中的数据采集功能、体检功能、汽车诊断设备的升级功能等对汽车诊断设备的蓝牙都是独占方式,汽车诊断设备的蓝牙同一时间只能满足一种设备的某一个应用程序连接,在有多个应用程序试图连接蓝牙的情况下,会造成蓝牙资源的抢占和CPU资源的浪费,而本实施例通过广播方式建立数据采集服务模块与golo 1s的蓝牙之间的连接,在车机APP启动后,根据车机APP发送的升级或体检指令将golo 1s的蓝牙切换到与体检服务模块连接,完成对应的升级或体检功能,既保证了数据采集服务模块在golo 1s的蓝牙空闲时与其保持连接,又避免了蓝牙资源的抢占和CPU资源的浪费,满足了车机系统中各个功能的蓝牙连接需求。
[0064] 进一步地,参照图4,图4为本发明蓝牙设备的切换方法第二实施例的流程示意图。
[0065] 基于上述图1所示的实施例,所述步骤S200包括:
[0066] 步骤S210,在车机APP启动后,若所述车机APP接收到升级指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述升级指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述升级指令建立与所述蓝牙的连接,并进行汽车诊断设备的升级。
[0067] 步骤S220,在车机APP启动后,若所述车机APP接收到体检指令,则所述数据采集服务模块根据接收到所述车机APP发送的所述体检指令断开与所述蓝牙之间的连接,体检服务模块根据接收到所述车机APP发送的所述体检指令建立与所述蓝牙的连接,并进行车辆体检。
[0068] 所述步骤S300包括:
[0069] 步骤S310,在所述升级完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0070] 步骤S320,在所述体检完成时,所述数据采集服务模块重新建立与所述蓝牙之间的连接。
[0071] 具体地,在车机APP启动后,若车机APP接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则车机APP通过广播将升级指令发送给数据采集服务模块和体检服务模块,根据升级指令,数据采集服务模块断开与golo 1s的蓝牙之间的连接,体检服务模块建立与golo 1s蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块可以获取升级数据并进行golo 1s的升级。
[0072] golo 1s升级完成后,golo 1s进行重启,重启完成后,车机APP发送升级结束广播:stopupgrade,数据采集服务模块收到广播后,与golo 1s蓝牙重新建立连接。
[0073] 在车机APP启动后,若车机APP接收到用户触发的体检指令,则通过广播将体检指令发送给数据采集服务模块和体检服务模块,根据体检指令,数据采集服务模块断开与golo 1s的蓝牙之间的连接,体检服务模块建立与golo1s的蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块可以获取OBD检测到的数据,并根据所获取的数据进行车辆体检。
[0074] 车 辆 体 检 完 成 后 ,车 机 A P P 发 送 体 检 结 束 广 播 :InspectionProcessActicity.stopdiagnose,数据采集服务模块收到广播后,与golo1s蓝牙重新建立连接。
[0075] 在本实施例中,在车机APP启动后,若车机APP接收到用户触发的升级指令,且检测到汽车诊断设备存在新版本,则将汽车诊断设备的蓝牙切换到与体检服务模块连接,体检服务模块根据新版本对汽车诊断设备进行升级,在升级完成时,数据采集服务模块与汽车诊断设备的蓝牙重新建立连接;若车机APP接收到用户触发的体检指令,则将汽车诊断设备的蓝牙切换到与体检服务模块连接,体检服务模块根据体检指令对汽车进行体检,在体检完成时,数据采集服务模块与汽车诊断设备的蓝牙重新建立连接。本实施例通过golo 1s的蓝牙在数据采集服务模块、车机APP和体检服务模块三者之间的有效切换,保证了蓝牙连接不冲突,使车机实现了车辆数据实时采集、golo 1s升级和车辆体检等功能,满足了车机蓝牙系统的复杂使用情况。
[0076] 进一步地,参照图5,图5为本发明蓝牙设备的切换方法第三实施例的流程示意图,基于上述图4所示的实施例,所述步骤S210包括:
[0077] 步骤S211,在车机APP启动后,若所述车机APP接收到所述升级指令,则根据所述升级指令检测汽车诊断设备是否存在新版本。
[0078] 步骤S212,在检测到汽车诊断设备存在新版本时,所述车机APP将所述升级指令发送给所述数据采集服务模块和所述体检服务模块。
[0079] 步骤S213,所述数据采集服务模块根据所述升级指令断开与所述蓝牙之间的连接,所述体检服务模块根据接收到所述车机APP发送的所述升级指令建立与所述蓝牙的连接,并根据所述升级指令和所述新版本对所述汽车诊断设备进行升级。
[0080] 具体地,作为一种实施方式,在车机APP启动后,若车机APP接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则车机APP发送升级广播:startupgrade,或者说通过广播的方式发送升级指令:startupgrade,数据采集服务模块接收到该升级广播或者说升级指令后断开与golo 1s蓝牙的连接,同时可以向体检服务模块发送中断状态,然后体检服务模块根据数据采集服务模块的中断状态建立与golo 1s蓝牙的连接,根据车机APP发送的升级指令和新版本对golo 1s进行升级。当然数据采集服务模块也可以不向体检服务模块发送中断状态,比如体检服务模块可以接收车机APP发送的升级广播,在接收升级广播后,相隔预设时间,等待数据采集服务模块断开与golo 1s蓝牙的连接,然后体检服务模块建立与golo 1s蓝牙的连接。
[0081] 进一步地,为方便用户使用,在对golo 1s进行升级时,数据采集服务模块还可以设置升级标志,用户可以根据升级标志掌握golo 1s升级状态,避免升级过程中蓝牙通讯出现异常,导致golo 1s一直处于升级状态或升级不成功。例如,如果数据采集服务模块的升级标志置位时间超过了一定的预估时间,那么用户可以强制断开体检服务模块与golo 1s的蓝牙之间的连接,结束golo1s的升级,重新让数据采集服务模块与golo 1s的蓝牙建立连接。
[0082] 在本实施例中,车机APP启动后,若车机APP接收到升级指令,则检测汽车诊断设备是否有新版本,若有则发送升级广播,数据采集服务模块收到升级广播后中断与汽车诊断设备的蓝牙之间的连接,并向体检服务模块发送中断状态,体检服务模块根据中断状态建立与所述蓝牙的连接,进行汽车诊断设备的升级。本实施例中各个汽车应用程序采用广播通知的方式来实现进程间通讯,协调蓝牙设备的切换,使注册了广播接收器的用户都能够接收到广播,扩大了通信范围。同时,数据采集服务模块在golo 1s升级过程中设置升级标志,可以让用户掌握升级状态,避免升级过程中蓝牙通讯出现异常,影响了数据采集服务模块对车辆数据的实时采集。通过上述方式,本实施例可以协调车机多个应用程序与golo 1s的蓝牙之间的连接,保证了蓝牙连接的快速有效切换,满足了车机系统中各个功能的蓝牙连接需求。
[0083] 进一步地,参照图6,图6为本发明蓝牙的切换方法第四实施例的流程示意图。基于上述图4所示的实施例,所述步骤S220包括:
[0084] 步骤S221,在车机APP启动后,若所述车机APP接收到所述体检指令,则将所述体检指令发送给所述数据采集服务模块和所述体检服务模块。
[0085] 步骤S222,所述数据采集服务模块根据所述体检指令断开与所述蓝牙之间的连接,所述体检服务模块根据接收到的所述体检指令建立与所述蓝牙的连接,并根据所述体检指令对汽车进行体检。
[0086] 具体地,作为一种实施方式,在车机APP启动后,若车机APP接收到用户触发的体检指令,则车机APP发送体检广播:InspectionProcess Acticity.startdiagnose,或者说通过广播的方式发送体检指令:Acticity.startdiagnose,数据采集服务模块接收到该体检广播或者说体检指令后断开与golo 1s蓝牙的连接,同时可以向体检服务模块发送中断状态,体检服务模块根据数据采集服务模块的中断状态建立与golo 1s蓝牙的连接,并根据车机APP发送的体检指令对车辆进行体检。当然数据采集服务模块也可以不向体检服务模块发送中断状态,比如体检服务模块可以接收车机APP发送的体检广播,在接收体检广播后,相隔预设时间,等待数据采集服务模块断开与golo 1s蓝牙的连接,然后体检服务模块建立与golo 1s蓝牙的连接。
[0087] 进一步地,为方便用户使用,在对车辆进行体检时,数据采集服务模块还可以设置体检标志,用户可以根据体检标志掌握车辆体检状态,避免体检过程中蓝牙通讯出现异常,导致golo 1s一直处于体检状态或体检不成功。例如,如果数据采集服务模块的体检标志置位时间超过了一定的预估时间,那么用户可以强制断开体检服务模块与golo 1s的蓝牙之间的连接,结束golo 1s的升级,重新让数据采集服务模块与golo 1s的蓝牙建立连接。
[0088] 在本实施例中,车机APP启动后,若接收到体检指令,则发送体检广播,数据采集服务模块收到体检广播后中断与汽车诊断设备的蓝牙之间的连接,并向体检服务模块发送中断状态,体检服务模块根据中断状态建立与蓝牙的连接,进行车辆体检,并设置体检标志。本实施例中各个汽车应用程序采用广播通知的方式来实现进程间通讯,协调蓝牙设备的切换,使注册了广播接收器的用户都能够接收到广播,扩大了通信范围。同时,数据采集服务模块在golo 1s升级过程中设置体检标志,可以让用户掌握体检状态,避免体检过程中蓝牙通讯出现异常,影响了数据采集服务模块对车辆数据的实时采集。通过上述方式,本实施例可以协调车机多个应用程序与golo 1s的蓝牙之间的连接,保证了蓝牙连接的快速有效切换,满足了车机系统中各个功能的蓝牙连接需求。
[0089] 本发明还提供一种蓝牙的切换装置。
[0090] 参照图7,图7为本发明蓝牙设备的切换装置第一实施例的功能模块示意图,所述蓝牙设备的切换装置包括:
[0091] 数据采集服务模块100,用于建立与汽车诊断设备的蓝牙之间的连接。
[0092] 本实施例中以汽车诊断设备为golo 1s(一种蓝牙诊断接头,型号1s)为例进行说明,当然,具体实施中还可以根据实际需要使用其他汽车诊断设备,进行灵活选择。
[0093] 参照图2,汽车通讯系统由车机应用系统、golo 1s和OBD(On-Board Diagnostic,车载诊断系统)组成,OBD用于随时监控汽车多个系统和部件,如发动机、排放控制系统、燃油系统等。当车机用户将golo 1s的接头与OBD的接口连接后,车机上的数据采集服务模块100就可以通过golo 1s的蓝牙与OBD终端进行无线通讯,实时获取OBD检测到的车辆数据,并通过互联网将获取到的车辆数据上传到数据平台,数据平台对数据进行解析计算,再将车辆行程数据、报警等展示给车机应用系统。
[0094] 具体地,作为一种实施方式,车机开机后,android系统发送开机广播:android.intent.action.BOOT_COMPLETED,数据采集服务模块100收到广播后启动,并且判断本地是否保存了蓝牙地址,如果本地保存了蓝牙地址,则直接连接本地蓝牙地址,如果本地没有保存蓝牙地址,则弹出蓝牙设备列表搜索设备,让用户选择需要连接的蓝牙设备,本实施例中用户选择连接golo 1s的蓝牙,数据采集模块100建立与golo 1s的蓝牙之间的连接,通过golo 1s蓝牙通讯通道,数据采集模块100可以实时采集OBD检测到的车辆数据。
[0095] 车机APP模块200,用于在车机APP启动后,接收升级或体检指令。
[0096] 所述数据采集服务模块100还用于根据所述车机APP发送的所述升级或体检指令断开与所述蓝牙之间的连接。
[0097] 体检服务模块300,用于根据接收到所述车机APP发送的所述升级或体检指令建立与所述蓝牙的连接,并进行对应处理。
[0098] 参照图3,车机APP、数据采集服务模块和体检服务模块通过蓝牙通讯通道与golo 1s终端进行通讯。数据采集服务模块即为图中所示的数据采集服务,体检服务模块即为图中所示的体检服务,可以将数据采集服务模块和体检服务模块认为是两个没有操作界面的应用程序。
[0099] 具体地,在车机开机后,用户可以点击车机中各车机APP图标,以启动对应的车机APP模块200,当然也可以在车机开机后,自动启动各车机APP模块200。在车机APP模块200启动后,若车机APP模块200接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则将升级指令发送给数据采集服务模块100和体检服务模块300,根据升级指令,数据采集服务模块100断开与golo 1s的蓝牙之间的连接,体检服务模块300建立与golo 1s蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块300可以获取升级数据并进行golo 1s的升级。具体实施中升级指令还可以不通过用户触发产生,而是根据预先设置的定时升级功能产生升级指令,比如,用户可以预先设置一个定时升级周期,车机APP模块200根据设定的升级周期自动获取升级指令。
[0100] 在车机APP模块200启动后,若车机APP模块200接收到用户触发的体检指令,则将体检指令发送给数据采集服务模块100和体检服务模块300,根据体检指令,数据采集服务模块100断开与golo 1s的蓝牙之间的连接,体检服务模块300建立与golo 1s蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块300可以获取OBD检测到的数据,并根据所获取的数据进行车辆体检。具体实施中体检指令还可以不通过用户触发产生,而是根据预先设置的定时体检功能产生体检指令,比如,用户可以预先设置一个定时体检周期,车机APP模块200根据设定的体检周期自动获取体检指令。
[0101] 所述数据采集服务模块100还用于在所述处理完成时,重新建立与所述蓝牙之间的连接。
[0102] 具体地,在golo 1s升级完成时,车机APP模块200可以通过广播方式告知数据采集服务模块100,数据采集服务模块100接收到广播后重新建立与与golo1s的蓝牙之间的连接。当然,车机APP模块200也可以不通过广播的方式告知数据采集服务模块100,比如直接发送升级结束指令给数据采集服务模块100,数据采集服务模块100接收到升级结束指令后重新建立与golo 1s的蓝牙之间的连接。
[0103] 在车辆体检完成时,车机APP模块200可以通过广播方式告知数据采集服务模块100,数据采集服务模块100接收到广播后重新建立与golo 1s的蓝牙之间的连接。当然,车机APP模块200也可以不通过广播的方式告知数据采集服务模块100,比如直接发送体检结束指令给数据采集服务模块100,数据采集服务模块100接收到体检结束指令后重新建立与golo 1s的蓝牙之间的连接。
[0104] 在本实施例中,车机开机后,数据采集模块100建立与汽车诊断设备的蓝牙之间的连接;在车机APP模块200启动后,若车机APP接收到升级或体检指令,则所述数据采集服务模块100根据接收到所述车机APP模块200发送的升级或体检指令断开与所述蓝牙之间的连接,体检服务模块300根据接收到所述车机APP模块200发送的升级或体检指令建立与所述蓝牙的连接,并进行对应处理;在所述处理完成时,所述数据采集服务模块100重新建立与所述蓝牙之间的连接。由于车机系统中的数据采集功能、体检功能、汽车诊断设备的升级功能等对汽车诊断设备的蓝牙都是独占方式,汽车诊断设备的蓝牙同一时间只能满足一种设备的某一个应用连接,在有多个应用程序试图连接蓝牙的情况下,会造成蓝牙资源的抢占和CPU资源的浪费,而本实施例通过广播方式建立数据采集服务模块100与golo 1s的蓝牙之间的连接,在车机APP模块200启动后,根据车机APP模块200发送的升级或体检指令将golo 1s的蓝牙切换到与体检服务模块300连接,完成对应的升级或体检功能,既保证了数据采集服务模块100在golo 1s的蓝牙空闲时与其保持连接,又避免了蓝牙资源的抢占和CPU资源的浪费,满足了车机系统中各个功能的蓝牙连接需求。
[0105] 进一步地,参照图7,所述车机APP模块200还用于在车机APP启动后,接收升级指令;所述数据采集服务模块100还用于根据所述车机APP发送的所述升级指令断开与所述蓝牙之间的连接;所述体检服务模块300还用于根据接收到所述车机APP发送的所述升级指令建立与所述蓝牙的连接,并进行汽车诊断设备的升级。
[0106] 或者,所述车机APP模块200还用于在车机APP启动后,接收体检指令;所述数据采集服务模块100还用于根据所述车机APP发送的所述体检指令断开与所述蓝牙之间的连接;所述体检服务模块300还用于根据接收到所述车机APP发送的所述体检指令建立与所述蓝牙的连接,并进行车辆体检。
[0107] 所述数据采集服务模块100还用于:
[0108] 在所述升级完成时,所述数据采集服务模块100重新建立与所述蓝牙之间的连接;或者,在所述体检完成时,所述数据采集服务模块100重新建立与所述蓝牙之间的连接。
[0109] 具体地,在车机APP模块200启动后,若车机APP模块200接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则车机APP模块200通过广播将升级指令发送给数据采集服务模块100和体检服务模块300,根据升级指令,数据采集服务模块100断开与golo 1s的蓝牙之间的连接,体检服务模块300建立与golo 1s的蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块300可以获取升级数据并进行golo1s的升级。
[0110] golo 1s升级完成后,golo 1s进行重启,重启完成后,车机APP模块200发送升级结束广播:stopupgrade,数据采集服务模块100收到广播后,与golo1s蓝牙重新建立连接。
[0111] 在车机APP启动后,若车机APP模块200接收到用户触发的体检指令,则通过广播将体检指令发送给数据采集服务模块100和体检服务模块300,根据体检指令,数据采集服务模块100断开与golo 1s的蓝牙之间的连接,体检服务模块300建立与golo 1s的蓝牙之间的连接,通过golo 1s蓝牙通道,体检服务模块300可以获取OBD检测到的数据,并根据所获取的数据进行车辆体检。
[0112] 车 辆 体 检 完 成 后 ,车 机 A P P 发 送 体 检 结 束 广 播 :InspectionProcessActicity.stopdiagnose,数据采集服务模块100收到广播后,与golo 
1s蓝牙重新建立连接。
[0113] 在本实施例中,在车机APP启动后,若车机APP模块200接收到用户触发的升级指令,且检测到汽车诊断设备存在新版本,则将汽车诊断设备的蓝牙切换到与体检服务模块300连接,体检服务模块300根据新版本对汽车诊断设备进行升级,在升级完成时,数据采集服务模块100与汽车诊断设备的蓝牙重新建立连接;若车机APP模块200接收到用户触发的体检指令,则将汽车诊断设备的蓝牙切换到与体检服务模块300连接,体检服务模块300根据体检指令对汽车进行体检,在体检完成时,数据采集服务模块100重新建立与汽车诊断设备的蓝牙之间的连接。本实施例通过golo 1s的蓝牙在数据采集服务模块100、车机APP模块
200和体检服务模块300三者之间的有效切换,保证了蓝牙连接不冲突,使车机实现了车辆数据实时采集、golo 1s升级和车辆体检等功能,满足了车机蓝牙系统的复杂使用情况。
[0114] 进一步地,参照图7,所述车机APP模块200还用于在车机APP启动后,接收升级指令;
[0115] 所述数据采集服务模块100还用于根据所述车机APP发送的所述升级指令断开与所述蓝牙之间的连接;
[0116] 所述体检服务模块300还用于根据接收到所述车机APP发送的所述升级指令建立与所述蓝牙的连接,并进行汽车诊断设备的升级。
[0117] 具体地,作为一种实施方式,在车机APP启动后,若车机APP模块200接收到用户触发的golo 1s升级指令,则检测golo 1s是否存在新版本,若检测到golo 1s存在新版本,则车机APP模块200发送升级广播:startupgrade,或者说通过广播的方式发送升级指令:startupgrade,数据采集服务模块100接收到该升级广播或者说升级指令后断开与golo 1s蓝牙的连接,同时可以向体检服务模块300发送中断状态,然后体检服务模块300根据数据采集服务模块100的中断状态建立与golo 1s蓝牙的连接,根据所述升级指令和新版本对golo 1s进行升级。当然数据采集服务模块100也可以不向体检服务模块300发送中断状态,比如体检服务模块300可以接收车机APP模块200发送的升级广播,在接收升级广播后,相隔预设时间,等待数据采集服务模块100断开与golo 1s蓝牙的连接,然后体检服务模块300建立与golo 1s蓝牙的连接。
[0118] 进一步地,为方便用户使用,在对golo 1s进行升级时,数据采集服务模块100还可以设置升级标志,用户可以根据升级标志掌握golo 1s升级状态,避免升级过程中蓝牙通讯出现异常,导致golo 1s一直处于升级状态或升级不成功。例如,如果数据采集服务模块100的升级标志置位时间超过了一定的预估时间,那么用户可以强制断开体检服务模块300与golo 1s的蓝牙之间的连接,结束golo 1s的升级,重新让数据采集服务模块100与golo 1s的蓝牙建立连接。
[0119] 在本实施例中,车机APP启动后,若车机APP模块200接收到升级指令,则检测汽车诊断设备是否有新版本,若有则发送升级广播,数据采集服务模块100收到升级广播后中断与汽车诊断设备的蓝牙之间的连接,并向体检服务模块300发送中断状态,体检服务模块300根据中断状态建立与所述蓝牙的连接,进行汽车诊断设备的升级。本实施例中各个汽车应用程序采用广播通知的方式来实现进程间通讯,协调蓝牙设备的切换,使注册了广播接收器的用户都能够接收到广播,扩大了通信范围。同时,数据采集服务模块100在golo 1s升级过程中设置升级标志,可以让用户掌握升级状态,避免升级过程中蓝牙通讯出现异常,影响了数据采集服务模块100对车辆数据的实时采集。通过上述方式,本实施例可以协调车机多个应用程序与golo 1s的蓝牙之间的连接,保证了蓝牙连接的快速有效切换,满足了车机系统中各个功能的蓝牙连接需求。
[0120] 进一步地,参照图7,所述车机APP模块200还用于在车机APP启动后,接收体检指令;
[0121] 所述数据采集服务模块100还用于根据所述车机APP发送的所述体检指令断开与所述蓝牙之间的连接;
[0122] 所述体检服务模块300还用于根据接收到所述车机APP发送的所述体检指令建立与所述蓝牙的连接,并进行车辆体检。
[0123] 具体地,作为一种实施方式,在车机APP启动后,若车机APP模块200接收到用户触发的体检指令,则车机APP模块200发送体检广播:InspectionProcess Acticity.startdiagnose,或者说通过广播的方式发送体检指令:InspectionProcess Acticity.startdiagnose,数据采集服务模块100接收到该体检广播或者说体检指令后断开与golo 1s蓝牙的连接,同时可以向体检服务模块300发送中断状态,体检服务模块300根据数据采集服务模块100的中断状态建立与golo 1s蓝牙的连接,并根据所述体检指令对车辆进行体检。当然数据采集服务模块100也可以不向体检服务模块300发送中断状态,比如体检服务模块300可以接收车机APP模块200发送的体检广播,在接收体检广播后,相隔预设时间,等待数据采集服务模块100断开与golo 1s蓝牙的连接,然后体检服务模块300建立与golo 1s蓝牙的连接。
[0124] 进一步地,为方便用户使用,在对车辆进行体检时,数据采集服务模块100还可以设置体检标志,用户可以根据体检标志掌握车辆体检状态,避免体检过程中蓝牙通讯出现异常,导致golo 1s一直处于体检状态或体检不成功。例如,如果数据采集服务模块100的体检标志置位时间超过了一定的预估时间,那么用户可以强制断开体检服务模块300与golo 1s的蓝牙之间的连接,结束golo 1s的升级,重新让数据采集服务模块100与golo 1s的蓝牙建立连接。
[0125] 在本实施例中,车机APP启动后,若接收到体检指令,则发送体检广播,数据采集服务模块100收到体检广播后中断与汽车诊断设备的蓝牙之间的连接,并向体检服务模块300发送中断状态,体检服务模块300根据中断状态建立与所述蓝牙之间的连接,进行车辆体检,并设置体检标志。本实施例中各个汽车应用程序采用广播通知的方式来实现进程间通讯,协调蓝牙设备的切换,使注册了广播接收器的用户都能够接收到广播,扩大了通信范围。同时,数据采集服务模块100在golo 1s升级过程中设置体检标志,可以让用户掌握体检状态,避免体检过程中蓝牙通讯出现异常,影响了数据采集服务模块100对车辆数据的实时采集。通过上述方式,本实施例可以协调车机多个应用程序与golo 1s的蓝牙之间的连接,保证了蓝牙连接的快速有效切换,满足了车机系统中各个功能的蓝牙连接需求。
[0126] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
QQ群二维码
意见反馈