CN108288008B - 一种卡片激活的方法及装置 - Google Patents
一种卡片激活的方法及装置 Download PDFInfo
- Publication number
- CN108288008B CN108288008B CN201810130108.0A CN201810130108A CN108288008B CN 108288008 B CN108288008 B CN 108288008B CN 201810130108 A CN201810130108 A CN 201810130108A CN 108288008 B CN108288008 B CN 108288008B
- Authority
- CN
- China
- Prior art keywords
- card
- module
- command
- information
- reader
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/10079—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 spatial domain, e.g. temporary shields for blindfolding the interrogator in specific directions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Toxicology (AREA)
- General Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Credit Cards Or The Like (AREA)
Abstract
本发明涉及通信领域,特别涉及一种卡片激活的方法及装置,该方法包括:读卡器发送寻卡命令;当接收到寻卡响应时,根据寻卡响应判断工作场中是否为多张卡片,是则将多卡标志位置位,否则将所述多卡标志位复位,继续进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;根据卡片编号对选中的卡片执行激活操作,当激活成功后判断多卡标志位是否置位,是则继续发送寻卡指令,否则多卡激活成功;通过这种卡片激活的方法及装置,使得读卡器可以激活刷卡区域的多张卡片,从而完善了读卡器的性能并且提升了用户体验。
Description
技术领域
本发明涉及通信领域,特别涉及一种卡片激活的方法及装置。
背景技术
近场通信NFC(Near Field Communication),又称近距离无线通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式方式交换数据,目前,NFC被广泛的应用于移动设备、消费类电子设备等工具中。
随着NFC卡的广泛使用,每个人可能同时拥有很多张NFC卡,例如银行卡、公交卡、门禁卡和饭卡等。当刷卡时,读卡器只能激活一张卡片,当多张卡片同时放置在刷卡区域时,就会出现读卡器不能识别卡片或者识别错误的问题;使得在一些使用NFC通信的场合中用户体验差。
发明内容
为解决以上技术问题,本发明提供了一种卡片激活的方法及装置,其中,一种卡片激活的方法,包括:
步骤S1、读卡器发送寻卡命令;
步骤S2、读卡器接收寻卡响应,根据寻卡响应判断工作场中是否为多张卡片,是则将多卡标志位置位,执行步骤S3,否则将所述多卡标志位复位,执行步骤S3;
步骤S3、读卡器进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;
步骤S4、读卡器根据所述卡片编号对选中的卡片执行激活操作,当激活成功后执行步骤S5;
步骤S5、读卡器判断多卡标志位是否置位,是则返回步骤S1,否则多卡激活成功,结束。
一种卡片激活的装置,包括:
发送模块,用于发送寻卡命令;
接收模块,用于接收寻卡响应
第一判断模块,用于根据接收模块接收到的寻卡响应判断工作场中是否为多张卡片;
置位模块,用于当第一判断模块判定工作场中为多张卡片时,将多卡标志位置位;
复位模块,用于当第一判断模块判定工作场中不是多张卡片时,将多卡标志位复位;
编号模块,用于进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;
激活模块,用于根据所述编号模块保存的卡片编号对选中的卡片执行激活操作;
第二判断模块,用于当激活模块成功激活卡片之后判断多卡标志位是否置位,当判定多卡标识位置位时触发发送模块;当判定多卡标志位复位时,多卡激活成功,结束。
本发明的有益效果为:本发明提供了一种卡片激活的方法及装置,通过这种卡片激活的方法及装置,使得读卡器可以激活刷卡区域的多张卡片,从而完善了读卡器的性能并且提升了用户体验。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种卡片激活的方法的流程图;
图2至图3为本发明实施例2提供的一种卡片激活的方法的流程图;
图4为本发明实施例3提供的一种卡片激活的装置的方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例提供了一种卡片激活的方法,如图1所示,包括:
步骤A1、读卡器开机,初始化自身的射频芯片,设置卡片编号的初始值;当接收到上位机发送的获取卡片信息命令时,执行步骤A2;
具体的,读卡器将卡片编号的初始值设置为0;
步骤A2、读卡器开启工作场发送寻卡命令,判断是否接收到寻卡响应,是则执行步骤A3,否则继续执行步骤A2;
具体的,读卡器发送的寻卡命令为26;
需要说明的是,卡片接收到寻卡命令时,卡片的状态由空闲状态转换成准备状态;
步骤A3、读卡器根据接收到的寻卡响应判断工作场中是否为多张卡片,是则将多卡标志位置位,执行步骤A4,否则将多卡标志位复位,执行步骤A4;
具体的,读卡器检测返回的寻卡响应中是否有比特帧冲突,是则判定工作场中有多张卡片,否则判定工作场中只有一张卡片;
更为详细的,读卡器判断返回的寻卡响应中的第一位至第五位是否为1,是则判定工作场中有多张卡片,否则判定工作场中只有一张卡片。
步骤A4、读卡器发送选择命令;
读卡器发送的选择命令包括选择代码和预置的有效位的数;
需要说明的是,选择代码的长度为一个字节;
本实施例中选择代码为93;需要说明的是,本实施例中的卡片标识即卡片UID(英文名称为:Unique identifier),是由4个UID字节组成:
有效位的数用于表示整个命令的长度;有效位的数的长度为一个字节;有效位的数的较高四位为字节计数;较低四位为比特计数;
本实施例中,选择命令中预置的有效位的数具体为20;20表示读卡器发送的选择命令的长度为2个字节。
步骤A4具体的,读卡器根据选择代码93和预置的有效位的数20组织选择命令,选择命令具体为93 20;
步骤A5、读卡器接收工作场内卡片返回的卡片UID,检测卡片UID是否有冲突,是则执行步骤A6,否则确定选中的卡片UID,执行步骤A8;
本实施例中接收到的卡片返回的卡片UID具体为01 02 03 04和02 02 03 04;
步骤A6、读卡器检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,发送包含有效位的防冲突命令;
防冲突命令具体包括选择代码、有效位的数和有效位;
需要说明的是,本实施例中默认当发生冲突时读卡器选择第一冲突位是1的卡片UID;
本实施例中,读卡器检测获取到的卡片UID 01 02 03 04和02 02 03 04得到第一个发生冲突的位置是第1字节第1比特,根据第一个发生冲突的位置确定的有效位为1,计算有效位的数为21;根据选择代码93、有效位的数21和有效位1组织防冲突命令,防冲突命令具体为93 21 1。
需要说明的是,计算有效位的数为选择代码的长度、有效位的数的长度以及有效位的长度的总和;本实施例中,选择代码93的长度为1个字节、有效位的数的长度为1个字节,有效位的长度为1个比特,选择代码的长度、有效位的数的长度和有效位的长度的总和为2个字节1个比特,从而有效位的数为21。
步骤A7、读卡器接收工作场内卡片UID与有效位相匹配的卡片返回的数据,检测是否出现进一步的冲突,是则返回步骤A6,否则确定选中的卡片UID,执行步骤A8;
卡片返回除去第一个冲突位剩余的卡片UID,具体的,读卡器根据返回的剩余的卡片UID检测是否出现进一步的冲突;
例如,卡片返回的剩余的卡片UID为0000 000 02 03;读卡器检测到没有出现进一步的冲突时确定选中的卡片UID为01 02 03;
需要说明的是,工作场内卡片UID与有效位相匹配的卡片的工作状态继续保持准备状态,工作场内卡片UID与有效位不匹配的卡片的工作状态由准备状态转换为空闲状态;更进一步的,工作场内卡片UID与有效位不匹配的卡片不再响应读卡器发送的防冲突阶段的命令;例如,选择命令、防冲突命令、选卡命令和卡片激活命令。
步骤A8、读卡器发送包含选中的卡片UID的选卡命令;
读卡器发送的选卡命令具体包括:选择代码、有效位的数、选中的卡片UID和校验值;
本实施例中读卡器根据选择代码93、有效位的数70、选中的卡片UID 01 02 03 04和校验值BCC顺序拼接得到选卡命令,具体为93 70 01 02 03 04 BCC;
需要说明的是,校验值BCC为校验值之前的4个字节数据的异或值,即选中的卡片UID 01 02 03 04的异或值。
步骤A9、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤A10,否则报错结束;
具体的,读卡器接收卡片返回的选卡确认响应,获取选卡确认响应的低位端第三个比特,判断低位端第三比特是否为1,是则判定卡片UID不完整,否则判定卡片UID完整;
例如,当读卡器接收到的选卡确认响应为00时则判定卡片UID完整,当读卡器接收到的选卡确认响应为04时则判定卡片UID不完整;
本实施例,读卡器接收到的选卡确认响应为04,判定卡片UID不完整,报错结束;
步骤A10、读卡器以递增的方式更新卡片编号,发送包含更新后的卡片编号的卡片激活命令;
需要说明的是,读卡器选中卡片UID为01 02 03 04的卡片,且工作场内只有该卡片处于准备状态;
读卡器发送的卡片激活命令具体为0E 01;
步骤A11、读卡器接收卡片返回的响应数据,并根据响应数据判断激活是否成功,是则执行步骤A12,否则返回步骤A2;
需要说明的是,卡片UID为01 02 03 04的卡片的工作状态由准备状态转换为激活状态。
步骤A12、读卡器判断多卡标志位是否置位,是则返回步骤A2,否则多卡激活成功,结束。
具体为,读卡器判断多卡标志位是否为1,是则判定多卡标志位置位,否则判定多卡标志位复位。
优选的,步骤A3中,当多卡标识位置位时执行步骤A4;当多卡标志位复位时,执行步骤B1;
步骤B1、读卡器发送选择命令;
步骤B2、读卡器接收工作场内卡片返回的卡片UID;并发送包卡片UID的选卡命令;
步骤B3、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤A10,否则报错结束。
优选的,当多卡激活之后还包括:读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,并将获取到的卡片信息发送给上位机。
可选的,步骤A2之前还包括:上位机向所述读卡器发送获取卡片信息命令;当读卡器接收到获取卡片信息命令时,执行步骤A2;
读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,并将获取到的卡片信息发送给上位机,具体包括:
步骤C1、读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤C2、读卡器接收卡片返回的卡片信息,并将所述卡片信息发送给上位机;
步骤C3:上位机接收所述读卡器发送的卡片信息,并继续向读卡器发送获取卡片信息命令;
步骤C4、读卡器判断是否还有未被获取过的卡片编号,是则返回步骤C1,否则向上位机返回获取卡片信息失败响应,结束
更进一步的,步骤C3具体为:上位机判断接收到的卡片信息是否为合法的卡片信息,是则认证成功,结束,否则认证失败,继续向读卡器获取卡片信息,执行步骤C4。
可选的,步骤A2之前还包括:上位机向所述读卡器发送获取卡片信息命令;当读卡器接收到所述获取卡片信息命令时,执行步骤A2;
读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,具体包括:
步骤D1、读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤D2、读卡器接收卡片返回的卡片信息;
步骤D3、读卡器判断是否还有未被获取过的卡片编号,是则返回步骤D1,否则将接收到的所有卡片信息返回给上位机。
更进一步的,当步骤D3中,读卡器将接收到的所有卡片信息返回给上位机之后还包括:上位机判断接收到的所有卡片信息中是否存在合法的卡片信息,是则认证成功,结束,否则认证失败,结束。
优选的,步骤A2之前还包括:上位机向读卡器发送获取卡片编号命令;当读卡器接收到所述获取卡片编号命令时,执行步骤A2。
相应的,当多卡激活成功之后,还包括:所述读卡器将自身保存的所有卡片编号发送给上位机。
更进一步的,当读卡器将自身保存的卡片编号发送给上位机之后,还包括:读卡器等待接收上位机发送的获取卡片信息指令;当接收到上位机发送的包含卡片编号的获取卡片信息时,根据读卡命令中的卡片编号获取与其对应的卡片的卡片信息,并将获取到的卡片信息发送给上位机。
更为具体的,读卡器将自身保存的卡片编号发送给上位机之后,具体包括:
步骤E1、上位机从接收到的卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织获取卡片信息命令,并将获取卡片信息命令发送给读卡器;
步骤E2、读卡器将获取卡片信息命令转发给卡片;当接收到卡片返回的卡片信息时执行步骤E3;
步骤E3、读卡器将所述卡片信息转发给上位机;
步骤E4、上位机接收读卡器返回的卡片信息,并判断接收到的卡片编号中是否还有未被获取过的卡片编号,是则返回步骤E1,否则结束。
优选的,步骤E4中还包括:上位机接收读卡器转发的卡片信息,判断所述卡片信息是否合法,是则认证成功,结束;否则执行步骤E4。
优选的,当根据卡片编号获取到卡片信息之后,还包括:读卡器将卡片编号及与其对应的卡片信息绑定得到绑定信息,并将绑定信息返回到上位机。
具体的,当根据卡片编号获取到卡片信息之后,具体包括:
步骤F1、上位机根据接收到的绑定信息中的卡片信息选择需要操作的卡片,根据选中的卡片的卡片信息获取与其绑定的卡片编号,组织包含获取到的卡片编号的操作指令;并将操作指令发送给所述读卡器;
步骤F2、读卡器将接收到的所述操作指令转发给卡片;当接收到卡片返回的响应数据之后,将所述响应数据转发给所述上位机。
优选的,当多卡激活之后,还包括:所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息。
步骤A2之前还包括:当读卡器接收到外部触发信号时,执行步骤A2;
读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,具体包括:
步骤G1、读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤G2、读卡器接收卡片返回的卡片信息;
步骤G3、读卡器判断是否还有未被获取过的卡片编号,是则返回步骤G1,否则结束。
更进一步的,步骤G2具体为:读卡器判断接收到的卡片信息是否为合法的卡片信息,是则认证成功,结束,否则认证失败,结束。
实施例2
本实施例提供了一种卡片激活的方法,如图2和图3所示,包括:
步骤101、读卡器初始化自身的射频芯片,并设置卡片编号的初始值;
具体的,读卡器将卡片编号的初始值设置为0;
步骤102、读卡器开启工作场发送寻卡命令,判断是否接收到寻卡响应,是则执行步骤103,否则继续执行步骤102;
具体的,读卡器发送寻卡命令为26;
需要说明的是,卡片接收到寻卡命令时,卡片的状态由空闲状态转换成准备状态;
步骤103、读卡器根据接收到的寻卡响应判断工作场中是否为多张卡片,是则将多卡标志位置位,执行步骤104,否则将多卡标志位复位,执行步骤104;
具体的,读卡器检测返回的寻卡响应中是否有比特帧冲突,是则判定工作场中有多张卡片,否则判定工作场中只有一张卡片;
更为详细的,读卡器判断卡片返回的寻卡响应中的第一位至第五位是否为1,是则判定工作场中有多张卡片,否则判定工作场中只有一张卡片。
步骤104、读卡器发送一级选择命令;
读卡器发送的一级选择命令包括第一选择代码和预置的有效位的数;
需要说明的是,选择代码的长度为一个字节;
本实施例中读卡器中设置三级串联级别:
第一选择代码为93;包含第一选择代码的一级选择命令表明读卡器选择的串联级别为1,串联级别1用于对卡片的一级卡片UID进行防冲突操作;
第二选择代码为95,包含第二选择代码的二级选择命令表明读卡器选择的串联级别为2,串联级别2用于对卡片的二级卡片UID进行防冲突操作;
第三选择代码为97,包含第三选择代码的三级选择命令表明读卡器选择的串联级别为3;串联级别3用于对卡片的三级卡片UID进行防冲突操作。
需要说明的是,卡片UID由4个、7个或10个UID字节组成:
当卡片UID由4个UID字节组成时,卡片支持的最大串联级别为1,一级卡片UID为卡片UID的第1至4个字节;
当卡片UID由7个UID字节组成时,卡片支持的最大串联级别为2,其中,一级卡片UID为串联标识和卡片UID的第1至3个字节,二级卡片UID为卡片UID的第4至7个字节;
当卡片UID由10个UID字节组成时,卡片支持的最大串联级别为3,其中,一级卡片UID为串联标识和卡片UID的第1至3个字节,二级卡片UID为串联标识和卡片UID的第4至6个字节,三级卡片UID为卡片UID的第7至10个字节。
有效位的数用于表示整个命令的长度;有效位的数的长度为一个字节;有效位的数的较高四位为字节计数;较低四位为比特计数;
本实施例中,一级选择命令中预置的有效位的数具体为20;20表示读卡器发送的一级选择命令的长度为2个字节。
步骤104具体的,读卡器根据第一选择代码93和预置的有效位的数20组织一级选择命令,一级选择命令具体为93 20;
步骤105、读卡器接收工作场内卡片返回的一级卡片UID,检测卡片一级卡片UID是否有冲突,是则执行步骤106,否则确定选中的一级卡片UID,执行步骤108;
本实施例中接收到的卡片返回的一级卡片UID具体为88 01 02 03和88 02 0203;
需要说明的是,卡片返回的一级卡片UID中的88为串联标记;
步骤106、读卡器检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,发送包含有效位的一级防冲突命令;
一级防冲突命令具体包括第一选择代码、有效位的数和有效位;
需要说明的是,本实施例中默认当发生冲突时读卡器选择第一冲突位是1的卡片UID;
本实施例中,读卡器检测获取到的一级卡片UID 88 01 02 03和88 02 02 03得到第一个发生冲突的位置是第2字节第1比特,根据第一个发生冲突的位置确定的有效位为1,计算有效位的数为31;根据第一选择代码93、有效位的数31和有效位88 1组织一级防冲突命令,一级防冲突命令具体为93 31 88 1。
需要说明的是,计算有效位的数为第一选择代码的长度、有效位的数的长度以及有效位的长度的总和;本实施例中,第一选择代码93的长度为1个字节、有效位的数的长度为1个字节,有效位的长度为1个字节1个比特,第一选择代码的长度、有效位的数的长度和有效位的长度的总和为为3个字节1个比特,从而有效位的数为31。
步骤107、读卡器接收工作场内一级卡片UID与有效位相匹配的卡片返回的数据,检测是否出现进一步的冲突,是则返回步骤106,否则确定选中的一级卡片UID,执行步骤108;
卡片返回除去第一个冲突位剩余的一级卡片UID,具体的,读卡器根据返回的剩余的一级卡片UID检测是否出现进一步的冲突;
例如,卡片返回的剩余的一级卡片UID为0000 000 02 03;读卡器检测到没有出现进一步的冲突时确定选中的一级卡片UID为88 01 02 03;
需要说明的是,工作场内一级卡片UID与有效位相匹配的卡片的工作状态继续保持准备状态,工作场内一级卡片UID与有效位不匹配的卡片的工作状态由准备状态转换为空闲状态;更进一步的,工作场内一级卡片UID与有效位不匹配的卡片不再响应读卡器发送的防冲突阶段的命令;例如,选择命令、防冲突命令、选卡命令和卡片激活命令。
步骤108、读卡器发送包含选中的一级卡片UID的一级选卡命令;
读卡器发送的一级选卡命令具体包括:第一选择代码、有效位的数、选中的一级卡片UID和校验值;
本实施例中读卡器根据第一选择代码93、有效位的数70、选中的一级卡片UID 8801 02 03和校验值BCC顺序拼接得到一级选卡命令,具体为93 70 88 01 02 03 BCC;
需要说明的是,校验值BCC为校验值之前的4个字节数据的异或值,即选中的一级卡片UID 88 01 02 03的异或值。
步骤109、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤122,否则执行步骤110;
具体的,读卡器接收卡片返回的选卡确认响应,获取选卡确认响应的低位端第三个比特,判断低位端第三比特是否为1,是则判定卡片UID不完整,否则判定卡片UID完整;
例如,当读卡器接收到的选卡确认响应为00时则判定卡片UID完整,当读卡器接收到的选卡确认响应为04时则判定卡片UID不完整;
本实施例,读卡器接收到的选卡确认响应为04,判定卡片UID不完整执行步骤110;
步骤110、读卡器发送二级选择命令;
读卡器发送的二级选择命令包括第二选择代码和预置的有效位的数;具体的,读卡器将第二选择代码95和预置的有效位的数20顺序拼接得到二级选择命令95 20;
步骤111、读卡器接收工作场内卡片返回的二级卡片UID,检测二级卡片UID是否有冲突,是则执行步骤112,否则确定选中的二级卡片UID,执行步骤114;
读卡器接收到工作场内卡片返回的二级卡片UID具体为88 04 05 06和88 08 0506;
需要说明的是,卡片返回的二级卡片UID中的88为串联标记;
步骤112、读卡器检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,发送包含有效位的二级防冲突命令;
二级防冲突命令具体包括第二选择代码、有效位的数和有效位;
本实施例中,读卡器检测获取到的二级卡片UID 88 04 05 06和88 08 05 06得到第一个发生冲突的位置是第2字节第3比特,根据第一个发生冲突的位置确定的有效位是88100,计算有效位的数为33;根据第二选择代码95、有效位的数33和有效位88 100组织二级防冲突命令,二级防冲突命令具体为95 33 88 100。
需要说明的是,本实施例中,第二选择代码95的长度为1个字节、有效位的数的长度为1个字节,有效位的长度为1个字节3个比特,第一选择代码的长度、有效位的数的长度和有效位的长度的总和为为3个字节3个比特,从而有效位的数为33。
步骤113、读卡器接收工作场内二级卡片UID与有效位相匹配的卡片返回的数据,检测是否出现进一步的冲突,是则返回步骤112,否则确定选中的二级卡片UID,执行步骤114;
卡片返回除去第一个冲突位剩余的二级卡片UID,具体的,读卡器根据返回的剩余的二级卡片UID检测是否出现进一步的的冲突;
例如,卡片返回的剩余的二级卡片UID为0000 0 05 06;读卡器检测到没有出现进一步的冲突时确定选中的一级卡片UID为88 04 05 06;
需要说明的是,工作场内二级卡片UID与有效位相匹配的卡片的工作状态继续保持准备状态,工作场内二级卡片UID与有效位不匹配的卡片的工作状态由准备状态转换为空闲状态;更进一步的,工作场内二级卡片UID与有效位不匹配的卡片不再响应读卡器发送的防冲突阶段的命令;例如,选择命令、防冲突命令、选卡命令和卡片激活命令。
步骤114、读卡器发送包含选中的二级卡片UID的二级选卡命令;
读卡器发送的二级选卡命令具体包括:第二选择代码、有效位的数、选中的二级卡片UID和校验值;
本实施例中读卡器根据第二选择代码95、有效位的数70、选中的二级卡片UID 8804 05 06和校验值BCC顺序拼接得到一级选卡命令,具体为95 70 88 04 05 06 BCC;
需要说明的是,校验值BCC为选中的二级卡片UID 88 04 05 06的异或值。
步骤115、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤112,否则执行步骤116;
具体的,读卡器接收卡片返回的选卡确认响应,获取选卡确认响应的低位端第三个比特,判断低位端第三比特是否为1,是则判定卡片UID不完整,否则判定卡片UID完整;
本实施例,读卡器接收到的选卡确认响应为04,判定卡片UID不完整执行步骤116;
步骤116、读卡器发送三级选择命令;
读卡器发送的三级选择命令包括第三选择代码和预置的有效位的数;具体的,读卡器将第三选择代码97和预置的有效位的数20顺序拼接得到二级选择命令97 20;
步骤117、读卡器接收工作场内卡片返回的三级卡片UID,检测三级卡片UID是否有冲突,是则执行步骤118,否则确定选中的三级卡片UID,执行步骤120;
读卡器接收到工作场内卡片返回的三级卡片UID具体为07 08 09 0A和0F 08 090A;
步骤118、读卡器检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,发送包含有效位的三级防冲突命令;
三级防冲突命令具体包括第三选择代码、有效位的数和有效位;
本实施例中,读卡器检测获取到的三级卡片UID 07 08 09 0A和0F 08 09 0A得到第一个发生冲突的位置是第1字节第4比特,根据第一个发生冲突的位置确定的有效位是1111,计算有效位的数为24;根据第三选择代码97、有效位的数24和有效位1111组织三级防冲突命令,三级防冲突命令具体为97 24 1111。
需要说明的是,本实施例中,第三选择代码97的长度为1个字节、有效位的数的长度为1个字节,有效位的长度为4个比特,第一选择代码的长度、有效位的数的长度和有效位的长度的总和为为2个字节4个比特,从而有效位的数为24。
步骤119、读卡器接收工作场内三级卡片UID与有效位相匹配的卡片返回的数据,检测是否出现进一步的冲突,是则返回步骤118,否则确定选中的三级卡片UID,执行步骤120;
卡片返回除去第一个冲突位剩余的三级卡片UID,具体的,读卡器根据返回的剩余的三级卡片UID检测是否出现进一步的的冲突;
例如,卡片返回的剩余的三级卡片UID为0000 08 09 0A;读卡器检测到没有出现进一步的冲突时确定选中的一级卡片UID为0F 08 09 0A;
需要说明的是,工作场内三级卡片UID与有效位相匹配的卡片的工作状态继续保持准备状态,工作场内三级卡片UID与有效位不匹配的卡片的工作状态由准备状态转换为空闲状态;更进一步的,工作场内三级卡片UID与有效位不匹配的卡片不再响应读卡器发送的防冲突阶段的命令;例如,选择命令、防冲突命令、选卡命令和卡片激活命令。
步骤120、读卡器发送包含选中的三级卡片UID的三级选卡命令;
读卡器发送的三级选卡命令具体包括:第三选择代码、有效位的数、选中的三级卡片UID和校验值;
本实施例中读卡器根据第三选择代码97、有效位的数70、选中的二级卡片UID 0F08 09 0A和校验值BCC顺序拼接得到一级选卡命令,具体为95 70 0F 08 09 0A BCC;
需要说明的是,校验值BCC为选中的三级卡片UID 0F 08 09 0A的异或值。
步骤121、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤122,否则报错结束;
具体的,读卡器接收卡片返回的选卡确认响应,获取选卡确认响应的低位端第三个比特,判断低位端第三比特是否为1,是则判定卡片UID不完整,否则判定卡片UID完整;
本实施例,读卡器接收到的选卡确认响应为00,判定卡片UID完整执行步骤122;
步骤122、读卡器以递增的方式更新卡片编号,并发送包含更新后的卡片编号的卡片激活命令;
需要说明的是,读卡器选中卡片UID为01 02 03 04 05 06 0F 07 08 09 0A的卡片,且工作场内只有该卡片处于准备状态;
读卡器发送的卡片激活命令具体为0E 01;
步骤123、读卡器接收卡片返回的响应数据,并根据响应数据判断激活是否成功,是则执行步骤124,否则返回步骤102;
需要说明的是,卡片UID为01 02 03 04 05 06 0F 07 08 09 0A的卡片的工作状态由准备状态转换为激活状态。
步骤124、读卡器判断多卡标志位是否置位,是则返回步骤102,否则多卡激活成功,结束;
具体为,读卡器判断多卡标志位是否为1,是则判定多卡标志位置位,否则判定多卡标志位复位。
优选的,步骤103中,当多卡标志位置位时执行步骤104,当多卡标志位复位时执行步骤201;
步骤201、读卡器发送一级选择命令;
步骤202、读卡器接收工作场内卡片返回的一级卡片UID;并发送包含一级卡片UID的一级选卡命令;
步骤203、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤122,否则执行步骤204;
步骤204、读卡器发送的二级选择命令;
步骤205、读卡器接收工作场内卡片返回的二级卡片UID;并发送包含二级卡片UID的二级选卡命令;
步骤206、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤122,否则执行步骤207;
步骤207、读卡器发送的三级选择命令;
步骤208、读卡器接收工作场内卡片返回的三级卡片UID;并发送包含三级卡片UID的三级选卡命令;
步骤209、读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片UID是否完整,是则执行步骤122,否则报错结束。
实施例3
本实施例提供一种卡片激活的装置,如图4所示,包括:
发送模块11,用于发送寻卡命令;
接收模块12,用于接收寻卡响应
第一判断模块13,用于根据接收模块12接收到的寻卡响应判断工作场中是否为多张卡片;
置位模块14,用于当第一判断模块13判定工作场中为多张卡片时,将多卡标志位置位;
复位模块15,用于当第一判断模块13判定工作场中不是多张卡片时,将多卡标志位复位;
具体的,第一判断模块13,具体用于检测接收模块12接收到的寻卡响应中是否有比特帧冲突;
相应的,置位模块14,用于当第一判断模块13判定有比特帧冲突时,将多卡标志位置位;
复位模块15,用于当第一判断模块13判定没有比特帧冲突时,将多卡标志位复位。
编号模块16,用于进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;
激活模块17,用于根据编号模块16保存的卡片编号对选中的卡片执行激活操作;
第二判断模块18,用于当激活模块17成功激活卡片之后判断多卡标志位是否置位,当判定多卡标识位置位时触发发送模块11;当判定多卡标志位复位时,多卡激活成功,结束。
具体的,编号模块16包括:
第一发送子模块,用于向工作场内的卡片发送选择命令;
第一接收子模块,用于接收工作场内的卡片返回的卡片标识;
第一检测子模块,用于检测第一接收子模块接收到的卡片标识是否有冲突;
确定子模块,用于当第一检测子模块判定卡片标识没有冲突时,确定选中的卡片标识;
第一发送子模块,还用于当第一检测子模块判定卡片标识有冲突时,检测第一个发送冲突的位置,并根据第一个发生冲突的位置确定有效位,并发送包含有效位的防冲突命令;
第一接收子模块,还用于接收工作场内卡片标识与有效位相匹配的卡片返回的数据;
第二检测子模块,用于根据第一接收子模块接收到的卡片返回的数据检测是否出现进一步的冲突;
第一发送子模块,还用于当第二检测子模块判定出现进一步冲突时,检测第一个发送冲突的位置,并根据第一个发生冲突的位置确定有效位,并发送包含有效位的防冲突命令;
确定子模块,还用于当第二检测子模块判定没有出现进一步的冲突时,确定选中的卡片标识;
第一发送子模块,还用于发送包含确定子模块确定的卡片标识的选卡命令;
第一接收子模块,还用于接收工作场内卡片返回的选卡确认响应;
第一判断子模块,还用于根据第一接收子模块接收到的选卡确认响应判断卡片标识是否完整;
编号子模块,用于当第一判断子模块判定卡片标识完整时,对选中的卡片标识所对应的卡片进行编号,保存卡片编号;
报错子模块,用于当第一判断子模块判定卡片标识不完整时,报错结束。
优选的,编号模块16中还包括:第二发送子模块;第二接收子模块和第二判断子模块;
第一发送子模块,具体用于当第一判断模块13判定工作场内有多张卡片时,发送选择命令;
第二发送子模块,用于当第一判断模块13判定工作场内没有多张卡片时,发送选择命令;
第二接收子模块,用于接收工作场内卡片返回的卡片标识;
第二发送子模块,还用于发送第二接收子模块接收到的卡片标识的选卡命令;
第二接收子模块,还用于接收工作场内卡片返回的选卡确认响应;
第二判断子模块,还用于根据第二接收子模块接收到的选卡确认响应判断卡片标识是否完整;
编号子模块,用于当第二判断子模块判定卡片标识完整时,对选中的卡片标识所对应的卡片进行编号,保存卡片编号;
报错子模块,用于当第二判断子模块判定卡片标识不完整时,报错结束。
具体的,激活模块17包括:
第三发送子模块,用于发送包含卡片编号的卡片激活命令;
第三接收子模块,用于接收到卡片激活命令的响应数据;
第三判断子模块,用于根据第三接收子模块接收到的响应数据判断是否成功激活选中的卡片;
第二判断模块18,用于当第三判断子模块判定成功激活选中的卡片后,判断多卡标志位是否置位,当判定多卡标志位复位时,多卡激活成功,结束;
发送模块11,还用于当第三判断子模块判定没有成功激活选中的卡片后,发送寻卡命令。
优选的,该装置还包括:第一获取模块;
第一获取模块,用于当第二判断模块18判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息;将卡片信息发送给上位机。
具体的,第一获取模块,具体用于当第二判断模块18判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息,并将卡片编号及与其对应的卡片信息绑定得到绑定信息,将绑定信息返回到上位机。
可选的,接收模块12,还用于接收上位机发送的获取卡片信息命令;
发送模块11,具体用于当接收模块12接收到获取卡片信息命令时发送寻卡命令;
第一获取模块具体包括:
第一组织命令子模块,用于当第二判断模块18判定多卡激活成功之后,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令;
第四发送子模块,用于将第一组织命令子模块组织的读卡命令发送给卡片;
第四接收子模块,用于接收卡片返回的卡片信息;
第四发送子模块,还用于将第四接收子模块接收到的卡片返回的卡片信息发送给上位机;
第四判断子模块,用于当第一接收子模块接收到获取卡片信息命令时,判断是都还有未被获取过的卡片编号;
第一组织命令子模块,用于当第四判断模块判定还有未被获取过的卡片编号时,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令;
第四发送子模块,还用于当第四判断模块判定没有未被获取过的卡片编号时,向上位机返回获取卡片信息失败响应,结束。
可选的,接收模块12,还用于接收上位机发送的获取卡片信息命令;
发送模块11,具体用于当接收模块12接收到获取卡片信息命令时发送寻卡命令;
第一获取模块具体包括:
第二组织命令子模块,用于当第二判断模块18判定多卡激活成功之后,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令;
第五发送子模块,用于将第二组织命令子模块组织的读卡命令发送给卡片;
第五接收子模块,用于接收卡片返回的卡片信息;
第五判断子模块,用于判断是否还有未被获取过的卡片编号;
第二组织命令子模块,还用于当第五判断子模块判定还有未被获取到的卡片编号时,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令;
第五发送模块11,还用于第五判断子模块判定没有未被获取到的卡片编号时,将第五接收子模块接收到的所有卡片信息均发送给上位机。
优选的,发送模块11,还用于当第二判断模块18判定多卡激活成功之后,将自身保存的所有卡片编号发送给上位机。
更进一步的,接收模块12,还用于接收到上位机发送的获取卡片编号命令;
发送模块11,具体用于当接收模块12接收到获取卡片编号命令时,发送寻卡命令。
更为详细的,该装置还包括:第二获取模块;
接收模块12,还用于接收上位机发送的包含卡片编号的获取卡片信息命令;
第二获取模块,用于根据接收模块12接收到的获取卡片信息中的卡片编号获取与其对应的卡片的卡片信息;将获取到的卡片信息发送给上位机。
具体的,第二获取模块具体包括:
第六接收子模块,用于接收上位机发送的包含卡片编号的获取卡片信息命令;
第六发送子模块,用于将第六接收子模块接收到的获取卡片信息命令发送给卡片;
第六接收子模块,还用于接收卡片发送的卡片信息;
第六发送模块11,还用于将第六接收子模块接收到的卡片信息发送给上位机。
更进一步的,第二获取模块,具体用于根据接收模块12接收到的获取卡片信息中的卡片编号获取与其对应的卡片的卡片信息;将卡片编号及与其对应的卡片信息绑定得到绑定信息,并将绑定信息返回到上位机。
相应的,接收模块12,还用于接收上位机发送的包含卡片编号的操作指令;
发送模块11,还用于将操作指令发送给卡片;
接收模块12,还用于接收卡片返回的响应数据;
发送模块11,还用于将接收模块12接收到的响应数据发送给上位机。
优选的,该装置还包括:第三获取模块,用于当第二判断模块18判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息。
更进一步的,发送模块11,具体用于当接收到外部触发信号时,发送寻卡命令;
具体的,第三获取模块包括:
第三组织命令子模块,用于从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令;
第七发送子模块,用于将第三组织子模块生成的读卡命令发送给卡片;
第七接收子模块,用于接收卡片发送的卡片信息;
第六判断子模块,用于判断是否还有未被获取过的卡片编号;
第三组织命令模块,还用于当第六判断子模块判定还有未被获取到的卡片编号时从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据当前卡片编号组织读卡命令。
优选的,第三获取模块还包括:第七判断子模块,用于判断第七接收子模块接收到的卡片信息是否为合法的卡片信息,当判定合法时则认证成功,结束,当判定不合法时则认证失败,结束。
以上所述,仅为本发明较佳的具体实施方法,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (36)
1.一种卡片激活的方法,其特征在于,包括:
步骤 S1、读卡器发送寻卡命令;
步骤 S2、所述读卡器接收寻卡响应,根据所述寻卡响应判断工作场中是否为多张卡片,是则将多卡标志位置位,执行步骤 S3,否则将所述多卡标志位复位,执行步骤 S3;
步骤 S3、所述读卡器进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;
步骤 S4、所述读卡器根据所述卡片编号对选中的卡片执行激活操作,当激活成功后执行步骤 S5;
步骤 S5、所述读卡器判断多卡标志位是否置位,是则返回步骤 S1,否则多卡激活成功,结束;
所述步骤 S3 具体包括:
步骤 A1、所述读卡器发送选择命令;
步骤 A2、所述读卡器接收工作场内卡片返回的卡片标识,检测卡片标识是否有冲突,是则执行步骤 A3;否则确定选中的卡片标识,执行步骤 A5;
步骤 A3、所述读卡器检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,并发送包含有效位的防冲突命令;
步骤 A4、所述读卡器接收工作场内卡片标识与有效位相匹配的卡片返回的数据,检测是否出现进一步的冲突,是则返回步骤 A3;否则确定选中的卡片标识,执行步骤 A5;
步骤 A5、所述读卡器发送包含选中的卡片标识的选卡命令;
步骤 A6、所述读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片标识是否完整,是则对选中的卡片标识所对应的卡片进行编号,保存卡片编号,执行步骤S4;否则报错结束。
2.如权利要求 1 所述的方法,其特征在于,步骤 S2 具体为:所述读卡器接收工作场内的卡片返回的寻卡响应,检测所述寻卡响应中是否有比特帧冲突,是则将多卡标志位置位,执行步骤 S3;否则将所述多卡标志位复位,执行步骤 S3。
3.如权利要求 1 所述的方法,其特征在于,所述步骤 S2 中,当读卡器判定工作场内有多张卡片时,执行步骤 A1;当读卡器判定工作场内没有多张卡片时,执行步骤 B1;
步骤 B1、所述读卡器发送选择命令;
步骤 B2、所述读卡器接收工作场内卡片返回的卡片标识;并发送包含卡片标识的选卡命令;
步骤 B3、所述读卡器接收工作场内卡片返回的选卡确认响应,根据选卡确认响应判断卡片标识是否完整,是则对卡片标识所对应的卡片进行编号,保存卡片编号,执行步骤S4;否则报错结束。
4.如权利要求 1 所述的方法,其特征在于,所述步骤 S4 具体包括:读卡器发送包含所述卡片编号的卡片激活命令;当接收到响应数据后,根据响应数据判断是否成功激活选中的卡片,是则执行步骤 S5;否则返回步骤 S1。
5.如权利要求 1 所述的方法,其特征在于,所述步骤 S5 中,当多卡激活成功之后,还包括:所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,并将获取到的卡片信息发送给上位机。
6.如权利要求 5 所述的方法,其特征在在于,所述步骤 S1 之前还包括:上位机向所述读卡器发送获取卡片信息命令;当读卡器接收到所述获取卡片信息命令时,执行步骤S1;
所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,具体包括:
步骤 C1、所述读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤 C2、所述读卡器接收卡片返回的卡片信息,并将所述卡片信息发送给上位机;
步骤 C3:所述上位机接收所述读卡器发送的卡片信息,并继续向读卡器发送获取卡片信息命令;
步骤 C4、所述读卡器判断是否还有未被获取过的卡片编号,是则返回步骤C1,否则向上位机返回获取卡片信息失败响应,结束。
7.如权利要求 6 所述的方法,其特征在于,所述步骤 C3 具体为:所述上位机判断接收到的卡片信息是否为合法的卡片信息,是则认证成功,结束,否则认证失败,继续向读卡器获取卡片信息,执行步骤 C4。
8.如权利要求 5 所述的方法,其特征在于,所述步骤 S1 之前还包括:上位机向所述读卡器发送获取卡片信息命令;当读卡器接收到所述获取卡片信息命令时,执行步骤 S1;
所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,具体包括:
步骤 D1、所述读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤 D2、所述读卡器接收卡片返回的卡片信息;
步骤 D3、所述读卡器判断是否还有未被获取过的卡片编号,是则返回步骤D1,否则将接收到的所有卡片信息返回给上位机。
9.如权利要求 8 所述的方法,其特征在在于,当步骤 D3 中,所述读卡器将接收到的所有卡片信息返回给上位机之后还包括:所述上位机判断接收到的所有卡片信息中是否存在合法的卡片信息,是则认证成功,结束,否则认证失败,结束。
10.如权利要求 1 所述的方法,其特征在于,所述步骤 S5 中,当多卡激活成功之后,还包括:所述读卡器将自身保存的所有卡片编号发送给上位机。
11.如权利要求 10 所述的方法,其特征在于,所述步骤 S1 之前还包括:上位机向所述读卡器发送获取卡片编号命令;当读卡器接收到所述获取卡片编号命令时,执行步骤S1。
12.如权利要求 10 所述的方法,其特征在于,当读卡器将自身保存的卡片编号发送给上位机之后,还包括:所述读卡器等待接收上位机发送的获取卡片信息命令;当接收到上位机发送的包含卡片编号的获取卡片信息命令时,根据所述获取卡片信息命令中的卡片编号获取与其对应的卡片的卡片信息,并将获取到的卡片信息发送给上位机。
13.如权利要求 12 所述的方法,其特征在于,当读卡器将自身保存的卡片编号发送给上位机之后,具体包括:
步骤 E1、所述上位机从接收到的卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织获取卡片信息命令,并将获取卡片信息命令发送给读卡器;
步骤 E2、所述读卡器将获取卡片信息命令转发给卡片;当接收到卡片返回的卡片信息时执行步骤 E3;
步骤 E3、所述读卡器将所述卡片信息转发给上位机;
步骤 E4、所述上位机接收读卡器返回的卡片信息,并判断接收到的卡片编号中是否还有未被获取过的卡片编号,是则返回步骤 E1,否则结束。
14.如权利要求 13 所述的方法,其特征在于,所述步骤 E4 中还包括:所述上位机接收读卡器转发的卡片信息,判断所述卡片信息是否合法,是则认证成功,结束;否则执行步骤 E4。
15.如权利要求 5 或 12 所述的方法,其特征在于,当根据卡片编号获取到卡片信息之后,还包括:所述读卡器将卡片编号及与其对应的卡片信息绑定得到绑定信息,并将绑定信息返回到上位机。
16.如权利要求 15 所述的方法,其特征在于,当根据卡片编号获取到卡片信息之后,具体包括:
步骤 F1、所述上位机根据接收到的绑定信息中的卡片信息选择需要操作的卡片,根据选中的卡片的卡片信息获取与其绑定的卡片编号,组织包含获取到的卡片编号的操作指令;并将操作指令发送给所述读卡器;
步骤 F2、所述读卡器将接收到的所述操作指令转发给卡片;当接收到卡片返回的响应数据之后,将所述响应数据转发给所述上位机。
17.如权利要求 1 所述的方法,其特征在于,所述步骤 S5 中,当多卡激活成功之后,还包括:所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息。
18.如权利要求 1 所述的方法,其特征在于,所述步骤 S1 之前还包括:当读卡器接收到外部触发信号时,执行步骤 S1;
所述读卡器根据自身保存的卡片编号获取与其对应的卡片的卡片信息,具体包括:
步骤 G1、所述读卡器从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令,并将所述读卡命令发送给卡片;
步骤 G2、所述读卡器接收卡片返回的卡片信息;
步骤 G3、所述读卡器判断是否还有未被获取过的卡片编号,是则返回步骤G1,否则结束。
19.如权利要求 18 所述的方法,其特征在在于,所述步骤 G2 具体为:所述读卡器判断接收到的卡片信息是否为合法的卡片信息,是则认证成功,结束,否则认证失败,结束。
20.一种卡片激活的装置,其特征在于,包括:
发送模块,用于发送寻卡命令;
接收模块,用于接收寻卡响应第一判断模块,用于根据所述接收模块接收到的所述寻卡响应判断工作场中是否为多张卡片;
置位模块,用于当所述第一判断模块判定工作场中为多张卡片时,将多卡标志位置位;
复位模块,用于当所述第一判断模块判定工作场中不是多张卡片时,将多卡标志位复位;
编号模块,用于进行防冲突操作选择卡片,对选中的卡片进行编号,并保存卡片编号;
激活模块,用于根据所述编号模块保存的卡片编号对选中的卡片执行激活操作;
第二判断模块,用于当激活模块成功激活卡片之后判断多卡标志位是否置位,当判定多卡标识位置位时触发发送模块;当判定多卡标志位复位时,多卡激活成功,结束;
其中,所述编号模块包括:
第一发送子模块,用于向工作场内的卡片发送选择命令;
第一接收子模块,用于接收工作场内的卡片返回的卡片标识;
第一检测子模块,用于检测第一接收子模块接收到的卡片标识是否有冲突;
确定子模块,用于当所述第一检测子模块判定所述卡片标识没有冲突时,确定选中的卡片标识;
所述第一发送子模块,还用于当所述第一检测子模块判定所述卡片标识有冲突时,检测第一个发生冲突的位置,并根据第一个发生冲突的位置确定有效位,并发送包含有效位的防冲突命令;
所述第一接收子模块,还用于接收工作场内卡片标识与有效位相匹配的卡片返回的数据;
第二检测子模块,用于根据所述第一接收子模块接收到的卡片返回的数据检测是否出现进一步的冲突;
所述第一发送子模块,还用于当第二检测子模块判定出现进一步冲突时,检测第一个发送冲突的位置,并根据第一个发生冲突的位置确定有效位,并发送包含有效位的防冲突命令;
所述确定子模块,还用于当所述第二检测子模块判定没有出现进一步的冲突时,确定选中的卡片标识;
所述第一发送子模块,还用于发送包含所述确定子模块确定的所述卡片标识的选卡命令;
所述第一接收子模块,还用于接收工作场内卡片返回的选卡确认响应;
第一判断子模块,还用于根据所述第一接收子模块接收到的所述选卡确认响应判断卡片标识是否完整;
编号子模块,用于当所述第一判断子模块判定卡片标识完整时,对选中的卡片标识所对应的卡片进行编号,保存卡片编号;
报错子模块,用于当所述第一判断子模块判定卡片标识不完整时,报错结束。
21.如权利要求 20 所述的装置,其特征在于,所述第一判断模块具体用于检测所述接收模块接收到的所述寻卡响应中是否有比特帧冲突;
置位模块,用于当所述第一判断模块判定有比特帧冲突时,将多卡标志位置位;
复位模块,用于当所述第一判断模块判定没有比特帧冲突时,将多卡标志位复位。
22.如权利要求 21 所述的装置,其特征在于,所述编号模块中还包括:第二发送子模块、第二接收子模块和第二判断子模块;
所述第一发送子模块,具体用于当第一判断模块判定工作场内有多张卡片时,发送选择命令;
所述第二发送子模块,用于当第一判断模块判定工作场内没有多张卡片时,发送选择命令;
所述第二接收子模块,用于接收工作场内卡片返回的卡片标识;
所述第二发送子模块,还用于发送包含所述第二接收子模块接收到的所述卡片标识的选卡命令;
所述第二接收子模块,还用于接收工作场内卡片返回的选卡确认响应;
所述第二判断子模块,还用于根据所述第二接收子模块接收到的所述选卡确认响应判断卡片标识是否完整;
所述编号子模块,用于当所述第二判断子模块判定卡片标识完整时,对选中的卡片标识所对应的卡片进行编号,保存卡片编号;
所述报错子模块,用于当所述第二判断子模块判定卡片标识不完整时,报错结束。
23.如权利要求 20 所述的装置,其特征在于,所述激活模块包括:第三发送子模块,用于发送包含所述卡片编号的卡片激活命令;
第三接收子模块,用于接收到卡片激活命令的响应数据;
第三判断子模块,用于根据所述第三接收子模块接收到的响应数据判断是否成功激活选中的卡片;
所述第二判断模块,用于当第三判断子模块判定成功激活选中的卡片后,判断多卡标志位是否置位,当判定多卡标志位复位时,多卡激活成功,结束;
所述发送模块,还用于当第三判断子模块判定没有成功激活选中的卡片后,发送寻卡命令。
24.如权利要求 20 所述的装置,其特征在于,还包括:第一获取模块;
所述第一获取模块,用于当所述第二判断模块判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息;将所述卡片信息发送给上位机。
25.如权利要求 20 所述的装置,其特征在于,第一获取模块,具体用于当第二判断模块判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息,并将卡片编号及与其对应的卡片信息绑定得到绑定信息,将绑定信息返回到上位机。
26.如权利要求 24 所述的装置,其特征在于,所述接收模块,还用于接收上位机发送的获取卡片信息命令;
所述发送模块,具体用于当所述接收模块接收到获取卡片信息命令时发送寻卡命令;
所述第一获取模块具体包括:
第一组织命令子模块,用于当所述第二判断模块判定多卡激活成功之后,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令;
第四发送子模块,用于将第一组织命令子模块组织的读卡命令发送给卡片;第四接收子模块,用于接收卡片返回的卡片信息;
所述第四发送子模块,还用于将所述第四接收子模块接收到的所述卡片返回的卡片信息发送给上位机;
第四判断子模块,用于当所述接收模块接收到获取卡片信息命令时,判断是否还有未被获取过的卡片编号;
第一组织命令子模块,还用于当所述第四判断子模块判定还有未被获取过的卡片编号时,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令;
所述第四发送子模块,还用于当所述第四判断子模块判定没有未被获取过的卡片编号时,向上位机返回获取卡片信息失败响应,结束。
27.如权利要求 24 所述的装置,其特征在于,所述接收模块,还用于接收上位机发送的获取卡片信息命令;
所述发送模块,具体用于当所述接收模块接收到获取卡片信息命令时发送寻卡命令;
所述第一获取模块具体包括:
第二组织命令子模块,用于当第二判断模块判定多卡激活成功之后,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令;
第五发送子模块,用于将所述第二组织命令子模块组织的读卡命令发送给卡片;
第五接收子模块,用于接收卡片返回的卡片信息;
第五判断子模块,用于判断是否还有未被获取过的卡片编号;
所述第二组织命令子模块,还用于当所述第五判断子模块判定还有未被获取到的卡片编号时,从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令;
所述第五发送子模块,还用于所述第五判断子模块判定没有未被获取到的卡片编号时,将第五接收子模块接收到的所有卡片信息均发送给上位机。
28.如权利要求 20 所述的装置,其特征在于,所述发送模块,还用于当第二判断模块判定多卡激活成功之后,将自身保存的所有卡片编号发送给上位机。
29.如权利要求 28 所述的装置,其特征在于,所述接收模块,还用于接收到上位机发送的获取卡片编号命令;
所述发送模块,具体用于当所述接收模块接收到所述获取卡片编号命令时,发送寻卡命令。
30.如权利要求 28 所述的装置,其特征在于,还包括:第二获取模块;
所述接收模块,还用于接收上位机发送的包含卡片编号的获取卡片信息命令;
所述第二获取模块,用于根据所述接收模块接收到的所述获取卡片信息中的卡片编号获取与其对应的卡片的卡片信息;将获取到的卡片信息发送给上位机。
31.如权利要求 30 所述的装置,其特征在于,所述第二获取模块具体包括:
第六接收子模块,用于接收上位机发送的包含卡片编号的获取卡片信息命令;
第六发送子模块,用于将所述第六接收子模块接收到的所述获取卡片信息命令发送给卡片;
所述第六接收子模块,还用于接收卡片发送的卡片信息;
所述第六发送子模块,还用于将所述第六接收子模块接收到的卡片信息发送给上位机。
32.如权利要求 30 所述的装置,其特征在于,所述第二获取模块,具体用于根据所述接收模块接收到的所述获取卡片信息中的卡片编号获取与其对应的卡片的卡片信息;将卡片编号及与其对应的卡片信息绑定得到绑定信息,并将绑定信息返回到上位机。
33.如权利要求 25 或 32 所述的装置,其特征在于,所述接收模块,还用于接收上位机发送的包含卡片编号的操作指令;
所述发送模块,还用于将所述操作指令发送给卡片;
所述接收模块,还用于接收卡片返回的响应数据;
所述发送模块,还用于将所述接收模块接收到的响应数据发送给上位机。
34.如权利要求 20 所述的装置,其特征在于,还包括:第三获取模块,用于当第二判断模块判定多卡激活成功之后,根据自身保存的卡片编号获取与其对应的卡片的卡片信息。
35.如权利要求 20 所述的装置,其特征在于,所述发送模块,具体用于当接收到外部触发信号时,发送寻卡命令;
第三获取模块包括:
第三组织命令子模块,用于从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令;
第七发送子模块,用于将所述第三组织命令子模块生成的读卡命令发送给卡片;
第七接收子模块,用于接收卡片发送的卡片信息;
第六判断子模块,用于判断是否还有未被获取过的卡片编号;
所述第三组织命令子模块,还用于当第六判断子模块判定还有未被获取到的卡片编号时从自身保存的所有卡片编号中获取一个尚未获取过的卡片编号作为当前卡片编号,根据所述当前卡片编号组织读卡命令。
36.如权利要求 35 所述的装置,其特征在于,所述第三获取模块还包括:
第七判断子模块,用于判断所述第七接收子模块接收到的卡片信息是否为合法的卡片信息,当判定合法时则认证成功,结束,当判定不合法时则认证失败,结束。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810130108.0A CN108288008B (zh) | 2018-02-08 | 2018-02-08 | 一种卡片激活的方法及装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810130108.0A CN108288008B (zh) | 2018-02-08 | 2018-02-08 | 一种卡片激活的方法及装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN108288008A CN108288008A (zh) | 2018-07-17 |
| CN108288008B true CN108288008B (zh) | 2021-12-28 |
Family
ID=62832747
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201810130108.0A Expired - Fee Related CN108288008B (zh) | 2018-02-08 | 2018-02-08 | 一种卡片激活的方法及装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN108288008B (zh) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110245532A (zh) * | 2019-06-06 | 2019-09-17 | 北京聚利科技股份有限公司 | 读卡系统及方法 |
| CN110807502B (zh) * | 2019-10-31 | 2024-04-09 | 天星数科科技有限公司 | Nfc智能卡的配置方法及装置 |
| CN112989851B (zh) * | 2021-02-08 | 2025-01-24 | 维沃移动通信有限公司 | Nfc卡片激活方法、装置和电子设备 |
| CN113312934B (zh) * | 2021-05-26 | 2023-04-25 | 维沃移动通信有限公司 | Nfc模拟卡选择方法、装置、电子设备和存储介质 |
| CN115442780B (zh) * | 2021-06-04 | 2025-10-28 | 华为技术有限公司 | 一种基于nfc的数据交互方法及设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101023434A (zh) * | 2004-07-15 | 2007-08-22 | 万事达卡国际股份有限公司 | 非接触式卡支付系统的冲突检测和避免方案 |
| CN101201906A (zh) * | 2007-12-21 | 2008-06-18 | 合肥工大高科信息技术有限责任公司 | 人员佩带电子标签及其自组网方法 |
| CN103632115A (zh) * | 2013-11-01 | 2014-03-12 | 福建鑫诺通讯技术有限公司 | 一种实现对卡片进行多频道数据采集方法 |
| CN106326797A (zh) * | 2016-08-19 | 2017-01-11 | 飞天诚信科技股份有限公司 | 一种非接触式卡片及其工作方法 |
| CN106407860A (zh) * | 2016-08-31 | 2017-02-15 | 广州地理研究所 | 多卡识别的防冲突方法及装置 |
| CN106934310A (zh) * | 2017-02-24 | 2017-07-07 | 飞天诚信科技股份有限公司 | 一种测试智能卡的方法及读卡器 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH08123919A (ja) * | 1994-10-28 | 1996-05-17 | Mitsubishi Electric Corp | 非接触icカードシステムおよびその通信方法 |
| CN102215050B (zh) * | 2010-04-02 | 2014-03-19 | 国民技术股份有限公司 | 一种带低频磁通信的射频sim卡冲突检测方法 |
-
2018
- 2018-02-08 CN CN201810130108.0A patent/CN108288008B/zh not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101023434A (zh) * | 2004-07-15 | 2007-08-22 | 万事达卡国际股份有限公司 | 非接触式卡支付系统的冲突检测和避免方案 |
| CN101201906A (zh) * | 2007-12-21 | 2008-06-18 | 合肥工大高科信息技术有限责任公司 | 人员佩带电子标签及其自组网方法 |
| CN103632115A (zh) * | 2013-11-01 | 2014-03-12 | 福建鑫诺通讯技术有限公司 | 一种实现对卡片进行多频道数据采集方法 |
| CN106326797A (zh) * | 2016-08-19 | 2017-01-11 | 飞天诚信科技股份有限公司 | 一种非接触式卡片及其工作方法 |
| CN106407860A (zh) * | 2016-08-31 | 2017-02-15 | 广州地理研究所 | 多卡识别的防冲突方法及装置 |
| CN106934310A (zh) * | 2017-02-24 | 2017-07-07 | 飞天诚信科技股份有限公司 | 一种测试智能卡的方法及读卡器 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN108288008A (zh) | 2018-07-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108288008B (zh) | 一种卡片激活的方法及装置 | |
| CN105740689B (zh) | 一种解锁控制方法及终端设备 | |
| US9978056B2 (en) | Smart card having multiple payment instruments | |
| CN101174308B (zh) | 用于控制rfid标签的响应的方法、rfid系统及rfid读取控制装置 | |
| JP6516133B2 (ja) | 通信デバイス及び通信システム | |
| CN111144520B (zh) | 一种ic卡读写方法、装置、存储介质及智能锁 | |
| CN101820465A (zh) | 一种绑定sim卡的终端及方法 | |
| WO2022252561A1 (zh) | 刷卡方法、卡控制器、电子设备及存储介质 | |
| CN106488539A (zh) | 终端中WiFi资源的处理方法和系统 | |
| CN115514680B (zh) | 用于验证模组兼容性的方法及装置、电子设备、存储介质 | |
| CN112926710A (zh) | Nfc模拟卡切换方法、移动终端及计算机可读存储介质 | |
| CN106570984A (zh) | 支持多种韦根格式的卡号验证方法、装置及系统 | |
| JP6194714B2 (ja) | ユニバーサルicカードおよびセキュリティ属性の照合方法 | |
| US9542632B2 (en) | IC card, portable electronic device, and reader/writer | |
| JP7468754B1 (ja) | 電子情報記憶媒体、icチップ、icカード、受信ブロック処理方法、及びプログラム | |
| US9010649B2 (en) | IC card, portable electronic device, and reader/writer | |
| CN105867938A (zh) | 指纹模组的识别方法及装置 | |
| KR20080088886A (ko) | 블루투스 장치의 재 연결 방법 및 장치 | |
| JP5799754B2 (ja) | Icチップ、icチップにおける処理方法、icチップ用処理プログラム、icカード、及び携帯端末 | |
| CN107393106B (zh) | 门禁数据写入方法、nfc源设备、门禁控制方法和系统 | |
| CN1794848B (zh) | 设备和认证卡之间数据同步控制的方法及用户认证卡 | |
| JP5838713B2 (ja) | Icチップ、uim、icチップにおける処理方法、icチップ用処理プログラム、及び携帯端末 | |
| JP2006012026A (ja) | 携帯型情報記憶媒体及びそのプログラム | |
| CN107977313A (zh) | 一种调试接口的调用方法和装置 | |
| WO2022110971A1 (zh) | 一种指纹卡的实现方法及指纹卡 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for 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 | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211228 |