用于检测不同的近场通信适配器并与其进行通信的系统和方法

文档序号:7889247阅读:98来源:国知局

专利名称::用于检测不同的近场通信适配器并与其进行通信的系统和方法
技术领域
:本发明涉及用于实现与诸如智能电话的具有近场通信(“NFC”)功能的设备的编程接口的系统和方法。
背景技术
:在当前的计算环境中,NFC基于标准的短程无线连接技术。当两个NFC设备带到彼此在4至10厘米、或I.5至4英寸之内时,在两个NFC设备之间发生通信。当彼此处于该距离内,NFC设备的环形天线有效地形成有利于在这些设备之间通信的空心变压器(air-coretransformer)。NFC相比其它短程通信的优势包括方便、建立速度、由于有限物理操作范围导致的安全性、和低功耗。NFC是ECMA-340和IS0/IEC18092中的开放平台技术标准,其中,其指定基本NFC的调制方案、编码、传送速度和启动方案。此外,NFC与特定现有的无源RFID基础设施兼容,并与诸如IS0/IEC14443和FeliCa的其它标准相结合。NFC应用的实施例包括无接触的支付系统、电子票务,并从NFC标签读取少量信息。在这些实施例中,一个具有NFC功能的设备的简单标签与另一标签有利于读数据或写数据。在电子支付的实例中,NFC应用可以在实际进行支付前要求用户确认支付。NFC应用的其它实例包括对等网通信,其中两个具有NFC功能的设备相互传送数据,例如交换视频、联系、照片等。NFC技术蓄势待发并且越来越多的公司采用新的具有NFC功能的设备和NFC适配器,应用程序员将面对日益增加的不同应用编程接口(“API”)和操作NFC适配器的完全不同的应用引用常规。
发明内容在一个方面,本发明是一种用于操作计算设备的近场通信适配器的系统。该系统包括至少一个存储器,所述存储器具有用于存储可执行程序代码的至少一个区域,和至少一个处理器,所述处理器用于执行存储在存储器中的程序代码。当执行程序代码时,其执行以下内容进行近场通信适配器是否与计算设备连接的第一确定;识别适配器,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;进行计算设备是否适于与适配器通信的第二确定,其中所述进行第二确定响应于近场通信适配器与计算设备连接的第一确定;并且装载用于计算设备的至少一个设备驱动以与适配器进行通信,其中所述装载响应于计算设备适于与适配器通信的第二确定。在另一方面,本发明是一种用于操作计算设备的近场通信适配器的方法。该方法包括如下内容计算设备进行近场通信适配器是否与计算设备连接的第一确定,其中计算设备包括至少一个存储器,其具有用于存储可执行程序代码的至少一个区域,和至少一个处理器,其用于执行存储在存储器中的程序代码;通过计算设备识别适配器,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;计算设备进行计算设备是否适于与适配器通信的第二确定,其中所述进行第二确定响应于近场通信适配器与计算设备连接的第一确定;和计算设备装载用于计算设备的至少一个设备驱动以与适配器进行通信,其中所述装载响应于计算设备适于与适配器通信的第二确定。在另一方面,本发明是一种用于操作计算设备的近场通信适配器的系统。该系统包括至少一个存储器,具有用于存储可执行程序代码的至少一个区域;至少一个处理器,用于执行存储在存储器中的程序代码;用于进行近场通信适配器是否与计算设备连接的第一确定的装载;用于识别适配器的装置,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;用于进行计算设备是否适于与适配器通信的第二确定的装置,其中所述进行第二确定响应于近场通信适配器与计算设备连接的第一确定;和用于装载用于计算设备的至少一个设备驱动以与适配器进行通信的装置,其中所述装载响应于计算设备适于与适配器通信的第二确定。图I描述了根据本发明系统和方法的一个方面的操作具有NFC功能的设备的系统;图2描述了根据现有技术的用于操作具有NFC功能的计算设备的软件系统;图3描述了根据本发明系统和方法的一个方面的用于操作具有NFC功能的计算设备的软件系统的一个方面;图4描述了根据本发明系统和方法的一个方面的用于自动确定和装载用于NFC适配器的设备驱动的流程图;附图是示例性的,而并非是限制性的。在整个附图中,在多个附图中标记有相同附图标记的项目涉及相同的项目。具体实施例方式现在将参照附图更为详细地描述本发明的各种实施方式。图I描述了根据本发明的一个方面的系统。图I示出了包括NFC适配器102的计算设备101,其中NFC适配器102自身包括NFC电路103和NFC天线104。计算设备101可以是智能电话、平板电脑(tablet)、便携式计算机、桌上型计算机、膝上型计算机、游戏控制台、个人媒体播放器、手持计算设备或便携式游戏设备。计算设备101可以包括一个或多个显不屏107、一个或多个暂时或非暂时存储器105、一个或多个CPU106、一个或多个输入设备、一个或多个输出设备、一个或多个有线或无线网络接口、一个或多个操作系统(包括用于应用的软件层、设备层和运行时环境)和一个或多个I/O通信端口。在优选的实施方式中,计算设备101是智能电话。智能电话是具有比“功能电话”或“仅用于打电话的电话(dumbphone)”功能更多、并运行向用户提供运行高级软件应用的能力的完整操作系统软件的为大家所接受的移动电话类别。在一个方面,作为智能电话的计算设备101可以包括一个或多个显示屏或触摸屏显示器、一个或多个键盘、一个或多个CPU(其可以是基于ARM的处理器,或者可以被集成在片上系统的结构)、一个或多个暂时或非暂时存储器、一个或多个移动电信调制解调器、一个或多个无线天线、一个或多个操作系统、SM卡、外围连通、蓝牙连通、GPS、一个或多个照相机、视频输出连通、和音频输出能力。此外,作为智能电话的计算设备101具有触摸屏显示器、可替换的或可由软键盘补充的物理键盘、屏上键盘或其他基于触摸屏的输入能力。仍参照图I,NFC适配器102可以是有源NFC适配器、无源NFC适配器、能够以有源模式和无源模式进行操作的NFC适配器、或者从另一NFC设备读、写、传送和/或接收数据的NFC适配器。NFC适配器102可以与ECMA-340和IS0/IEC18092和14443标准一致和/或与其兼容。NFC适配器102包括NFC电路103和NFC天线104。其中,NFC电路103执行调制、解调、编码、启动所需要的功能,并且如果需要,还包括加密和解密。此外,在一个方面,NFC适配器102可以与计算设备101进行内部连接。在另一方面,NFC适配器可与计算设备101进行外部连接(在图中没有示出),并且该外部连接可以是有线或无线连接。还参照图1,网络120可以包括任意类型的网络架构,例如客户机/服务器、对等网络、或混合架构。网络120可以包括蜂窝网络和/或国际互联网。当网络120是蜂窝网络时,其可根据任意移动电信标准进行操作,例如0G、1G、2G、2G过渡、3G、3G过渡、4G、准4G和/或其它与GSM、UTMS,TDMA,CDMA,GPRS,EDGE、移动WiMax、或LTE相关的标准。计算设备101可以通过移动天线110或路由器111连接至网络120。计算设备101可以使用上述的移动电信标准中的任意一个与移动天线110连接。计算设备101可以通过有线连接或无线连接与路由器111连接,例如IEEE802.11WiFi标准、蓝牙、无线USB、或任意其它基于WAN、WLAN或WPAN的标准中的任意一个。如图I所示,计算设备101可以与NFC设备112交互。NFC设备112可以是任意具有NFC功能的设备,包括电子支付处理器(例如,销售点终端、售货亭等)、电子票务设备、公共交通基础设施、数字媒体显示器(例如,电子海报、电子相框、电视等)、家庭剧院、个人媒体播放器、安全扫描仪、导航设备、汽车、计算机、或智能电话。在一个方面,当将计算设备101带到物理上靠近NFC设备112时(例如,根据NFC标准,大约4至10厘米,或大约I.5至4英寸),NFC适配器102的NFC天线104与NFC设备112中包括的天线形成有效的空心变压器(在图中没有示出),并且该连接允许计算设备101和NFC设备112相互交互。计算设备101和NFC设备112之间的交互可以包括电子支付、电子票务、读取NFC标签、读取具有NFC功能的海报和横幅、智能卡仿真(例如,计算设备101和NFC适配器102变现得像传统的无接触智能卡)、自动建立另一无接触或无线连接(例如,蓝牙⑧连接)、以及传送媒体或其它信息。图2描述了现有技术中具有NFC功能的计算设备200的软件和硬件系统的一个方面。第一NFC适配器230可与计算设备200连接、可安装或包括在计算设备200中。应用210是具有NFC功能的计算设备200的软件应用。设备驱动220是应用210与特定的第一NFC适配器230交互所需的设备驱动。在该实施例中,当将第一NFC适配器230替换为第二NFC适配器235时,需要修改应用210以能够操作第二NFC适配器235。然而,一旦修改应用210以使用第二NFC适配器235,应用210将不能够支持除第二NFC适配器235之外的任意NFC适配器。图3描述了本发明的计算设备101上软件和硬件系统的一个方面。这些软件方面可存储在一个或多个存储器105中,并由一个或多个CPU106执行。在一个方面,图3的软件和硬件元件可以与计算设备101上的操作系统相连接或相关联的操作。在另一方面,图3的软件元件可以在计算设备101上的操作系统中执行。如图3所示,应用310是计算设备101上的软件应用。应用310可以是在例如上述的计算设备101和NFC设备112之间实现NFC交互的任意软件应用。编程接口320为程序员和应用开发者提供统一的编程接口。此夕卜,编程接口320调用适配层330以装载(之前描述的)NFC适配器102所需要的设备驱动器。通过使用编程接口320,程序员和应用开发者不需要具有API、函数引用、和每个不同类型的NFC适配器或制造NFC适配器的实现方式的专业知识。相反,程序员和应用开发者仅需要知道API、函数引用和编程接口320的实现方式并对其进行编程,以操作和使用NFC适配器102。例如,应用310可以与NFC适配器102交互或进行通信以交换应用协议数据单元(APDU)、将APDU命令发布给NFC适配器102中的安全元件,启用或禁用无接触接口,读或写MIFARE标签,从另一NFC设备读取或写入到另一NFC设备中,或作为阅读器。在所、有这些实施例和其它这样的交互中,应用310和NFC适配器102之间的交互可以通过编程接口320来执行。在本发明的一个方面,在应用310通过编程接口320调用函数引用时,编程接口320会将函数引用映射到与适配层330相关联的相应函数引用,并调用相应的函数引用。因此,例如,当应用310通过编程接口320调用函数引用以交换APDU信息(或者‘exchange_APDUj引用)时,将‘exchange_APDU’映射到与适配层330相关联的相应函数引用(或者‘internal_exchange_APDU’引用)。然后,调用internal_exchange_APDU以执行与函数引用相关联的命令,从而操作NFC适配器102以交换APDU信息。可以对由应用310通过编程接口320进行的全部NFC函数引用执行函数引用的映射。在本发明的一个方面,编程接口320为应用310提供公共的和一致的编程接口。在这种方式下,可以在不影响应用310的情况下独立地对适配层330进行修改。图4描述了根据本发明的方面的检测NFC适配器并与NFC适配器进行通信的方法。在该方法中,当编程接口320调用适配层330时,适配层330识别NFC适配器102,检查支持的NFC适配器的列表,并且如果发现支持的适配器,则装载并使用相应的设备驱动。该方法在过程400中进行示出,其中该方法从步骤401开始。接下来,在步骤402,适配层330确定NFC适配器是否存在于计算设备101中。如果没有发现NFC适配器,则适配层330进入步骤403,该过程400结束(也就是,适配层330进入‘结束’状态)。或者,如果在计算设备101发现NFC适配器,过程400从步骤403进入步骤404,其中适配层330识别NFC适配器。接下来,在步骤405,适配层330确定计算设备101是否支持NFC适配器。如果不支持NFC适配器,过程400从步骤405进入步骤403,其中过程400结束。或者,如果支持NFC适配器,则过程400从步骤405进入步骤406,其中适配层330确定当前是否装载对应于NFC适配器的任意设备驱动。如果没有装载这样的设备驱动,则过程400进入步骤407,其中适配层330装载用于应用310和编程接口320所需的设备驱动以操作NFC适配器。适配层330包含用于所有支持的NFC适配器的设备驱动,如图3中所示的设备驱动_1331到设备驱动_11332。这些设备驱动可以存储在一个或多个存储器105中。在本发明的一个方面,适配层330可以将来自一个或多个存储器105的设备驱动装载到计算设备101的操作系统的设备层。在步骤407之后,适配层330在步骤408进入‘就绪’状态。或者,如果已经装载用于NFC适配器的所需设备驱动,过程400从步骤406进入步骤408,其中适配层330进入‘就绪’状态。在一个方面,‘结束’状态表示适配层330不采取进一步的动作。在另一方面,当适配层330进入‘结束’状态,其向编程接口320返回没有已知的NFC适配器的指示。在一个方面,当适配层330进入‘就绪’状态,编程接口320可以继续进行由应用310确定的进一步动作。在另一方面,当适配层330进入‘就绪’状态时,其将发现NFC适配器和装载所需设备驱动的指示返回给编程接口320。一旦适配层330处于‘就绪’状态,则应用310能够例如通过编程接口320执行与NFC适配器的任意交互或通信。通过实施例的方式,下面将描述应用310、编程接口320、适配层330和过程440,其中应用310尝试使用安装在计算设备101上的第一NFC适配器、NFC适配器102,或者与计算设备101连接的第一NFC适配器、NFC适配器102,但是计算设备101没有装载设备驱动。在该实施例中,应用310是用于读取NFC标签以及使用所获得的信息执行进一步动作的软件应用,例如,读取产品信息的NFC标签(例如,NFC设备112)以及使用所述产品信息(例如,通过路由器111或移动天线110的网络120)在国际互联网上搜索价格和购买信息。这里,应用310调用编程接口320,编程接口320从而调用适配层330,适配层330从而运行过程400。过程从步骤401开始,并且在步骤402,发现NFC适配器102。接下来,在步骤403,适配层330识别NFC适配器102,并在步骤405确定计算识别101支持NFC适配器102。该过程于是进入步骤406,其中适配层330确定没有装载设备驱动。其结果是,适配层330在步骤407装载所需的设备驱动,并且在步骤408适配层330进入‘就绪’状态。一旦处于‘就绪’状态,应用310能够通过NFC适配器102和编程接口320读取NFC标签。应用310于是可以执行与NFC适配器102的任意其它的交互或通信,并且根据应用310的指令处理从NFC标签获得的信息。通过进一步实施例的方式,将NFC适配器102替换为计算设备101不支持的第二NFC适配器(在图中没有示出),并且应用310尝试使用第二NFC适配器(再次读取NFC标签)。在该实施例中,应用310调用编程接口320,编程接口320从而调用适配层330,适配层330从而运行过程400。该过程从步骤401开始,并且在步骤402,发现第二NFC适配器。接下来,在步骤403,适配层330识别第二NFC适配器,并在步骤405确定不支持所述第二NFC适配器。其结果是,适配层进入‘结束’状态。在这种方式中,当第二NFC适配器代替计算设备101的第一NFC适配器时并且应用310尝试操作第二NFC适配器时,则编程接口320、适配层330以及过程400将根据上述本发明的方面进行操作以装载与第二NFC适配器(如果支持)相关联的设备驱动。这能够使应用310通过编程接口320来操作许多不同的NFC适配器而不需要修改应用310。尽管这里详细描述和说明了解释性的实施方式,应当注意的并且本领域技术人员可以理解的是,存在可以等同于这些明确描述和说明的各种变形和其它实施方式。例如,本发明的范围没有必要限制为在任何情况下按所讨论的顺序执行上述步骤。除非明确声明,这里使用的术语和表述用于描述,不用于限制。因此,本发明不局限于具体解释的和描述的实施方式(或用于描述它们的术语或表述)。权利要求1.一种用于操作计算设备的近场通信适配器的系统,该系统包括(a)至少一个存储器,具有用于存储可执行程序代码的至少一个区域;以及(b)至少一个处理器,用于执行存储在存储器中的程序代码,其当执行程序代码时(b)(i)进行近场通信适配器是否与计算设备连接的第一确定;(b)(ii)识别适配器,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;(b)(iii)进行计算设备是否适于与适配器通信的第二确定,其中所述进行第二确定响应于近场通信适配器与接收设备连接的第一确定;以及(b)(iv)装载用于计算设备的至少一个设备驱动以与适配器进行通信,其中所述装载响应于计算设备适于与适配器通信的第二确定。2.根据权利要求I所述的系统,其中计算设备是智能电话、平板电脑、便携式计算机、桌上型计算机、膝上型计算机、游戏控制台、个人媒体播放器、手持计算设备、或便携式游戏设备。3.根据权利要求I所述的系统,其中适配器能够进行近场通信。4.根据权利要求I所述的系统,其中适配器与计算设备进行内部连接。5.根据权利要求I所述的系统,其中适配器通过有线或无线装置与计算设备进行外部连接。6.根据权利要求I所述的系统,其中当存储在存储器中的应用与适配器进行通信时执行程序代码。7.根据权利要求I所述的系统,其中程序代码进一步执行对应于设备驱动的函数引用。8.一种用于操作计算设备的近场通信适配器的方法,该方法包括(a)计算设备进行近场通信适配器是否与计算设备连接的第一确定,其中计算设备包括至少一个存储器,所述存储器具有用于存储可执行程序代码的至少一个区域,和至少一个处理器,所述处理器用于执行存储在存储器中的程序代码;(b)计算设备识别适配器,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;(C)计算设备进行计算设备是否适于与适配器通信的第二确定,其中所述进行第二确定响应于近场通信适配器与接收设备连接的第一确定;以及(d)计算设备装载用于计算设备的至少一个设备驱动以与适配器进行通信,其中所述装载响应于计算设备适于与适配器通信的第二确定。9.根据权利要求8所述的方法,其中计算设备是智能电话、平板电脑、便携式计算机、桌上型计算机、膝上型计算机、游戏控制台、个人媒体播放器、手持计算设备、或便携式游戏设备。10.根据权利要求8所述的方法,其中适配器能够进行近场通信。11.根据权利要求8所述的方法,其中适配器与计算设备进行内部连接。12.根据权利要求8所述的方法,其中适配器通过有线或无线装置与计算设备进行外部连接。13.根据权利要求8所述的方法,其中当存储在存储器中的应用与适配器进行通信时执行所述方法。14.根据权利要求8所述的方法,其中所述方法进一步包括计算系统执行对应于设备驱动的函数引用。15.一种用于操作计算设备的近场通信适配器的系统,包括(a)至少一个存储器,具有用于存储可执行程序代码的至少一个区域;(b)至少一个处理器,用于执行存储在存储器中的程序代码;(c)用于进行近场通信适配器是否与计算设备连接的第一确定的装置;(d)用于识别适配器的装置,其中所述识别响应于近场通信适配器与计算设备连接的第一确定;(e)用于进行计算设备是否适于与适配器通信的第二确定的装置,其中所述进行第二确定响应于近场通信适配器与接收设备连接的第一确定;以及(f)用于装载计算设备的至少一个设备驱动以与适配器进行通信的装置,其中所述装载响应于计算设备适于与适配器通信的第二确定。全文摘要公开了一种用于操作计算设备的近场通信适配器的系统,其包括至少一个具有用于存储可执行程序代码的至少一个区域的存储器,以及至少一个用于执行存储在存储器中的程序代码的处理器。当执行程序代码时,其确定近场通信适配器是否与计算设备连接;响应于确定近场通信适配器与计算设备连接。响应于该确定,程序代码识别适配器,并确定计算设备是否适于与适配器通信。从而,响应于该进一步的确定,程序代码装载用于计算设备的至少一个设备驱动以和适配器进行通信。文档编号H04B5/00GK102710298SQ201210030498公开日2012年10月3日申请日期2012年2月10日优先权日2011年2月10日发明者H-K·柴申请人:卡西斯国际私人有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1