CN102981803B - 一种提升基于iso14443协议非接触卡数据处理速度的方法 - Google Patents
一种提升基于iso14443协议非接触卡数据处理速度的方法 Download PDFInfo
- Publication number
- CN102981803B CN102981803B CN201210506252.2A CN201210506252A CN102981803B CN 102981803 B CN102981803 B CN 102981803B CN 201210506252 A CN201210506252 A CN 201210506252A CN 102981803 B CN102981803 B CN 102981803B
- Authority
- CN
- China
- Prior art keywords
- card
- frequency
- clock
- predeterminated frequency
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000001737 promoting effect Effects 0.000 title abstract 4
- 230000008520 organization Effects 0.000 title abstract 2
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000002265 prevention Effects 0.000 abstract 2
- 238000007689 inspection Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
本发明公开一种提升基于IOS14443协议非接触卡数据处理速度的方法,属于智能卡领域,包括:A、与读卡器建立连接,设置卡片使用外部时钟,进行初始化、防冲突以及初始化系统变量操作;B、等待接收数据,当检测到读卡器发送的数据时执行C;C、设置卡片使用外部时钟;D、接收数据帧并判断接收到的数据帧是否正确,是则执行E,否则返回B;E、设置卡片使用系统时钟,判断所述数据帧的类型,若为取消选择指令则进行初始化、防冲突以及初始化系统变量操作,设置卡片使用外部时钟,返回B,否则执行F;F、应用层处理接收到的数据,设置卡片使用外部时钟并将处理结果返回给读卡器。本发明的有益效果在于可以提升基于ISO14443协议非接触卡数据处理速度。
Description
技术领域
本发明属于智能卡领域,特别涉及一种提升基于ISO14443协议非接触卡数据处理速度的方法。
背景技术
非接触卡是一种新型的智能卡,结合了射频技术和IC卡技术,其功能与接触ID卡、IC卡一样,只是它无需电源,由接收天线从读卡器磁场感应取电,并工作运算数据,反馈到读卡器。与接触式IC卡相比较非接触卡具有可靠性高、操作方便、防冲突、适合多种应用、加密性能好等优点,因此被广泛使用。
ISO14443协议为非接触卡标准,具体包括ISO/IEC14443-1、ISO/IEC14443-2、ISO/IEC14443-3、ISO/IEC14443-4,其中ISO/IEC14443-1规定了非接触卡的物理特性、ISO/IEC14443-2规定了非接触卡的射频能量和信号接口、ISO/IEC14443-3规定了非接触卡的初始化和防冲突、ISO/IEC14443-4规定了非接触卡的选择应答和传送协议。
发明人在实现本发明的过程中,发现现有技术中至少存在以下问题:一般基于ISO14443协议的非接触卡的CPU工作时钟都使用外部时钟源提供的外部时钟(即读卡器提供的RF时钟)以保证正常通讯,外部时钟频率低导致非接触卡数据处理速度慢。
发明内容
本发明的目的是为了克服现有技术的缺陷,提出一种提升基于ISO14443协议非接触卡数据处理速度的方法。
本发明方法是通过下述技术方案实现的:
一种提升基于ISO14443协议非接触卡数据处理速度的方法,其基本实施过程如下:
步骤A:卡片与读卡器建立连接,设置卡片使用外部时钟,卡片进行初始化、防冲突以及初始化系统变量操作;
步骤B:等待接收读卡器发送的数据,当检测到读卡器发送的数据时执行步骤C,否则继续等待;
步骤C:设置卡片使用外部时钟;
步骤D:卡片接收数据帧并判断接收到的数据帧是否正确,是则执行步骤E,否则返回步骤B;
步骤E:设置卡片使用系统时钟,判断接收到的数据帧的类型,若为取消选择指令则进行初始化、防冲突以及初始化系统变量操作,设置卡片使用外部时钟,返回步骤B,若不为取消选择指令则执行步骤F;
步骤F:卡片的应用层处理接收到的数据,得到处理结果数据,设置卡片使用外部时钟,将所述处理结果数据返回给读卡器。
进一步地,
步骤A和步骤B之间还包括:卡片为A型卡,进行选择应答请求处理以及协议和参数选择处理;或者包括,卡片为B型卡,执行接近式卡选择命令;
步骤C可替换为:判断卡片当前使用的是否是外部时钟,是则执行步骤D,否则设置卡片使用外部时钟,执行步骤D;
步骤F后还包括:返回执行步骤B;
所述设置卡片使用外部时钟具体包括:设置卡片使用RF时钟,卡片对所述RF时钟进行分频,设置卡片内部时钟源停止工作;更进一步地,所述卡片对所述RF时钟进行分频具体为:所述卡片对所述RF时钟进行二分频;所述内部时钟源具体为RC振荡器;
或者所述设置卡片使用外部时钟具体包括:设置卡片使用RF时钟,硬件自动对所述RF时钟进行分频,更进一步地,所述硬件自动对所述RF时钟进行分频具体为:所述硬件自动对所述RF时钟进行4分频;
或者所述设置卡片使用外部时钟具体包括:设置卡片使用RF时钟的预设分频值,将CCR寄存器复位,执行SLEEP指令;更进一步地,所述RF的预设分频值具体为所述RF时钟的频率为6.78MHz的分频值;
所述设置卡片使用系统时钟具体包括:设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟;更近一步地,所述内部时钟源为RC振荡器,所述固定频率的时钟具体为频率为16MHz的时钟;
或者所述设置卡片使用系统时钟具体包括:设置卡片内部时钟源输出固定频率的时钟,延时第一预设时间,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟;更进一步地,所述卡片内部时钟源具体为内部时钟发生器;所述固定频率的时钟具体为频率为20MHz的时钟;所述第一预设时间为20us;
或者所述设置卡片使用系统时钟具体包括:检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR0的值,若所述场强标识RFPWR0的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,若所述场强标识RFPWR0的值不为1则检查场强标识RFPWR1的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,否则切换完成;更近一步地,所述第一预设频率为1.13MHz,所述第二预设频率为3.39MHz,所述第三预设频率为6.78MHz,所述第四预设频率为10.17MHz,所述第五预设频率为4.52MHz,所述第六预设频率为9.04MHz,所述第七预设频率为18.08MHz,所述第二预设时间为0.25ms;
或者所述设置卡片使用系统时钟具体包括:检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR1的值,若所述场强标识RFPWR1的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,若所述场强标识RFPWR1的值不为1则检查场强标识RFPWR0的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,否则切换完成;更进一步地,所述第一预设频率为1.13MHz,所述第二预设频率为3.39MHz,所述第三预设频率为6.78MHz,所述第四预设频率为10.17MHz,所述第五预设频率为4.52MHz,所述第六预设频率为9.04MHz,所述第七预设频率为18.08MHz,所述第二预设时间为0.25ms。
本发明方法的有益效果在于:可提升基于ISO14443协议非接触卡数据处理速度。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的提升基于ISO14443协议非接触卡数据处理速度的方法流程图;
图2为本发明实施例二提供的提升基于ISO14443协议非接触卡数据处理速度的方法流程图;
图3为本发明实施例二提供的一种设置卡片使用系统时钟的方法流程图;
图4为本发明实施例二提供的另一种设置卡片使用系统时钟的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参见图1,本发明实施例提供了一种提升基于ISO14443协议非接触卡数据处理速度的方法,所述方法具体包括:
步骤A:卡片与读卡器建立连接,设置卡片使用外部时钟,卡片进行初始化、防冲突以及初始化系统变量操作;
具体地,所述设置卡片使用外部时钟具体包括:
设置卡片使用RF时钟,卡片对所述RF时钟进行分频,设置卡片内部时钟源停止工作;其中,所述卡片对所述RF时钟进行分频具体为:所述卡片对所述RF时钟进行二分频;所述内部时钟源具体为RC振荡器;
或者包括:设置卡片使用RF时钟,硬件自动对所述RF时钟进行分频;其中,所述硬件自动对所述RF时钟进行分频具体为:所述硬件自动对所述RF时钟进行4分频;
或者包括:设置卡片使用RF时钟的预设分频值,将CCR寄存器复位,执行SLEEP指令;其中所述RF的预设分频值具体为所述RF时钟的频率为6.78MHz的分频值。
步骤B:卡片等待接收读卡器发送的数据,当检测到读卡器发送的数据时执行步骤C,否则继续等待;
进一步地,步骤A和步骤B之间还包括:
卡片为A型卡,进行选择应答请求处理以及协议和参数选择处理;
卡片还可以为B型卡,执行接近式卡选择命令。
步骤C:判断卡片当前使用的是否是外部时钟,是则执行步骤D,否则设置卡片使用外部时钟,执行步骤D;
具体地,在本实施例中,步骤C可替换为:设置卡片使用外部时钟。
步骤D:卡片接收数据帧并判断接收到的数据帧是否正确,是则执行步骤E,否则返回步骤B;
步骤E:设置卡片使用系统时钟,判断接收到的数据帧的类型,若为DESELECT指令(取消选择指令)则进行初始化、防冲突以及初始化系统变量操作,设置卡片使用外部时钟,返回步骤B,若不为DESELECT指令则执行步骤F;
具体地,所述设置卡片使用系统时钟具体包括:
设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟;其中,所述内部时钟源为RC振荡器,所述固定频率的时钟具体为频率为16MHz的时钟;
或者包括:设置卡片内部时钟源输出固定频率的时钟,延时第一预设时间,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟;其中,所述卡片内部时钟源具体为内部时钟发生器;所述固定频率的时钟具体为频率为20MHz的时钟;所述第一预设时间为20us;
或者包括:检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR0的值,若所述场强标识RFPWR0的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,若所述场强标识RFPWR0的值不为1则检查场强标识RFPWR1的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,否则切换完成;其中,所述第一预设频率为1.13MHz,所述第二预设频率为3.39MHz,所述第三预设频率为6.78MHz,所述第四预设频率为10.17MHz,所述第五预设频率为4.52MHz,所述第六预设频率为9.04MHz,所述第七预设频率为18.08MHz,所述第二预设时间为0.25ms。
或者包括:检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR1的值,若所述场强标识RFPWR,1的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,若所述场强标识RFPWR1的值不为1则检查场强标识RFPWR0的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,否则切换完成,其中,所述第一预设频率为1.13MHz,所述第二预设频率为3.39MHz,所述第三预设频率为6.78MHz,所述第四预设频率为10.17MHz,所述第五预设频率为4.52MHz,所述第六预设频率为9.04MHz,所述第七预设频率为18.08MHz,所述第二预设时间为0.25ms。
步骤F:卡片的应用层处理接收到的数据,得到处理结果数据,设置卡片使用外部时钟,将所述处理结果数据返回给读卡器。
进一步地,步骤F执行完后还可返回执行步骤B。
实施例二
参见图2,本发明实施例提供了一种提升基于ISO14443协议非接触卡数据处理速度的方法,所述方法具体包括:
步骤101:卡片与读卡器建立连接;
步骤102:设置卡片使用外部时钟;
在本实施例中,所述设置卡片使用外部时钟具体有下述三种方法:
方法一,具体包括以下步骤:
步骤1-1:设置卡片使用RF时钟;
其中,如本领域技术人员所知,所述RF时钟由卡片根据与其建立连接的读卡器提供的时钟得到;
步骤1-2:卡片对所述RF时钟进行分频;
具体地,在本实施例中,卡片对所述RF时钟进行2分频;
步骤1-3:设置卡片内部时钟源停止工作,分频得到的时钟即为外部时钟,切换完成;
具体地,在本实施例中,所述内部时钟源为RC振荡器;
进一步地,步骤1-1至步骤1-3可通过下述寄存器设置实现:
①将系统时钟源选择寄存器SCUSCK的值设置为0x0003;
②将RF时钟分频控制寄存器SCURFCKD的值设置为0x0000;
③将寄存器SCUOSC32的值设置为0x0010;
方法二,具体包括以下步骤:
步骤2-1:设置卡片使用RF时钟,硬件自动对所述RF时钟进行分频,分频得到的时钟即为外部时钟,切换完成;
具体地,在本实施例中所述硬件对所述RF时钟进行4分频;
进一步地,所述设置卡片使用RF时钟可通过下述寄存器设置实现:
①将时钟控制寄存器CLKONH的值设置为0x00;
②将NVM等待嵌入控制寄存器NVMWAIT的值设置为0x00;
方法三,具体包括以下步骤:
步骤3-1:设置卡片使用RF时钟的预设分频值;
步骤3-2:将CCR寄存器复位,执行SLEEP指令,所述RF时钟的预设分频值即为外部时钟,切换完成;
进一步地,步骤3-1可通过下述寄存器设置实现:
①将时钟控制寄存器CLKCR.BYTE的值设置为0x01;
②将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x03;
步骤103:卡片进行初始化、防冲突和初始化系统变量等操作;
步骤104:判断卡片的类型,若为TYPEA则执行步骤105,若为TYPEB则执行步骤106,若既不是TYPEA也不是TYPEB则返回执行步骤102;
步骤105:进行RATS(Request for Answer To Select,选择应答请求)处理和PPS(Protocol and Parameter Selection,协议和参数选择)处理,执行步骤107;
步骤106:进行ATTRIB(PICC selection command,PICC选择命令)处理,执行步骤107;
步骤107:等待接收读卡器发送的数据,当检测到读卡器发送的数据时执行步骤108,否则继续等待;
步骤108:判断卡片当前使用的是否为外部时钟,是则执行步骤110,否则执行步骤109;
步骤109:设置卡片使用外部时钟,执行步骤110;
在本实施例中,所述设置卡片使用外部时钟的方法如步骤102中所述,在此不再赘述;
步骤110:接收数据帧,判断接收到的数据帧是否正确,是则执行步骤111,否则返回执行步骤108;
步骤111:设置卡片使用系统时钟;
在本实施例中,设置卡片使用系统时钟具体有下述四种方法:
方法一,具体包括以下步骤,本方法中所述系统时钟为卡片内部时钟源输出的固定频率的时钟:
步骤4-1:设置内部时钟源输出固定频率的时钟;
具体地,在本实施例中,所述内部时钟源为RC振荡器,所述RC振荡器输出频率为16MHz的时钟;
步骤4-2:设置卡片使用所述内部时钟源输出的所述固定频率的时钟,切换完成;
进一步地,在本实施例中,步骤4-1至步骤4-2中的操作可通过以下寄存器设置实现:
①将寄存器SCUOSC32的值设置为0x0000;
②将寄存器SCUINCKD的值设置为0x0007;
③将系统时钟源选择寄存器SCUSCK的值与上0xFE;
④将系统时钟源选择寄存器SCUSCK的值设置为0x0000;
⑤将寄存器SCUSCKD的值设置为0x0000;
方法二,具体包括以下步骤,本方法中所述系统时钟为卡片内部时钟发生器输出的固定频率的时钟:
步骤5-1:设置卡片内部时钟源输出固定频率的时钟;
具体地,在本实施例中,所述卡片内部时钟源为内部时钟发生器,所述内部时钟发生器输出频率为20MHz的时钟;
步骤5-2:延时第一预设时间;
具体地,在本实施例中,所述第一预设时间为20us;
步骤5-3:设置卡片使用所述内部时钟源输出的固定频率的时钟,切换完成;
进一步地,在本实施例中,步骤5-1至步骤5-3中的操作可通过以下寄存器设置实现:
①将内部时钟选择寄存器ICLKSEL的值设置为0x00;
②将NVM等待嵌入控制寄存器NVMWAIT的值设置为0x22;
方法三,如图3所示,具体包括以下步骤:
步骤6-1:检查场强标识RFPWR2的值是否为1,是则执行步骤6-2,否则切换完成;
步骤6-2:检查场强标识RFPWR0的值是否为1,是则执行步骤6-3,否则执行步骤6-9;
步骤6-3:设置卡片使用系统时钟;
步骤6-4:设置所述系统时钟的初始频率为第一预设频率;
具体地,在本实施例中,所述第一预设频率为1.13MHz;
步骤6-5:将所述系统时钟升频为第二预设频率;
具体地,在本实施例中,所述第二预设频率为3.39MHz;
步骤6-6:将所述系统时钟升频为第三预设频率;
具体地,在本实施例中,所述第三预设频率为6.78MHz;
步骤6-7:将所述系统时钟升频为第四预设频率;
具体地,在本实施例中,所述第四预设频率为10.17MHz;
步骤6-8:延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成;
具体地,在本实施例中,所述第二预设时间为0.25ms;
步骤6-9:检查场强标识RFPWR1的值是否为1,是则执行步骤6-10,否则切换完成;
步骤6-10:设置卡片使用系统时钟;
步骤6-11:设置所述系统时钟的初始频率为第一预设频率;
步骤6-12:将所述系统时钟升频为第五预设频率;
具体地,在本实施例中,所述第五预设频率为4.52MHz;
步骤6-13:将所述系统时钟升频为第六预设频率;
具体地,在本实施例中,所述第六预设频率为9.04MHz;
步骤6-14:延时第二预设时间,将CCR寄存器复位,执行SLEEP指令;
具体地,在本实施例中,所述第二预设时间为0.25ms;
步骤6-15:将所述系统时钟升频为第七预设频率,切换完成;
具体地,在本实施例中,所述第七预设频率为18.08MHz;
进一步地,
在本实施例中,步骤6-3至步骤6-7中的操作可通过以下寄存器设置实现:
①将时钟控制寄存器CLKCR.BYTE的值设置为0x00;
②将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x00;
③将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x03;
④将时钟控制寄存器CLKCR.BYTE的值设置为0x01;
⑤将时钟控制寄存器CLKCR.BYTE的值设置为0x5B;
在本实施例中,步骤6-10至步骤6-13中的操作可通过以下寄存器设置实现:
①将时钟控制寄存器CLKCR.BYTE的值设置为0x00;
②将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x00;
③将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x02;
④将时钟控制寄存器CLKCR.BYTE的值设置为0x89;
⑤将时钟控制寄存器CLKCR.BYTE的值设置为0x92;
步骤6-15中的操作可通过以下寄存器设置实现:
⑥将时钟控制寄存器CLKCR.BYTE的值设置为0x9B;
方法四,如图4所示,具体包括以下步骤:
步骤7-1:检查场强标识RFPWR2的值是否为1,是则执行步骤7-2,否则切换完成;
步骤7-2:检查场强标识RFPWR1的值是否为1,是则执行步骤7-3,否则执行步骤7-9;
步骤7-3:设置卡片使用系统时钟;
步骤7-4:设置所述系统时钟的初始频率为第一预设频率;
步骤7-5:将所述系统时钟升频为第五预设频率;
步骤7-6:将所述系统时钟升频为第六预设频率;
步骤7-7:延时第二预设时间,将CCR寄存器复位,执行SLEEP指令;
步骤7-8:将所述系统时钟升频为第七预设频率,切换完成;
步骤7-9:检查场强标识RFPWR0的值是否为1,是则执行步骤7-10,否则切换完成;
步骤7-10:设置卡片使用系统时钟;
步骤7-11:设置所述系统时钟的初始频率为第一预设频率;
步骤7-12:将所述系统时钟升频为第二预设频率;
步骤7-13:将所述系统时钟升频为第三预设频率;
步骤7-14:将所述系统时钟升频为第四预设频率;
步骤7-15:延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成;
进一步地,
在本实施例中,步骤7-3至步骤7-6中的操作可通过以下寄存器设置实现:
①将时钟控制寄存器CLKCR.BYTE的值设置为0x00;
②将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x00;
③将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x02;
④将时钟控制寄存器CLKCR.BYTE的值设置为0x89;
⑤将时钟控制寄存器CLKCR.BYTE的值设置为0x92;
步骤7-8中的操作可通过以下寄存器设置实现:
⑥将时钟控制寄存器CLKCR.BYTE的值设置为0x9B;
在本实施例中,步骤7-10至步骤7-14中的操作可通过以下寄存器设置实现:
①将时钟控制寄存器CLKCR.BYTE的值设置为0x00;
②将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x00;
③将非接时钟分频器寄存器CLCKDVR.BYTE的值设置为0x03;
④将时钟控制寄存器CLKCR.BYTE的值设置为0x01;
⑤将时钟控制寄存器CLKCR.BYTE的值设置为0x5B;
步骤112:判断接收到的数据帧是否为DESELECT命令(取消选择命令),是则执行步骤113,否则执行步骤114;
步骤113:卡片进行初始化、防冲突和初始化系统变量等操作,设置卡片使用外部时钟,返回执行步骤104;
步骤114:卡片的应用层处理接收到的数据帧,得到处理结果数据;
步骤115:设置卡片使用外部时钟;
在本实施例中,所述设置卡片使用外部时钟的方法如步骤102中所述,在此不再赘述;
步骤116:将处理结果数据返回给读卡器.
具体地,步骤116后可返回执行步骤107。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (16)
1.一种提升基于ISO14443协议非接触卡数据处理速度的方法,其特征在于包括:
步骤A:卡片与读卡器建立连接,设置卡片使用外部时钟,卡片进行初始化、防冲突以及初始化系统变量操作;
步骤B:等待接收读卡器发送的数据,当检测到读卡器发送的数据时执行步骤C,否则继续等待;
步骤C:设置卡片使用外部时钟;
步骤D:卡片接收数据帧并判断接收到的数据帧是否正确,是则执行步骤E,否则返回步骤B;
步骤E:设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟,判断接收到的数据帧的类型,若为取消选择指令则进行初始化、防冲突以及初始化系统变量操作,设置卡片使用外部时钟,返回步骤B,若不为取消选择指令则执行步骤F;
步骤F:卡片的应用层处理接收到的数据帧,得到处理结果数据,设置卡片使用外部时钟,将所述处理结果数据返回给读卡器。
2.根据权利要求1所述的方法,其特征在于,步骤A和步骤B之间还包括:
卡片为A型卡,进行选择应答请求处理以及协议和参数选择处理;
或者,卡片为B型卡,执行接近式卡选择命令。
3.根据权利要求1所述的方法,其特征在于,步骤C可替换为:
判断卡片当前使用的是否是外部时钟,是则执行步骤D,否则设置卡片使用外部时钟,执行步骤D。
4.根据权利要求1所述的方法,其特征在于,所述将所述处理结果数据返回给读卡器后包括:返回所述步骤B。
5.根据权利要求1所述的方法,其特征在于,所述设置卡片使用外部时钟具体包括:
设置卡片使用RF时钟,卡片对所述RF时钟进行分频,设置卡片内部时钟源停止工作。
6.根据权利要求5所述的方法,其特征在于,所述卡片对所述RF时钟进行分频具体为:所述卡片对所述RF时钟进行二分频;所述内部时钟源具体为RC振荡器。
7.根据权利要求1所述的方法,其特征在于,所述设置卡片使用外部时钟具体包括:
设置卡片使用RF时钟,硬件自动对所述RF时钟进行分频。
8.根据权利要求7所述的方法,其特征在于,所述硬件自动对所述RF时钟进行分频具体为:所述硬件自动对所述RF时钟进行4分频。
9.根据权利要求1所述的方法,其特征在于,所述设置卡片使用外部时钟具体包括:
设置卡片使用RF时钟的预设分频值,将CCR寄存器复位,执行SLEEP指令。
10.根据权利要求9所述的方法,其特征在于,所述RF的预设分频值具体为所述RF时钟的频率为6.78MHz的分频值。
11.根据权利要求1所述的方法,其特征在于,所述内部时钟源为RC振荡器,所述固定频率的时钟具体为频率为16MHz的时钟。
12.根据权利要求1所述的方法,其特征在于,所述设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟,替换为:
设置卡片内部时钟源输出固定频率的时钟,延时第一预设时间,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟。
13.根据权利要求12所述的方法,其特征在于,所述卡片内部时钟源具体为内部时钟发生器;所述固定频率的时钟具体为频率为20MHz的时钟;所述第一预设时间为20us。
14.根据权利要求1所述的方法,其特征在于,所述设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟,替换为:
检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR0的值,若所述场强标识RFPWR0的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,若所述场强标识RFPWR0的值不为1则检查场强标识RFPWR1的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,否则切换完成。
15.根据权利要求1所述的方法,其特征在于,所述设置卡片内部时钟源输出固定频率的时钟,设置卡片使用所述卡片内部时钟源输出的固定频率的时钟,替换为:
检查场强标识RFPWR2的值,若所述场强标识RFPWR2的值不为1则切换完成,若所述场强标识RFPWR2的值为1则检查场强标识RFPWR1的值,若所述场强标识RFPWR,1的值为1则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由的第一预设频率升频为第五预设频率,再由第五预设频率升频为第六预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,将所述系统时钟频率由第六预设频率升频为第七预设频率,切换完成,若所述场强标识RFPWR1的值不为1则检查场强标识RFPWR0的值是否为1,是则设置卡片使用系统时钟,设置所述系统时钟的初始频率为第一预设频率,将所述系统时钟频率由第一预设频率升频为第二预设频率,再由第二预设频率升频为第三预设频率,最终升频为第四预设频率,延时第二预设时间,将CCR寄存器复位,执行SLEEP指令,切换完成,否则切换完成。
16.根据权利要求14或15所述的方法,其特征在于,
所述第一预设频率为1.13MHz,所述第二预设频率为3.39MHz,所述第三预设频率为6.78MHz,所述第四预设频率为10.17MHz,所述第五预设频率为4.52MHz,所述第六预设频率为9.04MHz,所述第七预设频率为18.08MHz,所述第二预设时间为0.25ms。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210506252.2A CN102981803B (zh) | 2012-11-30 | 2012-11-30 | 一种提升基于iso14443协议非接触卡数据处理速度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210506252.2A CN102981803B (zh) | 2012-11-30 | 2012-11-30 | 一种提升基于iso14443协议非接触卡数据处理速度的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102981803A CN102981803A (zh) | 2013-03-20 |
CN102981803B true CN102981803B (zh) | 2015-05-27 |
Family
ID=47855874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210506252.2A Active CN102981803B (zh) | 2012-11-30 | 2012-11-30 | 一种提升基于iso14443协议非接触卡数据处理速度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102981803B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250789B (zh) * | 2016-08-01 | 2018-10-12 | 飞天诚信科技股份有限公司 | 一种读卡器及其对卡片上电的方法 |
CN111541451B (zh) | 2020-06-23 | 2021-10-29 | 深圳比特微电子科技有限公司 | 用于对时钟信号进行升频的方法和时钟电路 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639897A (zh) * | 2009-08-31 | 2010-02-03 | 北京飞天诚信科技有限公司 | 操作超范围变频因子智能卡的方法、设备及系统 |
CN102467648A (zh) * | 2010-11-17 | 2012-05-23 | 瑞萨电子株式会社 | 非接触式通信装置、非接触式ic卡以及移动信息终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100252631A1 (en) * | 2009-04-01 | 2010-10-07 | Infineon Technologies Ag | High speed contactless communication |
-
2012
- 2012-11-30 CN CN201210506252.2A patent/CN102981803B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639897A (zh) * | 2009-08-31 | 2010-02-03 | 北京飞天诚信科技有限公司 | 操作超范围变频因子智能卡的方法、设备及系统 |
CN102467648A (zh) * | 2010-11-17 | 2012-05-23 | 瑞萨电子株式会社 | 非接触式通信装置、非接触式ic卡以及移动信息终端 |
Non-Patent Citations (1)
Title |
---|
无线射频识别IC卡数字模块的研究和设计;陈亮;《信息科技辑》;20070531;第29页-第58页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102981803A (zh) | 2013-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2267646B1 (en) | Signal enhancer chip for radio frequency identification system and signal enhancer | |
JP5177270B2 (ja) | 通信装置、通信システム、および通信方法 | |
EP2649561B1 (en) | Smartcard providing an improved standby mode | |
JP2018530812A (ja) | 電力の最適化 | |
JP2013165447A (ja) | 送信装置、電子機器、受信装置及び認証システム | |
CN100573563C (zh) | 一种非接触ic卡通用编码解码及读写装置和方法 | |
CN102981803B (zh) | 一种提升基于iso14443协议非接触卡数据处理速度的方法 | |
CN102831364B (zh) | 一种唤醒信号匹配方法、装置及标签 | |
CN207558004U (zh) | Gb/t29768-2013国标超高频rfid标签 | |
CN204856513U (zh) | 射频识别系统、读卡器及射频芯片 | |
CN203552291U (zh) | 一种有源非接触智能卡 | |
JP2003162700A (ja) | 半導体装置の動作制御方法、半導体装置動作制御プログラム、半導体装置動作制御プログラムを記録した記録媒体、半導体装置、およびicカード | |
CN101561894B (zh) | 智能卡及确定第二控制器通信速率的方法 | |
US9912386B2 (en) | Method for operating object capable via contactless communication | |
US9760745B2 (en) | Signal processing device, method of processing signal, and recording medium | |
CN103488961A (zh) | 一种屏蔽误唤醒信号的方法及有源电子标签 | |
TWI616075B (zh) | 智慧卡及其降低峰值電流方法 | |
CN107368764B (zh) | 电磁耦合读取器 | |
CN105322977B (zh) | 一种有源rfid标签低功耗数据接收装置及其方法 | |
Druml et al. | Nize-a near field communication interface enabling zero energy standby for everyday electronic devices | |
CN204143449U (zh) | 一种非接触式金融ic卡读卡器 | |
CN104251933A (zh) | 新型智能电能表 | |
CN104504353A (zh) | 一种读卡器管理系统及其管理方法 | |
CN111385776A (zh) | 能量传递增强装置、无源从设备及磁通信系统 | |
CN103150532A (zh) | 一种双界面读卡器的电容感应方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 17th floor, building B, Huizhi building, No.9, Xueqing Road, Haidian District, Beijing 100085 Patentee after: Feitian Technologies Co.,Ltd. Country or region after: China Address before: 100085 17th floor, block B, Huizhi building, No.9 Xueqing Road, Haidian District, Beijing Patentee before: Feitian Technologies Co.,Ltd. Country or region before: China |
|
CP03 | Change of name, title or address |