专利名称:一种基于mbim实现gps功能的方法、设备及无线通信终端的制作方法
技术领域:
本发明属于嵌入式开发和通讯技术领域,是对MBIM(MobiIe BroadbandInterface Model,移动宽带接口模型)协议的一种创新应用,具体涉及一种基于MBIM实现GPS功能的方法及MBM设备、无线通信终端。
背景技术:
基于地理位置信息的应用与服务已经是移动通信类产品与互联网结合的主要应用之一,GPS (全球定位系统)是实时提供地理位置信息的功能模块,是移动通信终端的基本模块。对于无线数据卡类通信产品,GPS功能是网络接入功能之外最重要的功能。
传统情况下,基于USB (Universal Serial BUS,通用串行总线)连接的无线数据卡通过枚举出AT端口与Modem(调制解调器)端口或者是枚举出NDIS (Network DriverInterface Specification,网络驱动接口规范)或 ECM(Ethernet Control Model,以太网控制模型)端口的方式提供网络接入功能、通过枚举出扩展的端口提供GPS数据通道,这样的设备需要在无线数据卡提供多个数据通信端口。MBIM协议是微软与USB国际组织合作推出的新的协议,是NCM (Network ControlModel,网络控制模型)协议的2. O版,MB頂协议将成为未来移动宽带的主要应用形式。MBM设备通过协议规定的控制命令,实现对网络、短信、电话本、SM(用户识别)卡、STK(用户识别应用发展工具)、USSD (Unstructured Supplementary Service Data,非结构化补充数据业务)等业务的统一控制与管理,不需要提供AT通信端口既可以实现网络的接入与各个业务的控制,是一种免厂商驱动的移动宽带应用。MBIM协议没有定义对GPS功能的支持,对于以MBIM设备工作的无线数据卡,为了提供GPS功能,如果在MBM设备上扩展一个GPS数据通道端口,就需要安装厂商端口驱动,不符合MBIM免厂商驱动安装的目的;而对于内置了以MBIM设备工作的无线数据卡的平板系统,如果在无线数据卡模块之外提供专用的GPS模块,又会增加产品成本。
发明内容
本发明要解决的技术问题是提供一种基于MBIM实现GPS功能的方法及MBIM设备、无线通信终端,以通过扩展MBM协议,在不增加任何USB枚举端口的情况下,实现对GPS功能的集成,增强MBIM类无线数据卡产品的功能和用户体验。为了解决上述技术问题,本发明提供了一种基于移动宽带接口模型(MBM)实现全球定位系统(GPS)功能的方法,包括,添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口 ;接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求;将所述GPS服务请求转化为MBM协议控制消息;对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。
进一步地,上述方法还具有下面特点所述添加GPS服务的过程中包括生成通用唯一识别值作为GPS服务标识。进一步地,上述方法还具有下面特点所述控制指令集包括以下命令标识中的一个或多个打开GPS功能命令标识、关闭GPS功能命令标识和GPS数据命令标识。进一步地,上述方法还具有下面特点所述对所述MBM协议控制消息进行解析后,调用对应的应用程序编程接口发送给GPS模块后还包括接收到所述GPS模块上报的GPS数据; 将所述GPS数据封装为MBM消息,通过通用串行总线控制通道发送给GPS应用程序。为了解决上述问题,本发明还提供了一种移动宽带接口模型(MBM)设备,包括第一模块,用于添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口;第二模块,用于接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求;第三模块,用于将所述GPS服务请求转化为MBIM协议控制消息;第四模块,用于对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。进一步地,上述设备还具有下面特点所述第一模块,在添加GPS服务的过程中包括生成通用唯一识别值作为GPS服务标识。进一步地,上述设备还具有下面特点所述控制指令集包括以下命令标识中的一个或多个打开GPS功能命令标识、关闭GPS功能命令标识和GPS数据命令标识。进一步地,上述设备还具有下面特点还包括第五模块,用于接收到所述GPS模块上报的GPS数据;第六模块,用于将所述GPS数据封装为MBM消息,通过通用串行总线控制通道发送给GPS应用程序。为了解决上述问题,本发明还提供了一种无线通信终端,包括上所述的移动宽带接口模型(MBIM)设备。综上,本发明提供一种基于MBM实现GPS功能的方法及MBM设备、无线通信终端,对于以MBIM设备提供网络接入的无线数据卡设备,既能利用无线数据卡本身的GPS功能,又不增加物理数据通道端口,保持MBM设备的免驱安装特性。
图I为本发明实施例的MBM扩充GPS功能的示意图;图2为本发明实施例的MBM设备的示意图;图3为本发明实施例的无线通信终端的示意图;图4本发明实施例的基于MBM实现GPS功能的方法的流程图;图5是本发明实施例的开启GPS功能的基本流程图6是GPS数据上报的流程图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。MBIM协议是利用USB控制通道实现对短信、电话本、STK等功能的扩充与管理;在MBM协议中,对于短信、电话本、STK,都是作为MBM的一个服务(Service)进行管理,对于每一个服务,有一个servicelD,而每个service对应一组命令,在MBIM协议称为CID(Command Identifier,命令标识),用来对各个服务进行控制与数据交互。USB控制通道适合小数据量的交互;WGPS自身特点看,GPS控制流程简单,只需要进行开启、关闭等简单控制以及GPS数据上报;GPS实时数据都以主动通知的方式报告给主机,并且数据格式简单、 数据包长度比较短,适用于MB頂协议的服务控制管理;因此,GPS功能可以与短信、电话本、STK功能一样,集成为MBM协议的一个服务。MBIM提供了一套完整的服务扩展方案,图I是本发明实施例的GPS功能扩充示意图。图I中,在firmware (固件)中的Extend service (扩展服务),是在MBIM原有服务上增加的服务,本发明GPS服务就是扩展的服务,GPS Module是无线数据卡GPS功能模块,用来响应GPS控制请求并提供GPS数据;在操作系统侧(例如,WinS系统),微软提供了iMbn Extension API,用来支持厂商扩充的服务,在此基础上建立GPS API ((ApplicationProgramming Interface,应用程序编程接口 ),管理GPS功能;GPS Appcation (应用程序)是GPS应用管理程序;同时,从图I上,MBIM原有服务的流程独立执行,各个服务之间不受影响。图2为本发明实施例的MBM设备的示意图,如图2所示,本实施例的MBM设备包括第一模块,用于添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口;第二模块,用于接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求;第三模块,用于将所述GPS服务请求转化为MBIM协议控制消息;第四模块,用于对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。其中,所述第一模块,在添加GPS服务的过程中包括生成通用唯一识别值作为GPS服务标识。其中,所述控制指令集包括以下命令标识中的一个或多个打开GPS功能命令标识、关闭GPS功能命令标识和GPS数据命令标识。本实施例的MBM设备还可以包括第五模块,用于接收到所述GPS模块上报的GPS数据;第六模块,用于将所述GPS数据封装为MBM消息,通过通用串行总线控制通道发送给GPS应用程序。本发明实施例还提供一种无线通信终端,包括上述的MBM设备,如图3所示,图3是本发明实施例的无线通信终端的示意图。结合图I和图3,本发明实施例的基于MB頂实现GPS功能的方法的流程图,如图4所示,可以包括以下步骤步骤101、在MBM设备的MBM功能模块中增加GPS服务;在MBIM设备中增加GPS服务,使用专用的UUID(Universally UniqueIdentifier,通用唯一识别)生成工具,生成 UUID 值,例如Id2b3c4e_5f 10202a_30313a3b-alb2c523,作为GPS的servicelD,用以区别GPS服务和其它服务; 步骤102、为GPS服务扩充一组控制指令集CID,用于管理GPS ;按照GPS功能进行CID指令扩充,基本的需要扩充打开GPS功能CID、关闭GPS功能CID、GPS数据CID (用于主动上报),每个CID对应一个32bit的值,一般情况下,请求从I开始递增增加,例如,CID值分别为0x00000001,用于用户打开GPS ;0x00000002,用于关闭GPS,0x00000003,用户GPS主动上报,以及其它请求,在此不进行列举。步骤103、提供 GPS API ;本实施例中,可以分别针对打开GPS功能、关闭GPS功能、读取GPS数据等定义API,可以为GPS应用程序提供GPS控制接口定义API。步骤104、MBM设备接收并处理GPS服务请求,将该GPS服务请求转发到GPS模块(指的是无线数据卡上固有的GPS模块);GPS应用程序调用API发送GPS服务请求,发送的GPS服务请求通过MBM Driver后,以MBM协议规定的Msg (消息)格式发送给MBM设备,MBM设备控制请求处理模块对请求进行解析,将GPS服务请求发送给GPS模块,GPS模块处理完请求后返回结果给MBIM控制请求处理模块并进一步返回给上层。其中,GPS模块进行GPS数据的上报,在MBM模块封装为MBM消息,通过MBM控制通道发给驱动,并进一步的发给上层服务。其中,GPS应用程序通过API读取数据,更新GPS信息。本发明实施例通过将GPS功能作为MBM的一个服务进行实现,仅需使用MBM设备的控制通道,就可以做到对GPS硬件设备的控制与GPS数据的上报,使GPS功能集成到MBIM设备中,不需要单独提供USB物理通道。图5是本发明实施例的开启GPS功能的基本流程图,如图5所示,包括以下步骤步骤201、用户在GPS应用程序中选择开启GPS功能;步骤202、GPS应用程序会调用规定的API发送开启GPS请求;步骤203、开启GPS请求经过MBM Driver (驱动),由MBM USB端口发送给MBM设备中的MBIM控制处理模块;步骤204、MBM设备中的MBM控制处理模块首先判断是否是GPSService,通过匹配上面定义的UUID值进行确定,并进一步判断是否是打开GPS功能,如果是打开GPS功能,则调用打开GPS功能模块的接口,向GPS模块发送开启GPS功能的指令;步骤205、GPS模块开启GPS功能,返回开启状态。关闭GPS功能的执行过程与打开GPS功能类似,此处不再赘述。
GPS功能开启后,会按照一定频率主动上报GPS信息,信息会在MBM控制请求处理模块进行封装,发给MBM Driver,参考图6。图6是GPS数据上报的流程图,在GPS功能开启后,GPS会按照一定的频率上报GPS位置信息,执行流成为步骤401、GPS模块按照GPS数据格式上报GPS数据;步骤402、GPS数据发送给MBM设备的MBM控制请求模块;步骤403、MBIM控制请求模块将GPS数据封装到MBM消息中,其服务和CID参数为上述规定值;步骤404、GPS数据通过USB控制通道发送给MBM Driver ;
步骤405、MBIM Driver接收到GPS数据后,发送MBM响应消息给MBM设备。GPS应用程序更新,GPS应用程序使用规定的API接口读取MBM设备的响应消息以及GPS主动上报数据,更新GPS信息。通过以上方案与流程,在MBM设备上建立了符合MBM协议的新服务,新服务为GPS功能,GPS的控制与数据流均在MBIM的协议封装下进行通信。将GPS功能扩展为MBM的一个服务,扩展了 MBM的功能,解决了无线上网卡需要增加物理通道提供GPS功能的问题,提高了 MBM设备的用户体验。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种基于移动宽带接口模型(MBIM)实现全球定位系统(GPS)功能的方法,包括, 添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口 ; 接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求; 将所述GPS服务请求转化为MBIM协议控制消息; 对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。
2.如权利要求I所述的方法,其特征在于所述添加GPS服务的过程中包括 生成通用唯一识别值作为GPS服务标识。
3.如权利要求I所述的方法,其特征在于所述控制指令集包括以下命令标识中的一个或多个 打开GPS功能命令标识、关闭GPS功能命令标识和GPS数据命令标识。
4.如权利要求1-3任一项所述的方法,其特征在于所述对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给GPS模块后还包括 接收到所述GPS模块上报的GPS数据; 将所述GPS数据封装为MBIM消息,通过通用串行总线控制通道发送给GPS应用程序。
5.一种移动宽带接口模型(MBIM)设备,包括 第一模块,用于添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口 ; 第二模块,用于接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求; 第三模块,用于将所述GPS服务请求转化为MBIM协议控制消息; 第四模块,用于对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。
6.如权利要求5所述的设备,其特征在于 所述第一模块,在添加GPS服务的过程中包括生成通用唯一识别值作为GPS服务标识。
7.如权利要求5所述的设备,其特征在于所述控制指令集包括以下命令标识中的一个或多个 打开GPS功能命令标识、关闭GPS功能命令标识和GPS数据命令标识。
8.如权利要求5-7任一项所述的设备,其特征在于还包括 第五模块,用于接收到所述GPS模块上报的GPS数据; 第六模块,用于将所述GPS数据封装为MBIM消息,通过通用串行总线控制通道发送给GPS应用程序。
9.一种无线通信终端,包括如权利要求5-8任一项所述的移动宽带接口模型(MBIM)设备。
全文摘要
本发明提供一种基于MBIM实现GPS功能的方法及MBIM设备、无线通信终端,该方法还包括添加GPS服务,设置一组针对所述GPS服务的控制指令集和应用程序编程接口;接收所述GPS应用程序调用对应的应用程序编程接口发送的GPS服务请求;将所述GPS服务请求转化为MBIM协议控制消息;对所述MBIM协议控制消息进行解析后,调用对应的应用程序编程接口发送给无线数据卡上的GPS模块。通过本发明可以通过扩展MBIM协议,在不增加任何USB枚举端口的情况下,实现对GPS功能的集成。
文档编号H04L29/10GK102769612SQ20121021568
公开日2012年11月7日 申请日期2012年6月27日 优先权日2012年6月27日
发明者庞盛金, 田军, 邓庆田, 马少峰 申请人:中兴通讯股份有限公司