关于PN532 读取二代证 UID

2019-12-25 18:50发布

现在手上正在调试  用PN532读取二代证的UID   目前的情况是是 操作 M1 卡  和  FELIC卡  标准 TYPE B卡 都是OK的 但是操作二代证不成功     
是否有可能  二代证的 ATRB返回值非标  导致请求到不到呢
有做过的么?  谢谢了
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
47条回答
peiyan
2019-12-27 12:43
RC523 寄存器配置:
       RcSetReg(JREG_TXASK, 0x00);
        RcSetReg(JREG_CONTROL, 0x10);
        RcSetReg(JREG_TXMODE, 0x03);
        RcSetReg(JREG_RXMODE, 0x0B);
        RcSetReg(JREG_TYPEB, 0x03);
        RcSetReg(JREG_DEMOD, 0x4D);
        RcSetReg(JREG_GSN, 0xFF);
        RcSetReg(JREG_CWGSP, 0x3F);
        RcSetReg(JREG_MODGSP, 0x18);
        RcSetReg(JREG_RXTHRESHOLD, 0x4D);
        RcSetReg(JREG_MODWIDTH,0x68);

身份证读卡器的程序流程如下:

先发送0×05,0×00,0×00询卡命令后,身份证返回12字节卡类型代码,不同身份证返回的数据不一样。比如对两个身份证发送询卡命令后分别返回

0×50 0×00 0×00 0×00 0×00 0xd1 0×03 0×86 0×0c 0×00 0×80 0×80

0×50 0×00 0×00 0×00 0×00 0xd1 0×03 0×86 0×07 0×00 0×80 0×90

询卡成功后,发送SELECT命令:0×1d 0×00 0×00 0×00 0×00 0×00 0×08 0×01 0×08 对二代身份证进行选卡操作。这时身份证返回的第一个字节应该等于SELECT命令的最后一个字节0×08,根据这个条件来判断SELECT命令是否操作成功。


最后发送GUID命令:0×00 0×36 0×00 0×00 0×08,身份证会返回10字节数据,其中前8字节就是身份证的唯一ID,后两字节是0×90 0×00。可以用后两字节来判断得到的是否是身份证ID。

一周热门 更多>