一种利用NFC手机读取ISO15693标签的方法
技术领域
本发明涉及到手机近场通信,特别是利用NFC手机来读取ISO15693标签的方法。
背景技术
现在手机已经成为大部分社会人士每天都会携带的通讯设备,如果使用手机来进行防伪查询,则无疑是一种最便捷的方式。近场通信(简称NFC)技术作为最新非常热门的技术,越来越多的手机拥有最新的NFC技术,支持近距离通信,通信频率为13.56MHz。
利用NFC手机读取ISO15693标签的一个主要用途是防伪识别查询,利用手机自带的NFC功能读取ISO15693标签上的产品信息,根据联网防伪查询或者短信防伪查询实现对商品的真伪验证。
ISO14443 是一系列针对接近式(proximity ) RFID 的国际化、独立于厂商的标准。它工作于 13.56MHz,使用磁场耦合读卡器(PCD)和卡片 (PICC)。而ISO15693 是一系列针对近距离(vicinity) RFID 的国际化、独立于厂商的标准。它工作于 13.56MHz,并使用磁场耦合读卡器(VCD)和卡片 (VICC). 读取距离可达 1-1.5 米非接触智能卡,使用的频率为13.56MHz,设计简单让生产读卡器的成本比ISO14443 低,大都用来做出入控制、出勤考核等,现在很多企业使用的门禁卡大都使用这一类的标准。由于这类卡可以以较大距离工作,故所需的场强(1.15-5 A/m)小于接近式卡片 (1.5 to 7.5 A/m)。
目前大部分厂家提供的应用程序编程接口(简称API)仅支持ISO14443协议而不支持ISO15693协议,导致某些情况下无法进行读取相应的标签数据,致使NFC功能无法使用。现有技术方案的某些具有NFC功能的智能手机中,其硬件芯片上可能具有相应的芯片,但是其并没有提供应用程序编程接口,因此也就不能在该智能手机中进行相应的应用程序开发。由于现有技术中的NFC智能手机只能用于读取ISO14443标签而无法读出ISO15693标签的数据,或者只针对ISO14443标签进行应用开发,就大大限制了其应用范围。
发明内容
本发明针对于现有技术的NFC智能手机上只能读取ISO14443标签而无法读出ISO15693标签的不足,提供一种利用NFC手机来读取ISO15693标签的新方法。本发明的方法使得NFC智能手机既能够读取ISO14443标签又能够读出ISO15693标签,从而扩大其应用范围。
为了达到上述发明目的,本发明提供的技术方案如下:
一种利用NFC手机读取ISO15693标签的方法,其特征在于,该NFC手机内设置有NFC控制器芯片,其符合欧洲电信标准协会(ETSI)制定的NFC规范,该方法包括如下详细步骤:
第一步、检测NFC手机的操作系统内是否已经提供了读取ISO15693标签的应用程序编程接口:若是则直接利用操作系统的应用程序编程接口来进行ISO15693标签的读取和应用程序后续开发;若否则表示没有提供读取ISO15693标签的应用程序编程接口,需要执行第二步;
第二步,检测手机硬件设施中是否存在NFC控制器,若否则返回,停止检测并输出不能读取ISO15693标签的信息,若是则执行第三步;
第三步,检测应用程序是否有具有访问NFC控制器的权限,若有权限访问该NFC控制器,则直接打开该NFC控制器,若没有权限访问该NFC控制器,则需要利用操作系统的特性,打开应用程序访问NFC控制器的权限;
第四步,成功获取访问NFC控制器的权限后,打开该NFC控制器,依据NFC控制器的通讯协议,进行设备的初始化;
五步,对初始化成功的NFC控制器,依据ISO15693协议发送标签信息的读取指令,并对读取成功的ISO15693标签的信息进一步处理,完成应用程序的开发。
在本发明利用NFC手机读取ISO15693标签的方法中,所述第三步中的操作系统的特性是指该操作系统提供了相应的指令用来改变设备的访问权限,同时允许相关的指令自动运行,从而达到改变NFC设备的访问权限。
在本发明利用NFC手机读取ISO15693标签的方法中,改变设备的访问权限的步骤是:① 找到修改权限的命令行工具,找到NFC控制器的设备文件名和路径;② 将设备权限修改为任何人都可以读写;③ 考虑该语句本身的执行权限,使用合适的用户来执行该语句;若NFC手机提供了用户自动执行命令的机制,将命令脚本文件放入应用目录下,手机开机一分钟后会自动执行该脚本文件,从而将NFC控制器的权限修改为任何用户都可以访问。
在本发明利用NFC手机读取ISO15693标签的方法中,所述第五步中的对读取成功的ISO15693标签的信息进一步处理的过程包括:在成功读取ISO15693标签的信息后,应用程序按照编码规则进行解析得到标签的信息,并将部分信息显示在NFC手机上,同时手机界面上还会出现数据中心验证按钮和短信中心验证按钮,分别点击按钮都可以将识别后的标签信息发送到信息中心进行防伪验证并返回验证结果。
基于上述技术方案,本发明的利用NFC手机读取ISO15693标签的方法在实践使用中取得了如下技术优点:
1.利用本发明的方法可以使得普通用户即可获得NFC智能手机上NFC控制器的访问权限,从而可以打开该设备用于读取ISO15693标签,使得该智能手机具备了先前不具有的功能,扩大了其应用范围。
2.本发明的方法在NFC智能手机不具备API结构的前提下,通过绕过操作系统的直接访问硬件设施,从而启动NFC控制器,并利用应用程序来发出读取ISO15693标签信息的指令,并可对读取的指令进行后续处理,为后续应用程序的开发提供了条件。
附图说明
图1是本发明利用NFC手机读取ISO15693标签的方法的流程示意图。
具体实施方式
下面我们结合附图和具体的实施例来对本发明读取ISO15693标签的方法做进一步详细阐述,以求更为清楚明了地理解本发明专利的实现原理和操作步骤,但不能以此来限制本发明的保护范围。
现有的NFC手机中都具有NFC控制器芯片,该NFC控制器符合欧洲电信标准协会(ETSI)制定的NFC规范,但大部分并不提供的应用程序编程接口API来读取ISO15693标签。而本发明的方法通过直接访问底层硬件,实现了某些的NFC手机读取ISO15693标签中保存的信息的功能。为了达到上述的目的,本发明需要解决以下几个关键问题:1、设备访问权限问题;2、直接操作硬件的通讯能力;3、根据标签信息进行进一步应用开发。
如图1所示,本发明可以利用如下方法来实现NFC手机读取ISO15693标签,该智能手机内设置有NFC控制器芯片,该NFC控制器符合欧洲电信标准协会(ETSI)制定的NFC规范,以恩智浦半导体NXP的PN544 NFC控制器为例,其操作步骤包括:
第一步、检测NFC手机的操作系统内是否已经提供了读取ISO15693标签的应用程序编程接口:若是则直接利用操作系统的应用程序编程接口来进行ISO15693标签的读取和应用程序后续开发;若否则表示没有提供读取ISO15693标签的应用程序编程接口,需要执行第二步;
第二步,检测手机硬件设施中是否存在PN544 NFC控制器,若否则返回,停止检测并输出不能读取ISO15693标签的信息,若是则执行第三步;
第三步,检测应用程序是否有具有访问PN544 NFC控制器的权限,若有权限访问该PN544 NFC控制器,则直接打开该PN544 NFC控制器,若没有权限访问该PN544 NFC控制器,则需要利用操作系统的特性,打开应用程序访问PN544 NFC控制器的权限;
第四步,成功获取访问PN544 NFC控制器的权限后,打开该PN544 NFC控制器,依据PN544通讯协议,进行设备的初始化;
第五步,对初始化成功的PN544 NFC控制器,依据ISO15693协议发送标签信息的读取指令,并对读取成功的ISO15693标签的信息进一步处理,完成应用程序的开发。
在本发明利用NFC手机读取ISO15693标签的方法中,所述第三步中的操作系统的特性为:操作系统通常都提供了相应的指令用来改变设备的访问权限,同时允许相关的指令自动运行,从而达到改变NFC设备的访问权限。以含有NXP 的PN544芯片的Nokia N9手机为例说明如下:1.找到修改权限的命令行工具:chmod,找到PN544的设备文件名和路径:/dev/pn544。将设备权限修改为任何人都可以读写,语句如下:chmod 0666 /dev/pn544。另外还需要考虑该语句本身的执行权限,使用合适的用户如:developer来执行该语句。2、Nokia N9手机提供了用户自动执行命令的机制,将命令脚本文件放入目录:/etc/init/apps下,手机开机一分钟后会自动执行该脚本文件。从而将PN544设备的权限修改为任何用户都可以访问。
在本发明利用NFC手机读取ISO15693标签的方法中,所述打开应用程序访问PN544 NFC控制器的权限的具体步骤为:1、找到修改设备权限的语句。2、将该语句开机自动执行。以Nokia N9手机为例说明如下:1.找到修改权限的命令行工具:chmod,找到PN544的设备文件名和路径:/dev/pn544。将设备权限修改为任何人都可以读写,语句如下:chmod 0666 /dev/pn544。另外还需要考虑该语句本身的执行权限,使用合适的用户如:developer来执行该语句。2、Nokia N9手机提供了用户自动执行命令的机制,将命令脚本文件放入目录:/etc/init/apps下,手机开机一分钟后会自动执行该脚本文件。从而将PN544设备的权限修改为任何用户都可以访问。
在本发明利用NFC手机读取ISO15693标签的方法中,所述第五步中的对读取成功的ISO15693标签的信息进一步处理的过程包括有:在成功读取ISO15693标签的信息后应用程序会按照编码规则进行解析得到标签的信息,并将部分信息显示在NFC手机上,同时手机界面上还会出现数据中心验证按钮和短信中心验证按钮,分别点击按钮都可以将识别后的标签信息发送到信息中心进行防伪验证并返回验证结果。