CN105787408B - 一种支持高速数据通讯的读卡器及其工作方法 - Google Patents
一种支持高速数据通讯的读卡器及其工作方法 Download PDFInfo
- Publication number
- CN105787408B CN105787408B CN201610077395.4A CN201610077395A CN105787408B CN 105787408 B CN105787408 B CN 105787408B CN 201610077395 A CN201610077395 A CN 201610077395A CN 105787408 B CN105787408 B CN 105787408B
- Authority
- CN
- China
- Prior art keywords
- card
- contact card
- card reader
- module
- speed
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 197
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims abstract description 103
- 230000004044 response Effects 0.000 claims description 39
- 238000012545 processing Methods 0.000 claims description 36
- 230000000694 effects Effects 0.000 claims description 7
- 108010001267 Protein Subunits Proteins 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 241001269238 Data Species 0.000 description 13
- 238000001514 detection method Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10198—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves setting parameters for the interrogator, e.g. programming parameters and operating modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10198—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves setting parameters for the interrogator, e.g. programming parameters and operating modes
- G06K7/10217—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves setting parameters for the interrogator, e.g. programming parameters and operating modes parameter settings controlling the transmission power of the interrogator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10019—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves resolving collision on the communication channels between simultaneously or concurrently interrogated record carriers.
- G06K7/10029—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves resolving collision on the communication channels between simultaneously or concurrently interrogated record carriers. the collision being resolved in the time domain, e.g. using binary tree search or RFID responses allocated to a random time slot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10297—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for handling protocols designed for non-contact record carriers such as RFIDs NFCs, e.g. ISO/IEC 14443 and 18092
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10366—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves the interrogation device being adapted for miscellaneous applications
- G06K7/10475—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves the interrogation device being adapted for miscellaneous applications arrangements to facilitate interaction with further interrogation devices, e.g. such that at least two interrogation devices may function and cooperate in a network of such devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10316—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves using at least one antenna particularly designed for interrogating the wireless record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10366—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves the interrogation device being adapted for miscellaneous applications
Landscapes
- Engineering & Computer Science (AREA)
- Toxicology (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种支持高速数据通讯的读卡器的工作方法,属于通讯领域,所述方法包括:当读卡器判断第一到位标识无效时,读卡器在非接场中发送询卡指令,并在接收到非接触卡返回的询卡应答数据之后,向非接触卡发送调速设置指令,判断是否接收到非接触卡返回的调速设置成功应答数据,是则读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给非接触卡,以第二通讯速率接收非接触卡返回的操作结果,否则读卡器设置其通讯速率为以第三通讯速率将接收到的第一命令发送给非接触卡,以第四通讯速率接收非接触卡返回的操作结果;其中,第一通讯速率大于第三通讯速率,第二通讯速率大于第四通讯速率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种支持高速数据通讯的读卡器及其工作方法。
背景技术
在现有技术中,非接触读卡器与非接触卡之间一般只能支持106kbps的通讯速率,个别读卡器可以通过PPS调速支持到848kbps。尽管如此,在非接触读卡器与非接触卡之间交互大量的数据信息时,交互时间太长,降低了用户体验,从而限制了一些非接触卡的应用。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种支持高速数据通讯的读卡器及其工作方法。
本发明提供了一种支持高速数据通讯的读卡器的工作方法,包括:
步骤S1:所述读卡器判断第一到位标识是否有效,是则发送非接触卡到位信息给上位机,执行步骤S5,否则执行步骤S2;
步骤S2:所述读卡器在非接场中发送询卡指令,并在接收到非接触卡返回的询卡应答数据后,向所述非接触卡发送调速设置指令,判断是否接收到所述非接触卡返回的调速设置成功应答数据,是则执行步骤S3,否则执行步骤S4;
步骤S3:所述读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤S5;
步骤S4:所述读卡器设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤S5,所述第一通讯速率大于所述第三通讯速率,所述第二通讯速率大于所述第四通讯速率;
步骤S5:所述读卡器等待并接收上位机发送的命令,当接收到第一命令时,根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1。
可选地,所述步骤S1之前,还包括:
所述读卡器初始化第一到位标识为无效;
所述步骤S5中,所述读卡器等待并接收上位机发送的命令,当接收到第一命令之后,还包括:所述读卡器判断所述第一到位标识是否有效,是则根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1,否则发送非接触卡离开信息给所述上位机,返回步骤S1。
可选地,所述步骤S1之前,还包括:
所述读卡器初始化第一接收标识为无效;
所述步骤S5之前,还包括:所述读卡器判断所述第一接收标识是否有效,是则根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1,否则执行步骤S5;
所述步骤S5中,当所述读卡器接收到所述第一命令时,还包括:所述读卡器设置所述第一接收标识为有效。
可选地,所述步骤S1之前,还包括:
步骤A1:所述读卡器判断所述第一接收标识是否有效,是则执行步骤A2,否则执行步骤S1;
步骤A2:所述读卡器判断所述第一命令是否为获取非接触卡状态指令,是则执行步骤A3,否则执行步骤S1;
步骤A3:所述读卡器设置所述第一接收标识为无效,组织所述非接触卡状态信息发送给所述上位机,执行步骤S1。
可选地,当所述步骤S2判断为是时,所述步骤S5中,所述读卡器根据所述第一命令对所述非接触卡进行操作得到操作结果之前,还包括:
所述读卡器判断当前操作的非接触卡是否为第一类卡,是则按照第二类卡模式修改非接触读卡芯片的参数,根据所述第一命令对所述非接触卡进行操作得到操作结果,否则根据所述第一命令对所述非接触卡进行操作得到操作结果。
可选地,所述步骤S2中,所述读卡器向所述非接触卡发送调速设置指令之前,还包括:
步骤A1:所述读卡器向所述非接触卡发送调速查询指令,判断是否接收到所述非接触卡返回的调速查询应答数据,是则执行步骤A2,否则所述非接触卡不支持高速数据通讯,执行步骤S4;
步骤A2:所述读卡器根据所述调速查询应答数据,判断所述非接触卡通过调速后是否支持预设速率及其以上的通讯速率,是则向所述非接触卡发送调速设置指令,否则所述非接触卡不支持高速数据通讯,执行步骤S4。
所述步骤A2,具体为:所述读卡器解析接收到的所述调速查询应答数据,判断所述预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率,是则所述非接触卡不支持高速数据通讯,执行步骤S4,否则向所述非接触卡发送调速设置指令。
可选地,所述步骤A2之后,还包括:
步骤B:所述读卡器判断所述非接触卡通过调速后支持的最高速率是否大于所述读卡器支持的最高速率,是则将所述读卡器支持的最高速率作为协商通讯速率,向所述非接触卡发送调速设置指令,否则将所述非接触卡支持的最高速率作为协商通讯速率,向所述非接触卡发送调速设置指令。
所述步骤B具体为:
步骤B-1:所述读卡器判断所述非接触卡通过调速后支持的最高发送速率是否大于所述读卡器支持的最高接收速率,是则将所述读卡器支持的最高接收速率作为所述协商接收速率,执行步骤B-2,否则将所述非接触卡支持的最高发送速率作为协商接收速率,执行步骤B-2;
步骤B-2:所述读卡器判断所述非接触卡通过调速后支持的最高接收速率是否大于所述读卡器支持的最高发送速率,是则将所述读卡器支持的最高发送速率作为所述协商发送速率,向所述非接触卡发送调速设置指令,否则将所述非接触卡支持的最高接收速率作为协商发送速率,向所述非接触卡发送调速设置指令。
所述步骤S4中,所述读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,具体为:所述读卡器设置其通讯速率为以协商发送速率将接收到的第一命令发送给所述非接触卡,以协商接收速率接收所述非接触卡返回的操作结果。
所述方法还包括:
步骤K1:所述读卡器判断第二到位标识是否有效,是则发送接触卡到位信息给上位机,执行步骤K2,否则返回步骤K1;
步骤K2:所述读卡器等待并接收上位机发送的命令,当接收到第二命令时,根据所述第二命令对所述接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤K1。
可选地,所述步骤K1之前,还包括:
所述读卡器初始化第二到位标识为无效,初始化第二接收标识为无效;
所述步骤K2中,根据所述第二命令对所述接触卡进行操作得到操作结果之前,还包括:
步骤C:所述读卡器判断所述第二到位标识是否有效,是则根据所述第二命令对所述接触卡进行操作得到操作结果,否则发送接触卡离开信息给上位机,返回步骤K1;
所述步骤K2中,当读卡器接收到第二命令时,还包括:所述读卡器设置所述第二接收标识为有效。
可选地,所述步骤K1之前,还包括:
步骤D1:所述读卡器判断所述第二接收标识是否有效,是则执行步骤D2,否则执行所述步骤K1;
步骤D2:所述读卡器判断所述第二命令是否为获取接触卡状态指令,是则设置所述第二接收标识为无效,组织接触卡状态信息发送给所述上位机,执行步骤K1,否则执行所述步骤C。
本发明还提供一种支持高速数据通讯的读卡器,其特征在于,包括:
第一判断模块,用于判断第一到位标识是否有效;
发送模块,用于当所述第一判断模块判断出第一到位标识有效时,发送非接触卡到位信息给上位机;
询卡模块,用于当所述第一判断模块判断出第一到位标识无效时,在非接场中发送询卡指令;
接收模块,用于当所述询卡模块在非接场中发送询卡指令之后,接收非接触卡返回的询卡应答数据;
调速模块,用于当所述接收模块接收到非接触卡返回的询卡应答数据时,向所述非接触卡发送调速设置指令;
所述接收模块,还用于当所述调速模块向所述非接触卡发送调速设置指令之后,接收所述非接触卡返回的调速设置成功应答数据;
第二判断模块,用于判断所述接收模块是否接收到所述非接触卡返回的调速设置成功应答数据;
设置模块,用于当所述第二判断模块判断出所述接收模块接收到所述非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;用于当所述第二判断模块判断出所述接收模块未接收到所述非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;所述第一通讯速率大于所述第三通讯速率,所述第二通讯速率大于所述第四通讯速率;
所述发送模块,还用于当所述设置模块设置第一到位标识为有效时,发送卡到位信息给上位机;
所述接收模块,还用于当所述发送模块发送非接触卡到位信息给上位机之后,等待并接收上位机发送的命令;
第一处理模块,用于当所述接收模块接收到第一命令时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述发送模块,还用于将所述第一处理模块得到的操作结果发送给所述上位机。
可选地,所述读卡器还包括:
第一初始化模块,用于初始化第一到位标识为无效;
第三判断模块,用于当所述接收模块接收到第一命令时,判断所述第一到位标识是否有效;
所述第一处理模块,具体用于当所述第三判断模块判断出所述第一到位标识有效时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述发送模块,还用于当所述第三判断模块判断出所述第一到位标识无效时,发送非接触卡离开信息给上位机,触发所述第一判断模块。
可选地,所述读卡器还包括:
第二初始化模块,用于初始化第一接收标识为无效;
第四判断模块,用于判断所述第一接收标识是否有效;
所述接收模块,具体用于当所述第四判断模块判断出所述第一接收标识无效时,等待并接收上位机发送的命令;
所述第一处理模块,还用于当所述第四判断模块判断出所述第一接收标识有效时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述设置模块,还用于当所述接收模块接收到所述第一命令时,设置所述第一接收标识为有效。
可选地,所述读卡器还包括:
第五判断模块,用于判断所述第一接收标识是否有效;
第六判断模块,用于当所述第五判断模块判断出所述第一接收标识有效时,判断所述第一命令是否为获取非接触卡状态指令;
所述设置模块,还用于当所述第六判断模块判断出所述第一命令是获取非接触卡状态指令时,设置所述第一接收标识为无效;
所述发送模块,还用于组织所述非接触卡状态信息发送给所述上位机,触发所述第一判断模块;
所述第一判断模块,具体用于当所述第五判断模块判断出所述第一接收标识无效时,判断第一到位标识是否有效;还用于当所述第六判断模块判断出所述第一命令不是获取非接触卡状态指令时,判断第一到位标识是否有效。
可选地,所述读卡器还包括:
第七判断模块,用于当所述第二判断模块判断出非接触卡支持高速数据通讯时,所述第一处理模块根据所述第一命令对所述非接触卡进行操作得到操作结果之前,判断当前操作的非接触卡是否为第一类卡;
所述设置模块,还用于当所述第七判断模块判断出当前操作的非接触卡是第一类卡时,按照第二类卡模式修改非接触读卡芯片的参数,触发所述第一处理模块;
所述第一处理模块,还用于当所述第七判断模块判断出当前操作的非接触卡不是第一类卡时,根据所述第一命令对所述非接触卡进行操作得到操作结果。
可选地,所述调速模块,包括:
发送单元,用于向所述非接触卡发送调速设置指令之前,发送调速查询指令;
接收单元,用于接收所述非接触卡返回的调速查询应答数据;
第一判断单元,用于判断所述接收单元是否接收到所述非接触卡返回的调速查询应答数据;
第二判断单元,用于当所述第一判断单元判断出所述接收单元接收到所述非接触卡返回的调速查询应答数据时,判断所述非接触卡通过调速后是否支持预设速率及其以上的通讯速率;
所述发送单元,还用于当所述第二判断单元判断出所述非接触卡通过调速后支持预设速率及其以上的通讯速率时,向所述非接触卡发送调速设置指令;
所述设置模块,具体用于当所述第一判断单元判断出所述接收单元未接收到所述非接触卡返回的调速查询应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;还用于当所述第二判断单元判断出所述非接触卡通过调速后不支持预设速率及其以上的通讯速率时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效。
所述第二判断单元,具体用于解析接收到的所述调速查询应答数据,判断所述预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率。
可选地,所述调速模块,还包括:
第三判断单元,用于判断所述非接触卡通过调速后支持的最高速率是否大于所述读卡器支持的最高速率,是则将所述读卡器支持的最高速率作为协商通讯速率,触发所述发送单元,否则将所述非接触卡支持的最高速率作为协商通讯速率,触发所述发送单元。
所述第三判断单元,包括:
第一判断子单元,用于判断所述非接触卡通过调速后支持的最高发送速率是否大于所述读卡器支持的最高接收速率;
作为子单元,用于当所述第一判断子单元判断出所述非接触卡通过调速后支持的最高发送速率大于所述读卡器支持的最高接收速率时,将所述读卡器支持的最高接收速率作为所述协商接收速率,触发第二判断子单元;用于当所述第一判断子单元判断出所述非接触卡通过调速后支持的最高发送速率不大于所述读卡器支持的最高接收速率时,将所述非接触卡支持的最高发送速率作为协商接收速率,触发第二判断子单元;
所述第二判断子单元,用于判断所述非接触卡通过调速后支持的最高接收速率是否大于所述读卡器支持的最高发送速率;
所述作为子单元,还用于当所述第二判断子单元判断出判断所述非接触卡通过调速后支持的最高接收速率大于所述读卡器支持的最高发送速率时,将所述非接触卡支持的最高接受速率作为协商发送速率,触发所述发送单元;还用于当所述第二判断子单元判断出所述非接触卡通过调速后支持的最高接收速率不大于所述读卡器支持的最高发送速率时,将所述非接触卡支持的最高接收速率作为协商发送速率,触发所述发送单元。
所述设置模块中,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,具体用于设置其通讯速率为以协商发送速率将接收到的第一命令发送给所述非接触卡,以协商接收速率接收所述非接触卡返回的操作结果。
可选地,所述读卡器还包括:
第八判断模块,用于判断第二到位标识是否有效;
所述发送模块,还用于当所述第八判断模块判断出第二到位标识有效时,发送接触卡到位信息给上位机;
所述第八判断模块,还用于当所述第八判断模块判断出第二到位标识无效时,继续判断第二到位标识是否有效;
第二处理模块,用于当所述接收模块接收到第二命令时,根据所述第二命令对所述接触卡进行操作得到操作结果;
所述发送模块,还用于将所述第二处理模块得到的操作结果发送给所述上位机,触发所述第八判断模块。
可选地,所述读卡器还包括:
第三初始化模块,用于初始化第二到位标识为无效,初始化第二接收标识为无效;
第九判断模块,用于所述第二处理模块根据所述第二命令对所述接触卡进行操作得到操作结果之前,判断所述第二到位标识是否有效;
所述发送模块,还用于当所述第九判断模块判断出所述第二到位标识无效时,发送接触卡离开信息给所述上位机,触发所述第八判断模块;
所述第二处理模块,具体用于当所述第九判断模块判断出所述第二到位标识有效时,根据所述第二命令对所述接触卡进行操作得到操作结果;
所述设置模块,还用于当所述接收模块接收到第二命令时,设置所述第二接收标识为有效。
可选地,所述读卡器还包括:
第十判断模块,用于判断所述第二接收标识是否有效;
所述第八判断模块,具体用于当所述第十判断模块判断出所述第二接收标识无效时,判断第二到位标识是否有效;
第十一判断模块,用于当所述第十判断模块判断出所述第二接收标识有效时,判断所述第二命令是否为获取接触卡状态指令;
所述设置模块,还用于当所述第十一判断模块判断出所述第二命令是获取接触卡状态指令时,设置所述第二接收标识为无效;
所述发送模块,还用于组织接触卡状态信息发送给所述上位机,触发所述第八判断模块;
所述第九判断模块,具体用于当所述第十一判断模块判断出所述第二命令不是获取接触卡状态指令时,判断第二到位标识是否有效
本发明与现有技术相比,具有以下优点:通过提高非接触读卡器与非接触卡之间的通讯速率,来缩短非接触读卡器与非接触卡的交互时间,从而提升用户体验。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种支持高速数据通讯的读卡器的工作方法的流程图;
图2为本发明实施例二提供的一种支持高速数据通讯的读卡器的工作方法中进行非接触卡操作的流程图;
图3为本发明实施例三提供的一种支持高速数据通讯的读卡器的工作方法中进行接触卡操作的流程图;
图4为本发明实施例四提供的一种支持高速数据通讯的读卡器的方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明中,支持高速数据通讯的读卡器不仅可以以高速通讯模式对非接触卡进行处理操作,还可以以正常通讯模式对非接触卡及接触卡进行处理操作。
实施例一
实施例一提供一种支持高速数据通讯的读卡器的工作方法,如图1所示,包括:
步骤101:读卡器判断第一到位标识是否有效,是则发送非接触卡到位信息给上位机,执行步骤105,否则执行步骤102;
在本实施例中,步骤101之前还包括:读卡器初始化第一到位标识为无效,初始化第一接收标识为无效;
在本实施例中,步骤101之前,还可以包括:
步骤A1:读卡器判断第一接收标识是否有效,是则执行步骤A2,否则执行步骤101;
步骤A2:读卡器判断第一命令是否为获取非接触卡状态指令,是则执行步骤A3,否则执行步骤101;
在本实施例中,第一命令为非接触卡处理CCID命令;
步骤A3:读卡器设置第一接收标识为无效,组织非接触卡状态信息发送给上位机,执行步骤101。
步骤102:读卡器在非接场中发送询卡指令,并在接收到非接触卡返回的询卡应答数据后,向非接触卡发送调速设置指令,判断是否接收到非接触卡返回的调速设置成功应答数据,是则执行步骤103,否则执行步骤104;
在本实施例中,读卡器向非接触卡发送调速设置命令之前,还包括:
步骤A1:读卡器向非接触卡发送调速查询指令,判断是否接收到非接触卡返回的调速查询应答数据,是则执行步骤A2,否则非接触卡不支持高速数据通讯,执行步骤104;
步骤A2:读卡器根据调速查询应答数据,判断非接触卡通过调速后是否支持预设速率及其以上的通讯速率,是则向非接触卡发送调速设置指令,否则非接触卡不支持高速数据通讯,执行步骤104;
具体地,读卡器解析接收到的调速查询应答数据,判断预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率,是则非接触卡不支持高速数据通讯,执行步骤104,否则向非接触卡发送调速设置指令;
进一步地,在本实施例中,步骤A2之后,还包括:
步骤B:读卡器判断非接触卡通过调速后支持的最高速率是否大于读卡器支持的最高速率,是则将读卡器支持的最高速率作为协商通讯速率,向非接触卡发送调速设置指令,否则将非接触卡支持的最高速率作为协商通讯速率,向非接触卡发送调速设置指令;
在本实施例中,步骤B具体为:
步骤B-1:读卡器判断非接触卡通过调速后支持的最高发送速率是否大于读卡器支持的最高接收速率,是则将读卡器支持的最高接收速率作为协商接收速率,执行步骤B-2,否则将非接触卡支持的最高发送速率作为协商接收速率,执行步骤B-2;
步骤B-2:读卡器判断非接触卡通过调速后支持的最高接收速率是否大于读卡器支持的最高发送速率,是则将读卡器支持的最高发送速率作为协商发送速率,向非接触卡发送调速设置指令,否则将非接触卡支持的最高接收速率作为协商发送速率,向非接触卡发送调速设置指令。
步骤103:读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给非接触卡,以第二通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤105;
具体地,读卡器设置其通讯速率为以协商发送速率将接收到的第一命令发送给非接触卡,以协商接收速率接收非接触卡返回的操作结果;
在本实施例中,第一通讯速率可以等于第二通讯速率,第一通讯速率也可以不等于第二通讯速率。
步骤104:读卡器设置其通讯速率为以第三通讯速率将接收到的第一命令发送给非接触卡,以第四通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤105;
在本实施例中,第一通讯速率大于第三通讯速率,第二通讯速率大于第四通讯速率;
步骤105:读卡器等待并接收上位机发送的命令,当接收到第一命令时,根据第一命令对非接触卡进行操作得到操作结果,并将操作结果发送给上位机,返回步骤101。
在本实施例中,步骤105之前,还包括:读卡器判断第一接收标识是否有效,是则根据第一命令对非接触卡进行操作得到操作结果,并将所述操作结果发送给上位机,返回步骤101,否则执行步骤105;
在本实施例中,步骤105中,当读卡器接收到第一命令时,还包括:读卡器设置第一接收标识为有效;
进一步地,在本实施例中,当步骤102判断为是时,步骤105中,读卡器根据第一命令对非接触卡进行操作得到操作结果之前,还包括:读卡器判断当前操作的非接触卡是否为第一类卡,是则按照第二类卡模式修改非接触读卡芯片的参数之后,根据第一命令对非接触卡进行操作得到操作结果,否则根据第一命令对非接触卡进行操作得到操作结果;
优选的,在本实施例中,第一类卡为TYPE A卡,第二类卡为TYPE B卡;
在本实施例中,还包括:
步骤K1:读卡器判断第二到位标识是否有效,是则发送接触卡到位信息给上位机,执行步骤K2,否则返回步骤K1;
步骤K2:读卡器等待并接收上位机发送的命令,当接收到第二命令时,根据第二命令对接触卡进行操作得到操作结果,并将操作结果发送给上位机,返回步骤K1。
在本实施例中,第二命令为接触卡处理CCID命令。
实施例二
本发明实施例二提供了一种支持高速率数据通讯的读卡器的工作方法中进行非接触卡操作的实现过程,如图2所示,包括:
步骤201:读卡器判断第一到位标识是否有效,是则执行步骤233,否则执行步骤202;
在本实施例中,步骤201之前,还包括:读卡器进行初始化;
具体地,读卡器初始化第一到位标识为无效,初始化第一接收标识为无效,初始化计时器的计时值,初始化非接触读卡芯片。
步骤202:读卡器判断计时器的计时值是否到达询卡计时点,是则执行步骤203,否则继续执行步骤202;
步骤203:读卡器设置询卡计时点为计时器的计时值加预设值;
例如:读卡器设置询卡计时点为计时器的计时值加100。
步骤204:读卡器判断本次发送的询卡命令是否为TYPE A卡询卡指令,是则执行步骤213,否则执行步骤205;
步骤205:读卡器设置询卡标识为TYPE A卡;
在本实施例中,TYPE A卡询卡模式与TYPE B卡询卡模式交替进行,本次如是TYPEB卡询卡模式,则下次为TYPE A卡询卡模式。
步骤206:读卡器按照TYPE B卡模式设置非接触读卡芯片的参数;
在本实施例中,本次是TYPE B卡询卡模式,对应读卡器的工作模式为TYPE B卡模式;
具体地,读卡器按照TYPE B卡模式设置读卡器中的非接触读卡芯片的参数包括:当前模式、双向通讯速率、调制深度、等待接收信息的延时时间、等待应答的超时时间;
优选的,读卡器设置当前模式为TYPE B卡模式,设置双向通讯速率为106kbps,设置调制深度为10%,设置等待接收信息的延时时间为10秒、设置等待应答的超时时间为21186秒。
步骤207:读卡器在非接场中发送TYPE B卡询卡指令并进行基于时间间隙的防冲突及选择操作;
在本实施例中,读卡器向非接触卡发送的指令及读卡器接收到的非接触卡返回的指令应答,均由十六进制表示;
进一步地,在本实施例中,TYPE B卡询卡指令中,最后两个字节上的数据为14443-4层TYPE B卡的校验码,在本实施例中,以下TYPE B卡相关的两个字节的校验码均由CRC-B表示;
具体地,读卡器在非接场中发送的TYPE B卡询卡指令为:05 00 00 00+CRC-B。
步骤208:读卡器判断是否接收到非接触卡返回的TYPE B卡询卡应答数据,是则执行步骤209,否则返回步骤202;
在本实例中,非接触卡返回的TYPE B卡询卡应答数据中,第2个字节至第5个字节上的数据为卡唯一标识,第10个字节至第12个字节上的数据为协议数据,最后两个字节上的数据为14443-4层TYPE B卡的校验码;
优选的,在本实施例中,读卡器接收到非接触卡返回的TYPE B卡询卡应答数据,接收到的TYPE B卡询卡应答数据具体为:
50 23 45 67 89 00 00 00 00 00 81 A1+CRC-B;
在上述TYPE B卡询卡应答数据中,23 45 67 89为卡唯一标识,00 81 A1为协议数据。
步骤209:读卡器记录非接触卡的信息;
在本实施例中,读卡器根据非接触卡返回的询卡应答数据记录非接触卡的信息;
具体地,读卡器记录非接触卡的信息包括:记录非接触卡支持的通讯速率、记录非接触卡支持的最大帧长度、记录非接触卡的帧等待时间整数、记录非接触卡到读卡器的帧延迟时间;
在本实施例中,读卡器根据上述接收到的非接触卡返回的TYPE B卡询卡应答数据,记录非接触卡的信息为:非接触卡支持双向通讯速率106kbps,非接触卡支持的最大帧长度为256个字节,非接触卡的帧等待时间整数为0Ah,非接触卡到读卡器的帧延迟时间为0秒。
步骤210:读卡器判断非接触卡是否支持14443-4层协议,是则执行步骤211,否则返回步骤202;
在本实施例中,读卡器判断非接触卡是否支持14443-4层协议具体为:读卡器解析非接触卡返回的TYPE B卡询卡应答数据,判断其协议数据中第二个字节的最低位是否为1,如果是,则确认非接触卡支持14443-4层协议,否则,确认非接触卡不支持14443-4层协议;
在本实施例中,读卡器解析上述接收到的非接触卡返回的TYPE B卡询卡应答数据,其中协议数据0081A1的第二个字节81的最低位为1,则确认该非接触卡支持14443-4层协议。
步骤211:读卡器向非接触卡发送TYPE B卡选择指令;
在本实施例中,TYPE B卡选择指令中,第2个字节至第5个字节上的数据为卡唯一标识,最后两个字节上的数据为14443-4层TYPE B卡的校验码;
在本实施例中,读卡器向非接触卡发送的TYPE B卡选择指令具体为:
1D 23 45 67 89 00 0C 01 00+CRC-B。
步骤212:读卡器判断是否接收到非接触卡返回的TYPE B卡选择指令应答数据,是则执行步骤222,否则返回步骤202;
在本实施例中,当步骤212判断为是时,执行步骤222之前,还包括:读卡器解析接收到的非接触卡返回的TYPE B卡选择指令应答数据,当接收到的应答数据的第一个字节为0时,表示非接触卡进入14443-4层成功,执行步骤222,否则表示非接触卡进入14443-4层失败,返回步骤202。
步骤213:读卡器设置询卡标识为TYPE B卡;
具体地,TYPE A卡询卡模式与TYPE B卡询卡模式交替进行,本次如是TYPE A卡询卡模式,则下次为TYPE B卡询卡模式。
步骤214:读卡器按照TYPE A卡模式设置非接触读卡芯片的参数;
在本实施例中,TYPE A卡询卡模式对应读卡器的工作模式为TYPE A卡模式,读卡器按照TYPE A卡模式设置非接触读卡芯片的参数包括:当前模式、双向通讯速率、等待接收信息的延时时间、等待应答的超时时间;
优选的,读卡器设置当前模式为TYPE A卡模式,设置双向通讯速率为106kbps,设置等待接收信息的延时时间为10秒、设置等待应答的超时时间为21186秒。
步骤215:读卡器在非接场中发送TYPE A卡询卡指令;
在本实施例中,读卡器在非接场中发送的TYPE A卡询卡指令为:26。
步骤216:读卡器判断是否接收到非接触卡返回的TYPE A卡询卡应答数据,是则执行步骤217,否则返回步骤202;
在本实施例中,读卡器接收到的非接触卡返回的询卡应答数据可以为:
00,表示非接触卡的卡唯一标识的长度为4个字节;
01,表示非接触卡的卡唯一标识的长度为7个字节;
10,表示非接触卡的卡唯一标识的长度为10个字节;
11,表示保留将来使用;
优选的,在本实施例中,读卡器接收到的非接触卡返回的询卡应答数据为:
00。
步骤217:读卡器对非接触卡进行基于位的防冲突及选择操作;
在本实施例中,步骤217之前还包括:读卡器向非接触卡发送获取卡唯一标识指令,获取非接触卡的卡唯一标识;当读卡器接收到非接触卡返回的卡唯一标识时,执行步骤217;
在本实施例中,步骤217具体为:读卡器向该非接触卡发送TYPE A卡防冲突及选择指令;
进一步地,在本实施例中,TYPE A卡防冲突及选择指令中,第3个字节至第6个字节上的数据为卡唯一标识,最后两个字节为14443-4层TYPE A卡的校验码,在本实施例中,以下TYPE A卡相关的两个字节的校验码均由CRC-A表示;
具体地,在本实施例中,读卡器向非接触卡发送的获取卡唯一标识指令为:9320;
优选地,读卡器接收到非接触卡返回的卡唯一标识为:12345678;
读卡器向非接触卡发送的TYPE A卡防冲突及选择指令为:937012345678+CRC-A。
步骤218:读卡器判断防冲突及选择操作是否成功,是则执行步骤219,否则返回步骤202;
具体地,读卡器判断是否接收到非接触卡返回的TYPE A卡防冲突及选择指令应答数据,是则表示防冲突及选择操作成功,否则表示防冲突及选择操作失败;
在本实施例中,TYPE A卡防冲突及选择指令应答数据中最后两个字节上的数据为14443-4层TYPE A卡的校验码;
优选的,在本实施例中,读卡器接收到非接触卡返回的TYPE A卡防冲突及选择指令应答数据,接收到的TYPE A卡防冲突及选择指令应答数据具体为:00+CRC-A。
步骤219:读卡器判断非接触卡是否支持14443-4层协议,是则执行步骤220,否则返回步骤202;
具体地,读卡器解析接收到的非接触卡返回的十六进制的TYPE A卡防冲突及选择指令应答数据,判断其第一个字节转换为十二进制表示时,其第六个字节上的数据是否为0,是则确认非接触卡支持14443-4层协议,否则确认非接触卡不支持14443-4层协议。
步骤220:读卡器向非接触卡发送TYPE A卡选择指令;
在本实施例中,TYPE A卡选择指令中,最后两个字节上的数据为14443-4层TYPE A卡的校验码,读卡器向非接触卡发送的TYPE A卡选择指令具体为:E0C0+CRC-A。
步骤221:读卡器判断是否接收到非接触卡返回的TYPE A卡选择指令应答数据,是则执行步骤222,否则返回步骤202;
具体地,读卡器判断是否接收到非接触卡返回的选择指令应答数据,是则表示非接触卡进入14443-4层成功,执行步骤222,否则表示非接触卡进入14443-4层失败,返回步骤202;
进一步地,在本实施例中,TYPE A卡选择指令应答数据中,第3个字节表示非接触卡支持的通讯速率;
优选的,在本实施例中,读卡器接收到非接触卡返回的TYPE A卡选择指令应答数据,其具体为:0F 78 00 AA 02 54 46 44 15 FF BC FF FF FF FF;
在上述TYPE A卡选择指令应答数据中,第3个字节上的数据00表示非接触卡支持双向通讯速率106kbps。
步骤222:读卡器向非接触卡发送S块调速查询指令;
优选的,在本实施例中,非接触卡为TYPE A卡,读卡器向非接触卡发送的S块调速查询指令为:F0 A0 02 A1 00'+CRC-A。
步骤223:读卡器判断是否接收到非接触卡返回的调速查询应答数据,是则执行步骤224,否则执行步骤230;
在本实施例中,调速查询应答数据中,第8个字节上的数据为卡支持的接收速率编码,第12个字节上的数据为卡支持的发送速率编码,最后两个字节上的数据为14443-4层TYPE A卡的校验码;
优选的,在本实施例中,读卡器接收到非接触卡返回的调速查询应答数据,接收到的调速查询应答数据具体为:F0 A0 0A A2 08 80 02 31 00 81 02 31 00'+CRC-A;
上述调速查询应答数据表示该非接触卡经过调速后可以双向支持1.6kbps、1.7Mbps、3.4Mbps的通讯速率,具体地,第8个字节上的数据31表示非接触卡经过调速后支持的接收速率为1.6kbps、1.7Mbps、3.4Mbps,第12个字节上的数据31表示非接触卡经过调速后支持的发送速率为1.6kbps、1.7Mbps、3.4Mbps。
步骤224:读卡器判断非接触卡通过调速后是否支持预设速率及其以上传输速率,是则执行步骤225,否则执行步骤230;
优选地,在本实施例中,预设速率为1.7Mbps;
步骤224具体为:读卡器解析非接触卡返回的速度查询应答数据,判断非接触卡通过调速后的接收速率和发送速率是否均支持1.7Mbps及其以上传输速率,是则执行步骤225,否则执行步骤230。
步骤225:读卡器向非接触卡发送S块调速设置指令;
在本实施例中,步骤225之前还包括:
步骤a1:读卡器判断非接触卡通过调速后支持的最高发送速率是否大于读卡器支持的最高接收速率,是则将读卡器支持的最高接收速率作为协商接收速率,执行步骤a2,否则将非接触卡支持的最高发送速率作为协商接收速率,执行步骤a2;
步骤a2:读卡器判断非接触卡通过调速后支持的最高接收速率是否大于读卡器支持的最高发送速率,是则将读卡器支持的最高发送速率作为协商发送速率,执行步骤225,否则将非接触卡支持的最高接收速率作为协商发送速率,执行步骤225;
在本实施例中,读卡器支持的发送速率范围是1.7Mbps至6.8Mbps,读卡器支持的接收速率范围是1.7Mbps至3.4Mbps;
在本实施例中,根据上述接收到的调速查询应答数据,将非接触卡支持的最高发送速率3.4Mbps为协商接收速率,将非接触卡支持的最高发送速率3.4Mbps作为协商发送速率,则要求非接触卡以双向3.4Mbps的速率进行数据通讯;
进一步地,在本实施例中,S块调速设置指令中,第8个字节上的数据为协商发送速率的速率编码,第12个字节上的数据为协商接收速率的速率编码,最后两个字节上的数据为14443-4层TYPE A卡的校验码;
在本实施例中,读卡器向非接触卡发送的S块调速设置指令具体为:F0 A0 0A A308 83 02 20 00 84 02 20 00’+CRC-A;
在上述S块调速设置指令中,第8个字节上的数据20表示协商发送速率为3.4Mbps,即非接触卡设置其接收速率为3.4Mbps,第12个字节上的数据20表示协商接收速率为3.4Mbps,即非接触卡设置其发送速率为3.4Mbps。
步骤226:读卡器判断是否接收到非接触卡返回的调速设置成功应答,是则执行步骤227,否则执行步骤230;
具体地,当读卡器接收到非接触卡返回的S块调速设置指令应答数据F0 A002 A400'+CRC-A时,表示设置成功,否则表示设置失败。
步骤227:读卡器判断当前操作的非接触卡是否为TYPE A卡,是则执行步骤228,否则执行步骤229;
具体地,读卡器判断读卡芯片的参数当前状态是否为TYPE A卡模式,是则当前操作的非接触卡是TYPE A卡,否则当前操作的非接触卡不是TYPE A卡;
优选的,在本实施例中,非接触卡为TYPE A卡。
步骤228:读卡器按照TYPE B卡模式修改非接触读卡芯片的参数;
在本实施例中,实现非接触卡与读卡器之间以1.7Mbps以上的高速通讯模式进行通讯,统一为TYPE B卡模式;
在本实施例中,读卡器按照TYPE B卡模式修改非接触读卡芯片的参数包括:当前模式、调制深度、等待接收信息的延时时间、等待应答的超时时间;
优选的,读卡器修改当前模式为YTPE B卡模式,设置调制深度为10%,修改等待接收信息的延时时间为10秒、修改等待应答的超时时间为21186秒。
步骤229:读卡器设置其通讯速率为以第一通讯速率将接收到的CCID命令发送给非接触卡,以第二通讯速率接收非接触卡返回的操作结果;
在本实施例中,第一通讯速率可以等于第二通讯速率,第一通讯速率也可以不等于第二通讯速率;
具体地,在本实施例中,读卡器设置其通讯速率为以3.4Mbps将接收到的CCID命令发送给非接触卡,以3.4Mbps接收非接触卡返回的操作结果。
步骤230:读卡器设置其通讯速率为以第三通讯速率将接收到的CCID命令发送给非接触卡,以第四通讯速率接收非接触卡返回的操作结果;
在本实施例中,第一通讯速率大于第三通讯速率,第二通讯速率大于第四通讯速率;
具体地,在本实施例中,读卡器设置其通讯速率为以106kbps率将接收到的CCID命令发送给非接触卡,以106kbps接收非接触卡返回的操作结果
步骤231:读卡器设置第一到位标识为有效,发送卡到位信息给上位机,设置检查卡在场时间点为计时器的计时值加预设值;
例如:读卡器设置检查卡在场时间点为计时器的计时值加100。
步骤232:读卡器等待并接收上位机发送的CCID命令,返回步骤201;
在本实施例中,当读卡器接收到上位机发送的CCID命令时,返回步骤201之前,还包括:读卡器设置第一接收标识为有效。
步骤233:读卡器判断第一接收标识是否有效,是则执行步骤234,否则执行步骤245;
步骤234:读卡器设置第一接收标识为无效;
步骤235:读卡器判断CCID命令类型,若为APDU命令则执行步骤236,若为下电命令则执行步骤243,若为上电命令则执行步骤244;
步骤236:读卡器提取APDU命令中的有效信息;
步骤237:读卡器将有效信息发送给非接触卡;
步骤238:读卡器判断是否收到非接触卡返回的APDU应答数据,是则执行步骤239,否则执行步骤241;
步骤239:读卡器将APDU应答数据中的有效信息取出组成CCID应答数据;
步骤240:读卡器发送CCID应答数据给上位机,返回步骤201;
步骤241:读卡器组织APDU错误应答数据;
步骤242:读卡器发送APDU错误应答数据给上位机,执行步骤249;
步骤243:读卡器组织下电应答数据并返回给上位机,返回步骤201;
步骤244:读卡器组织上电应答数据并返回给上位机,返回步骤201;
步骤245:读卡器判断计时器的计时值是否到非接触卡离开计时点,是则执行步骤246,否则返回步骤232;
步骤246:读卡器设置非接触卡在场计时点为计时器的计时值加预设值;
例如:读卡器设置非接触卡在场计时点为计时器的计时值加100。
步骤247:读卡器向非接触卡发送包含否定应答的R块;
具体地,读卡器向非接触卡发送包含否定应答的R块用来检测非接触卡是否离开,如果非接触卡没有离开,则非接触卡发送R块应答数据给读卡器。
步骤248:读卡器判断是否接收到非接触卡返回的R块应答数据,是则返回步骤232,否则执行步骤249;
步骤249:读卡器设置第一到位标识为无效,发送非接触卡离开信息给上位机,返回步骤202。
在本实施例中,当上位机是Linux操作系统时,步骤201之前,还可包括如下操作:
步骤F1:读卡器判断第一接收标识是否有效,是则执行步骤F2,否则执行步骤201;
步骤F2:读卡器判断接收到的CCID命令是否为获取非接触卡状态指令,是则执行步骤F3,否则执行步骤201;
步骤F3:读卡器设置第一接收标识为无效;
步骤F4:读卡器组织非接触卡状态信息返回给上位机,执行步骤201。
在本实施例中,非接触卡状态信息具体为卡是否到位。
实施例三
本发明实施例三提供了一种支持高速率数据通讯的读卡器的工作方法中进行接触卡操作的实现过程,如图3所示,包括:
步骤301:读卡器判断检测标识是否有效,是则执行步骤305,否则执行步骤302;
在本实施例中,步骤301之前,还包括:读卡器进行初始化;
具体地,读卡器初始化检测标识为无效,初始化第二到位标识为无效,初始化第二接收标识为无效;
进一步地,在本实施例中,步骤301之前还包括:读卡器检测接触卡是否插入卡槽,当检测到接触卡插入卡槽时,设置检测标识为有效。
步骤302:读卡器判断第二到位标识是否有效,是则执行步骤303,否则返回步骤301;
在本实施例中,第二到位标识有效表示接触卡插入卡槽并且到位;
具体地,当接触卡进入卡槽并且到位时,第二到位标识受到接触卡插入卡槽的机械力量,状态自动改变为有效。
步骤303:读卡器设置检测标识有效,发送接触卡到位信息给上位机;
步骤304:读卡器等待并接收上位机发送的CCID命令,返回步骤301;
在本实施例中,当读卡器接收到上位机发送的CCID命令时,返回步骤301之前,还包括:读卡器设置第二接收标识为有效。
步骤305:读卡器判断第二接收标识是否有效,是则执行步骤307,否则执行步骤306;
步骤306:读卡器判断第二到位标识是否有效,是则返回步骤304,否则执行步骤317;
步骤307:读卡器设置第二接收标识为无效;
步骤308:读卡器判断第二到位标识是否有效,是则执行步骤309,否则执行步骤317;
步骤309:读卡器判断CCID命令的类型,若为APDU命令则执行步骤310,若为下电命令则执行步骤318,若为上电命令则执行步骤319;
步骤310:读卡器提取APDU命令中的有效信息;
步骤311:读卡器将有效信息发送给接触卡;
步骤312:读卡器判断是否收到接触卡返回的APDU应答数据,是则执行步骤313,否则执行步骤315;
步骤313:读卡器将接收到的APDU应答数据组成CCID应答数据;
步骤314:读卡器发送CCID应答数据给上位机,返回步骤301;
步骤315:读卡器组织APDU错误应答数据;
步骤316:读卡器发送APDU错误应答数据给上位机;
步骤317:读卡器设置检测标识为无效,发送接触卡离开信息给上位机,返回步骤301;
步骤318:读卡器组织下电应答数据并返回给上位机,返回步骤301;
步骤319:读卡器组织上电应答数据并返回给上位机,返回步骤301。
在本实施例中,当上位机是Linux操作系统时,步骤301之前,还可包括如下操作:
步骤S1:读卡器判断第二接收标识是否有效,是则执行步骤S2,否则执行步骤301;
步骤S2:读卡器判断接收到的CCID命令是否为获取接触卡状态指令,是则执行步骤S3,否则执行步骤301;
步骤S3:读卡器设置第二接收标识为无效;
步骤S4:读卡器组织接触卡状态信息返回给上位机,执行步骤301。
在本实施例中,接触卡状态信息具体为卡是否到位。
实施例四
本发明实施例四提供一种支持高速数据通讯的读卡器,如图4所示,包括:
第一判断模块401,用于判断第一到位标识是否有效;
发送模块402,用于当第一判断模块401判断出第一到位标识有效时,发送非接触卡到位信息给上位机;
询卡模块403,用于当第一判断模块401判断出第一到位标识无效时,在非接场中发送询卡指令;
接收模块404,用于当询卡模块403在非接场中发送询卡指令之后,接收非接触卡返回的询卡应答数据;
调速模块405,用于当接收模块404接收到非接触卡返回的询卡应答数据时,向非接触卡发送调速设置指令;
在本实施例中,接收模块404,还用于当调速模块405向非接触卡发送调速设置指令之后,接收非接触卡返回的调速设置成功应答数据;
第二判断模块406,用于判断接收模块404是否接收到非接触卡返回的调速设置成功应答数据;
设置模块407,用于当第二判断模块406判断出接收模块接收到非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给非接触卡,以第二通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效;用于当第二判断模块406判断出接收模块未接收到非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给非接触卡,以第四通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效;第一通讯速率大于第三通讯速率,第二通讯速率大于第四通讯速率;
在本实施例中,发送模块402,还用于当设置模块407设置第一到位标识为有效时,发送卡到位信息给上位机;
在本实施例中,接收模块404,还用于当发送模块402发送非接触卡到位信息给上位机之后,等待并接收上位机发送的命令;
第一处理模块408,用于当接收模块404接收到第一命令时,根据第一命令对非接触卡进行操作得到操作结果;
在本实施例中,发送模块402,还用于将第一处理模块408得到的操作结果发送给上位机。
本实施例的读卡器,还包括:
第一初始化模块,用于初始化第一到位标识为无效;
第三判断模块,用于当接收模块404接收到第一命令时,判断第一到位标识是否有效;
在本实施例中,第一处理模块408,具体用于当第三判断模块判断出第一到位标识有效时,根据第一命令对非接触卡进行操作得到操作结果;
在本实施例中,发送模块402,还用于当第三判断模块判断出第一到位标识无效时,发送非接触卡离开信息给上位机,触发第一判断模块401。
本实施例的读卡器,还包括:
第二初始化模块,用于初始化第一接收标识为无效;
第四判断模块,用于判断第一接收标识是否有效;
在本实施例中,接收模块404,具体用于当第四判断模块判断出第一接收标识无效时,等待并接收上位机发送的命令;
在本实施例中,第一处理模块408,还用于当第四判断模块判断出第一接收标识有效时,根据第一命令对非接触卡进行操作得到操作结果;
所述设置模块,还用于当所述接收模块接收到所述第一命令时,设置所述第一接收标识为有效。
本实施例的读卡器,还包括:
第五判断模块,用于判断第一接收标识是否有效;
第六判断模块,用于当第五判断模块判断出第一接收标识有效时,判断第一命令是否为获取非接触卡状态指令;
在本实施例中,设置模块407,还用于当第六判断模块判断出第一命令是获取非接触卡状态指令时,设置第一接收标识为无效;
进一步地,发送模块402,还用于组织所述非接触卡状态信息发送给所述上位机,触发第一判断模块401;
在本实施例中,第一判断模块401,具体用于当第五判断模块判断出第一接收标识无效时,判断第一到位标识是否有效;还用于当第六判断模块判断出第一命令不是获取非接触卡状态指令时,判断第一到位标识是否有效。
本实施例的读卡器,还包括:
第七判断模块,用于当第二判断模块406判断出非接触卡支持高速数据通讯时,第一处理模块408根据第一命令对非接触卡进行操作得到操作结果之前,判断当前操作的非接触卡是否为第一类卡;
在本实施例中,设置模块407,还用于当第七判断模块判断出当前操作的非接触卡是第一类卡时,按照第二类卡模式修改非接触读卡芯片的参数,触发第一处理模块601;
在本实施例中,第一处理模块408,还用于当第七判断模块判断出当前操作的非接触卡不是第一类卡时,根据第一命令对非接触卡进行操作得到操作结果。
在本实施例中,调速模块405,包括:
发送单元,用于向非接触卡发送调速设置指令之前,发送调速查询指令;
接收单元,用于接收非接触卡返回的调速查询应答数据;
第一判断单元,用于判断接收单元是否接收到非接触卡返回的调速查询应答数据;
第二判断单元,用于当第一判断单元判断出接收单元接收到非接触卡返回的调速查询应答数据时,判断非接触卡通过调速后是否支持预设速率及其以上的通讯速率;
在本实施例中,发送单元,还用于当第二判断单元判断出非接触卡通过调速后支持预设速率及其以上的通讯速率时,向非接触卡发送调速设置指令;
在本实施例中,设置模块407,具体用于当第一判断单元判断出接收单元未接收到非接触卡返回的调速查询应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给非接触卡,以第四通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效;还用于当第二判断单元判断出非接触卡通过调速后不支持预设速率及其以上的通讯速率时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收非接触卡返回的操作结果,设置第一到位标识为有效。
进一步地,在本实施例中,第二判断单元,具体用于解析接收到的调速查询应答数据,判断预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率。
在本实施例中,调速模块405,还包括:
第三判断单元,用于判断非接触卡通过调速后支持的最高速率是否大于所述读卡器支持的最高速率,是则将读卡器支持的最高速率作为协商通讯速率,触发发送单元,否则将非接触卡支持的最高速率作为协商通讯速率,触发发送单元。
在本实施例中,第三判断单元,包括:
第一判断子单元,用于判断非接触卡通过调速后支持的最高发送速率是否大于读卡器支持的最高接收速率;
作为子单元,用于当第一判断子单元判断出非接触卡通过调速后支持的最高发送速率大于读卡器支持的最高接收速率时,将读卡器支持的最高接收速率作为协商接收速率,触发第二判断子单元;用于当第一判断子单元判断出非接触卡通过调速后支持的最高发送速率不大于读卡器支持的最高接收速率时,将非接触卡支持的最高发送速率作为协商接收速率,触发第二判断子单元;
在本实施例中,第二判断子单元,用于判断非接触卡通过调速后支持的最高接收速率是否大于读卡器支持的最高发送速率;
在本实施例中,作为子单元,还用于当第二判断子单元判断出判断非接触卡通过调速后支持的最高接收速率大于读卡器支持的最高发送速率时,将非接触卡支持的最高接受速率作为协商发送速率,触发发送单元;还用于当第二判断子单元判断出非接触卡通过调速后支持的最高接收速率不大于读卡器支持的最高发送速率时,将非接触卡支持的最高接收速率作为协商发送速率,触发发送单元。
进一步地,设置模块407中,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给非接触卡,以第二通讯速率接收非接触卡返回的操作结果,具体用于设置其通讯速率为以协商发送速率将接收到的第一命令发送给非接触卡,以协商接收速率接收非接触卡返回的操作结果。
本实施例的读卡器,还包括:
第八判断模块,用于判断第二到位标识是否有效;
在本实施例中,发送模块402,还用于当第八判断模块判断出第二到位标识有效时,发送接触卡到位信息给上位机;
在本实施例中,第八判断模块,还用于当第八判断模块判断出第二到位标识无效时,继续判断第二到位标识是否有效;
第二处理模块,用于当接收模块接收到第二命令时,根据第二命令对接触卡进行操作得到操作结果;
在本实施例中,发送模块402,还用于将第二处理模块得到的操作结果发送给上位机,触发第八判断模块。
本实施例的读卡器,还包括:
第三初始化模块,用于初始化第二到位标识为无效,初始化第二接收标识为无效;
第九判断模块,用于第二处理模块根据第二命令对所述接触卡进行操作得到操作结果之前,判断第二到位标识是否有效;
在本实施例中,发送模块402,还用于当第九判断模块判断出第二到位标识无效时,发送接触卡离开信息给所述上位机,触发第八判断模块;
进一步地,第二处理模块,具体用于当第九判断模块判断出第二到位标识有效时,根据第二命令对接触卡进行操作得到操作结果;
在本实施例中,设置模块407,还用于当接收模块接收到第二命令时,设置第二接收标识为有效。
本市实施例的读卡器,还包括:
第十判断模块,用于判断第二接收标识是否有效;
在本实施例中,第八判断模块,具体用于当第十判断模块判断出第二接收标识无效时,判断第二到位标识是否有效;
第十一判断模块,用于当第十判断模块判断出第二接收标识有效时,判断第二命令是否为获取接触卡状态指令;
在本实施例中,设置模块407,还用于当第十一判断模块判断出第二命令是获取接触卡状态指令时,设置第二接收标识为无效;
在本实施例中,发送模块402,还用于组织接触卡状态信息发送给上位机,触发第八判断模块;
在本实施例中,第九判断模块,具体用于当第十一判断模块判断出第二命令不是获取接触卡状态指令时,判断第二到位标识是否有效。
通过本发明的技术方案,可以通过提高非接触读卡器与非接触卡之间的通讯速率,来缩短非接触读卡器与非接触卡的交互时间,从而提升用户体验。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (26)
1.一种支持高速数据通讯的读卡器的工作方法,其特征在于,包括:
步骤S1:所述读卡器判断第一到位标识是否有效,是则发送非接触卡到位信息给上位机,执行步骤S5,否则执行步骤S2;
步骤S2:所述读卡器在非接场中发送询卡指令,并在接收到非接触卡返回的询卡应答数据后,向所述非接触卡发送调速设置指令,判断是否接收到所述非接触卡返回的调速设置成功应答数据,是则执行步骤S3,否则执行步骤S4;
步骤S3:所述读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤S5;
步骤S4:所述读卡器设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效,发送卡到位信息给上位机,执行步骤S5,所述第一通讯速率大于所述第三通讯速率,所述第二通讯速率大于所述第四通讯速率;
步骤S5:所述读卡器等待并接收上位机发送的命令,当接收到第一命令时,根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1。
2.根据权利要求1所述的方法,其特征在于,
所述步骤S1之前,还包括:所述读卡器初始化第一到位标识为无效;
所述步骤S5中,所述读卡器等待并接收上位机发送的命令,当接收到第一命令之后,还包括:所述读卡器判断所述第一到位标识是否有效,是则根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1,否则发送非接触卡离开信息给所述上位机,返回步骤S1。
3.根据权利要求1所述的方法,其特征在于,
所述步骤S1之前,还包括:所述读卡器初始化第一接收标识为无效;
所述步骤S5之前,还包括:所述读卡器判断所述第一接收标识是否有效,是则根据所述第一命令对所述非接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤S1,否则执行步骤S5;
所述步骤S5中,当所述读卡器接收到所述第一命令时,还包括:所述读卡器设置所述第一接收标识为有效。
4.根据权利要求3所述的方法,其特征在于,所述步骤S1之前,还包括:
步骤A1:所述读卡器判断所述第一接收标识是否有效,是则执行步骤A2,否则执行步骤S1;
步骤A2:所述读卡器判断所述第一命令是否为获取非接触卡状态指令,是则执行步骤A3,否则执行步骤S1;
步骤A3:所述读卡器设置所述第一接收标识为无效,组织所述非接触卡状态信息发送给所述上位机,执行步骤S1。
5.根据权利要求1所述的方法,其特征在于,当所述步骤S2判断为是时,所述步骤S5中,所述读卡器根据所述第一命令对所述非接触卡进行操作得到操作结果之前,还包括:
所述读卡器判断当前操作的非接触卡是否为第一类卡,是则按照第二类卡模式修改非接触读卡芯片的参数,根据所述第一命令对所述非接触卡进行操作得到操作结果,否则根据所述第一命令对所述非接触卡进行操作得到操作结果。
6.根据权利要求1所述的方法,其特征在于,所述步骤S2中,所述读卡器向所述非接触卡发送调速设置指令之前,还包括:
步骤A1:所述读卡器向所述非接触卡发送调速查询指令,判断是否接收到所述非接触卡返回的调速查询应答数据,是则执行步骤A2,否则所述非接触卡不支持高速数据通讯,执行步骤S4;
步骤A2:所述读卡器根据所述调速查询应答数据,判断所述非接触卡通过调速后是否支持预设速率及其以上的通讯速率,是则向所述非接触卡发送调速设置指令,否则所述非接触卡不支持高速数据通讯,执行步骤S4。
7.根据权利要求6所述的方法,其特征在于,所述步骤A2,具体为:所述读卡器解析接收到的所述调速查询应答数据,判断所述预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率,是则所述非接触卡不支持高速数据通讯,执行步骤S4,否则向所述非接触卡发送调速设置指令。
8.根据权利要求7所述的方法,其特征在于,所述步骤A2之后,还包括:
步骤B:所述读卡器判断所述非接触卡通过调速后支持的最高速率是否大于所述读卡器支持的最高速率,是则将所述读卡器支持的最高速率作为协商通讯速率,向所述非接触卡发送调速设置指令,否则将所述非接触卡支持的最高速率作为协商通讯速率,向所述非接触卡发送调速设置指令。
9.根据权利要求8所述的方法,其特征在于,所述步骤B具体为:
步骤B-1:所述读卡器判断所述非接触卡通过调速后支持的最高发送速率是否大于所述读卡器支持的最高接收速率,是则将所述读卡器支持的最高接收速率作为协商接收速率,执行步骤B-2,否则将所述非接触卡支持的最高发送速率作为协商接收速率,执行步骤B-2;
步骤B-2:所述读卡器判断所述非接触卡通过调速后支持的最高接收速率是否大于所述读卡器支持的最高发送速率,是则将所述读卡器支持的最高发送速率作为协商发送速率,向所述非接触卡发送调速设置指令,否则将所述非接触卡支持的最高接收速率作为协商发送速率,向所述非接触卡发送调速设置指令。
10.根据权利要求9所述的方法,其特征在于,所述步骤S4中,所述读卡器设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,具体为:所述读卡器设置其通讯速率为以协商发送速率将接收到的第一命令发送给所述非接触卡,以协商接收速率接收所述非接触卡返回的操作结果。
11.根据权利要求1所述的方法,其特征在于,还包括:
步骤K1:所述读卡器判断第二到位标识是否有效,是则发送接触卡到位信息给上位机,执行步骤K2,否则返回步骤K1;
步骤K2:所述读卡器等待并接收上位机发送的命令,当接收到第二命令时,根据所述第二命令对所述接触卡进行操作得到操作结果,并将所述操作结果发送给所述上位机,返回步骤K1。
12.根据权利要求11所述的方法,其特征在于,所述步骤K1之前,还包括:所述读卡器初始化第二到位标识为无效,初始化第二接收标识为无效;
所述步骤K2中,根据所述第二命令对所述接触卡进行操作得到操作结果之前,还包括:
步骤C:所述读卡器判断所述第二到位标识是否有效,是则根据所述第二命令对所述接触卡进行操作得到操作结果,否则发送接触卡离开信息给上位机,返回步骤K1;
所述步骤K2中,当读卡器接收到第二命令时,还包括:所述读卡器设置所述第二接收标识为有效。
13.根据权利要求12所述的方法,其特征在于,所述步骤K1之前还包括:
步骤D1:所述读卡器判断所述第二接收标识是否有效,是则执行步骤D2,否则执行所述步骤K1;
步骤D2:所述读卡器判断所述第二命令是否为获取接触卡状态指令,是则设置所述第二接收标识为无效,组织接触卡状态信息发送给所述上位机,执行步骤K1,否则执行所述步骤C。
14.一种支持高速数据通讯的读卡器,其特征在于,包括:
第一判断模块,用于判断第一到位标识是否有效;
发送模块,用于当所述第一判断模块判断出第一到位标识有效时,发送非接触卡到位信息给上位机;
询卡模块,用于当所述第一判断模块判断出第一到位标识无效时,在非接场中发送询卡指令;
接收模块,用于当所述询卡模块在非接场中发送询卡指令之后,接收非接触卡返回的询卡应答数据;
调速模块,用于当所述接收模块接收到非接触卡返回的询卡应答数据时,向所述非接触卡发送调速设置指令;
所述接收模块,还用于当所述调速模块向所述非接触卡发送调速设置指令之后,接收所述非接触卡返回的调速设置成功应答数据;
第二判断模块,用于判断所述接收模块是否接收到所述非接触卡返回的调速设置成功应答数据;
设置模块,用于当所述第二判断模块判断出所述接收模块接收到所述非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;用于当所述第二判断模块判断出所述接收模块未接收到所述非接触卡返回的调速设置成功应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;所述第一通讯速率大于所述第三通讯速率,所述第二通讯速率大于所述第四通讯速率;
所述发送模块,还用于当所述设置模块设置第一到位标识为有效时,发送卡到位信息给上位机;
所述接收模块,还用于当所述发送模块发送非接触卡到位信息给上位机之后,等待并接收上位机发送的命令;
第一处理模块,用于当所述接收模块接收到第一命令时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述发送模块,还用于将所述第一处理模块得到的操作结果发送给所述上位机。
15.根据权利要求14所述的读卡器,其特征在于,还包括:
第一初始化模块,用于初始化第一到位标识为无效;
第三判断模块,用于当所述接收模块接收到第一命令时,判断所述第一到位标识是否有效;
所述第一处理模块,具体用于当所述第三判断模块判断出所述第一到位标识有效时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述发送模块,还用于当所述第三判断模块判断出所述第一到位标识无效时,发送非接触卡离开信息给上位机,触发所述第一判断模块。
16.根据权利要求14所述的读卡器,其特征在于,还包括:
第二初始化模块,用于初始化第一接收标识为无效;
第四判断模块,用于判断所述第一接收标识是否有效;
所述接收模块,具体用于当所述第四判断模块判断出所述第一接收标识无效时,等待并接收上位机发送的命令;
所述第一处理模块,还用于当所述第四判断模块判断出所述第一接收标识有效时,根据所述第一命令对所述非接触卡进行操作得到操作结果;
所述设置模块,还用于当所述接收模块接收到所述第一命令时,设置所述第一接收标识为有效。
17.根据权利要求16所述的读卡器,其特征在于,还包括:
第五判断模块,用于判断所述第一接收标识是否有效;
第六判断模块,用于当所述第五判断模块判断出所述第一接收标识有效时,判断所述第一命令是否为获取非接触卡状态指令;
所述设置模块,还用于当所述第六判断模块判断出所述第一命令是获取非接触卡状态指令时,设置所述第一接收标识为无效;
所述发送模块,还用于组织所述非接触卡状态信息发送给所述上位机,触发所述第一判断模块;
所述第一判断模块,具体用于当所述第五判断模块判断出所述第一接收标识无效时,判断第一到位标识是否有效;还用于当所述第六判断模块判断出所述第一命令不是获取非接触卡状态指令时,判断第一到位标识是否有效。
18.根据权利要求14所述的读卡器,其特征在于,还包括:
第七判断模块,用于当所述第二判断模块判断出非接触卡支持高速数据通讯时,所述第一处理模块根据所述第一命令对所述非接触卡进行操作得到操作结果之前,判断当前操作的非接触卡是否为第一类卡;
所述设置模块,还用于当所述第七判断模块判断出当前操作的非接触卡是第一类卡时,按照第二类卡模式修改非接触读卡芯片的参数,触发所述第一处理模块;
所述第一处理模块,还用于当所述第七判断模块判断出当前操作的非接触卡不是第一类卡时,根据所述第一命令对所述非接触卡进行操作得到操作结果。
19.根据权利要求14所述的读卡器,其特征在于,所述调速模块,包括:
发送单元,用于向所述非接触卡发送调速设置指令之前,发送调速查询指令;
接收单元,用于接收所述非接触卡返回的调速查询应答数据;
第一判断单元,用于判断所述接收单元是否接收到所述非接触卡返回的调速查询应答数据;
第二判断单元,用于当所述第一判断单元判断出所述接收单元接收到所述非接触卡返回的调速查询应答数据时,判断所述非接触卡通过调速后是否支持预设速率及其以上的通讯速率;
所述发送单元,还用于当所述第二判断单元判断出所述非接触卡通过调速后支持预设速率及其以上的通讯速率时,向所述非接触卡发送调速设置指令;
所述设置模块,具体用于当所述第一判断单元判断出所述接收单元未接收到所述非接触卡返回的调速查询应答数据时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效;还用于当所述第二判断单元判断出所述非接触卡通过调速后不支持预设速率及其以上的通讯速率时,设置其通讯速率为以第三通讯速率将接收到的第一命令发送给所述非接触卡,以第四通讯速率接收所述非接触卡返回的操作结果,设置第一到位标识为有效。
20.根据权利要求19所述的读卡器,其特征在于,所述第二判断单元,具体用于解析接收到的所述调速查询应答数据,判断所述预设速率是否大于所述非接触卡通过调速后支持的发送速率和接收速率。
21.根据权利要求20所述的读卡器,其特征在于,所述调速模块,还包括:
第三判断单元,用于判断所述非接触卡通过调速后支持的最高速率是否大于所述读卡器支持的最高速率,是则将所述读卡器支持的最高速率作为协商通讯速率,触发所述发送单元,否则将所述非接触卡支持的最高速率作为协商通讯速率,触发所述发送单元。
22.根据权利要求21所述的读卡器,其特征在于,所述第三判断单元,包括:
第一判断子单元,用于判断所述非接触卡通过调速后支持的最高发送速率是否大于所述读卡器支持的最高接收速率;
作为子单元,用于当所述第一判断子单元判断出所述非接触卡通过调速后支持的最高发送速率大于所述读卡器支持的最高接收速率时,将所述读卡器支持的最高接收速率作为协商接收速率,触发第二判断子单元;用于当所述第一判断子单元判断出所述非接触卡通过调速后支持的最高发送速率不大于所述读卡器支持的最高接收速率时,将所述非接触卡支持的最高发送速率作为协商接收速率,触发第二判断子单元;
所述第二判断子单元,用于判断所述非接触卡通过调速后支持的最高接收速率是否大于所述读卡器支持的最高发送速率;
所述作为子单元,还用于当所述第二判断子单元判断出判断所述非接触卡通过调速后支持的最高接收速率大于所述读卡器支持的最高发送速率时,将所述非接触卡支持的最高接受速率作为协商发送速率,触发所述发送单元;还用于当所述第二判断子单元判断出所述非接触卡通过调速后支持的最高接收速率不大于所述读卡器支持的最高发送速率时,将所述非接触卡支持的最高接收速率作为协商发送速率,触发所述发送单元。
23.根据权利要求22所述的读卡器,其特征在于,所述设置模块中,设置其通讯速率为以第一通讯速率将接收到的第一命令发送给所述非接触卡,以第二通讯速率接收所述非接触卡返回的操作结果,具体用于设置其通讯速率为以协商发送速率将接收到的第一命令发送给所述非接触卡,以协商接收速率接收所述非接触卡返回的操作结果。
24.根据权利要求14所述的读卡器,其特征在于,还包括:
第八判断模块,用于判断第二到位标识是否有效;
所述发送模块,还用于当所述第八判断模块判断出第二到位标识有效时,发送接触卡到位信息给上位机;
所述第八判断模块,还用于当所述第八判断模块判断出第二到位标识无效时,继续判断第二到位标识是否有效;
第二处理模块,用于当所述接收模块接收到第二命令时,根据所述第二命令对所述接触卡进行操作得到操作结果;
所述发送模块,还用于将所述第二处理模块得到的操作结果发送给所述上位机,触发所述第八判断模块。
25.根据权利要求24所述的读卡器,其特征在于,还包括:
第三初始化模块,用于初始化第二到位标识为无效,初始化第二接收标识为无效;
第九判断模块,用于所述第二处理模块根据所述第二命令对所述接触卡进行操作得到操作结果之前,判断所述第二到位标识是否有效;
所述发送模块,还用于当所述第九判断模块判断出所述第二到位标识无效时,发送接触卡离开信息给所述上位机,触发所述第八判断模块;
所述第二处理模块,具体用于当所述第九判断模块判断出所述第二到位标识有效时,根据所述第二命令对所述接触卡进行操作得到操作结果;
所述设置模块,还用于当所述接收模块接收到第二命令时,设置所述第二接收标识为有效。
26.根据权利要求25所述的读卡器,其特征在于,还包括:
第十判断模块,用于判断所述第二接收标识是否有效;
所述第八判断模块,具体用于当所述第十判断模块判断出所述第二接收标识无效时,判断第二到位标识是否有效;
第十一判断模块,用于当所述第十判断模块判断出所述第二接收标识有效时,判断所述第二命令是否为获取接触卡状态指令;
所述设置模块,还用于当所述第十一判断模块判断出所述第二命令是获取接触卡状态指令时,设置所述第二接收标识为无效;
所述发送模块,还用于组织接触卡状态信息发送给所述上位机,触发所述第八判断模块;
所述第九判断模块,具体用于当所述第十一判断模块判断出所述第二命令不是获取接触卡状态指令时,判断第二到位标识是否有效。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610077395.4A CN105787408B (zh) | 2016-02-03 | 2016-02-03 | 一种支持高速数据通讯的读卡器及其工作方法 |
US16/070,323 US10402599B2 (en) | 2016-02-03 | 2017-01-25 | Card reader supporting high-speed data communication, and operating method thereof |
PCT/CN2017/072543 WO2017133603A1 (zh) | 2016-02-03 | 2017-01-25 | 一种支持高速数据通讯的读卡器及其工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610077395.4A CN105787408B (zh) | 2016-02-03 | 2016-02-03 | 一种支持高速数据通讯的读卡器及其工作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105787408A CN105787408A (zh) | 2016-07-20 |
CN105787408B true CN105787408B (zh) | 2018-04-03 |
Family
ID=56402503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610077395.4A Active CN105787408B (zh) | 2016-02-03 | 2016-02-03 | 一种支持高速数据通讯的读卡器及其工作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10402599B2 (zh) |
CN (1) | CN105787408B (zh) |
WO (1) | WO2017133603A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105787408B (zh) * | 2016-02-03 | 2018-04-03 | 飞天诚信科技股份有限公司 | 一种支持高速数据通讯的读卡器及其工作方法 |
CN106326797B (zh) * | 2016-08-19 | 2018-09-25 | 飞天诚信科技股份有限公司 | 一种非接触式卡片及其工作方法 |
CN107590881B (zh) * | 2017-08-04 | 2020-10-20 | 美智光电科技有限公司 | 一种锁具控制方法、锁具及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582112A (zh) * | 2009-03-31 | 2009-11-18 | 北京飞天诚信科技有限公司 | 一种智能卡转换设备及其使用方法 |
CN101650773A (zh) * | 2009-06-30 | 2010-02-17 | 北京飞天诚信科技有限公司 | 兼容智能卡的方法和读卡器 |
CN103021081A (zh) * | 2012-11-21 | 2013-04-03 | 江苏鸿信系统集成有限公司 | 实现多卡融合应用的非接触式ic卡与读卡终端之间进行通信交互的方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3597549A (en) * | 1969-07-17 | 1971-08-03 | Bell Telephone Labor Inc | High speed data communication system |
US4048476A (en) * | 1976-04-09 | 1977-09-13 | Ncr Corporation | Card reader |
JPH11134454A (ja) * | 1997-10-29 | 1999-05-21 | Matsushita Electric Ind Co Ltd | カードリーダ |
CN1326085C (zh) * | 1998-07-31 | 2007-07-11 | 松下电器产业株式会社 | Ic卡、终端装置和通信系统 |
JP2001184464A (ja) * | 1999-12-27 | 2001-07-06 | Sanyo Electric Co Ltd | データ再生装置 |
JP2002359833A (ja) * | 2001-03-27 | 2002-12-13 | Hitachi Ltd | データ通信システムおよび送信装置、通信端末 |
CN100468379C (zh) * | 2006-06-07 | 2009-03-11 | 普天信息技术研究院 | 一种提高存储卡传输速度的方法 |
KR100845525B1 (ko) * | 2006-08-07 | 2008-07-10 | 삼성전자주식회사 | 메모리 카드 시스템, 그것의 데이터 전송 방법, 그리고반도체 메모리 장치 |
JP5613894B2 (ja) * | 2008-08-11 | 2014-10-29 | 日本電産サンキョー株式会社 | 非接触icカードリーダ及びデータ読取方法 |
CN101354752B (zh) * | 2008-09-12 | 2013-01-30 | 普天信息技术研究院有限公司 | 一种智能卡模块传输信息的方法及系统 |
CN103186809B (zh) * | 2011-12-30 | 2016-06-01 | 国民技术股份有限公司 | 一种非接触式射频卡及其工作方法 |
US9286904B2 (en) * | 2012-03-06 | 2016-03-15 | Ati Technologies Ulc | Adjusting a data rate of a digital audio stream based on dynamically determined audio playback system capabilities |
CN103870859A (zh) * | 2014-03-11 | 2014-06-18 | 澳柯玛股份有限公司 | 一种提高读取rfid标签速度的方法 |
CN105787408B (zh) * | 2016-02-03 | 2018-04-03 | 飞天诚信科技股份有限公司 | 一种支持高速数据通讯的读卡器及其工作方法 |
-
2016
- 2016-02-03 CN CN201610077395.4A patent/CN105787408B/zh active Active
-
2017
- 2017-01-25 WO PCT/CN2017/072543 patent/WO2017133603A1/zh active Application Filing
- 2017-01-25 US US16/070,323 patent/US10402599B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582112A (zh) * | 2009-03-31 | 2009-11-18 | 北京飞天诚信科技有限公司 | 一种智能卡转换设备及其使用方法 |
CN101650773A (zh) * | 2009-06-30 | 2010-02-17 | 北京飞天诚信科技有限公司 | 兼容智能卡的方法和读卡器 |
CN103021081A (zh) * | 2012-11-21 | 2013-04-03 | 江苏鸿信系统集成有限公司 | 实现多卡融合应用的非接触式ic卡与读卡终端之间进行通信交互的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105787408A (zh) | 2016-07-20 |
WO2017133603A1 (zh) | 2017-08-10 |
US10402599B2 (en) | 2019-09-03 |
US20190026505A1 (en) | 2019-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105787408B (zh) | 一种支持高速数据通讯的读卡器及其工作方法 | |
CN103310175B (zh) | 一种基于标准ccid协议的多卡槽读卡器的工作方法 | |
US5155857A (en) | Communication processing system in which communication by terminals is controlled according to a terminal management table | |
CN105721295A (zh) | 一种云端服务器与plc ppi通信的网关 | |
CN101625670A (zh) | 一种串行总线设备、串行总线传输系统及方法 | |
CN106533872A (zh) | 用于提高fc‑ae‑1553总线传输效率的系统 | |
CN101673220B (zh) | 一种提高双界面sim卡工作并行度的方法 | |
CN106093659A (zh) | 智能卡断电保护测试装置、系统及方法 | |
CN112797861A (zh) | 电子雷管起爆装置 | |
CN105224483B (zh) | 数据传输方法、电子设备及通用串行总线设备 | |
CN105930754A (zh) | 一种ic卡读卡器及其接口扩展方法 | |
CN109085798A (zh) | 一种嵌入式系统g代码异步通讯机制、协议及编程方法 | |
CN109062834A (zh) | 基于dma的spi通讯方法、电子设备、存储介质、装置 | |
CN106126446A (zh) | 一种USB设备及其识别MacOS系统的方法 | |
CN102291337A (zh) | EtherCAT协议与Profibus-DP协议通信转换的网关及其通信方法 | |
CN109726605B (zh) | 一种eSIM智能卡及其工作方法 | |
US20110197203A1 (en) | Communication device, communication method and program | |
CN104346310B (zh) | 一种高性能i2c从机数据交换电路及方法 | |
CN108132898A (zh) | 多路通讯控制方法及通讯盒 | |
CN110531685B (zh) | 一种EtherCAT总线多轴从站系统 | |
CN109862553B (zh) | 终端和通信方法 | |
CN101398884B (zh) | 智能卡读卡器及其工作方法 | |
CN101251831B (zh) | 支持主从设备互换的移动存储器和主从设备互换方法 | |
CN101477637A (zh) | 一种数据通信方法、系统及智能卡读写器 | |
CN107807889A (zh) | 一种usb设备及usb设备驱动初始化的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
OL01 | Intention to license declared | ||
OL01 | Intention to license declared |