搜索
bottom↓
回复: 10

RFID之rc522读S50卡认证后无法休眠(Halt),是什么原因?

[复制链接]

出0入0汤圆

发表于 2015-10-16 18:26:55 | 显示全部楼层 |阅读模式
        根据14443-3协议进行卡片操作(射频区域内只有一张卡)时,经 initial - request(0x26,搜未休眠卡)  - anticollision -select 这四个步骤之后,如果直接执行halt 命令,卡片会进入休眠(Halt)状态。下一次执行request命令(0x26,搜未休眠卡) 就无法寻到休眠后的卡片。但如果在select步骤后,进行卡片 authentication 后再执行Halt 指令,下一次执行request 命令仍然可以寻到卡片。类似卡片休眠失败。 卡片休眠失败有哪些原因可能导致呢?

        如右下图所示(区域内只有一张卡片)。在执行完select card 命令后,如果直接halt 命令则卡片会进入休眠,下一次request  standard 命令则无法寻到卡片。但如果select card 之后执行 3 Pass Authentication sector specific 功能,此时再执行Halt 命令则无法休眠成功(下一次执行request standard指令(0x26)则仍可以寻到卡片)。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2015-10-21 11:08:25 | 显示全部楼层
不懂帮顶,会不会是设置了加密后所有传输的命令都被加密了,但是Halt命令需要明文?

出0入0汤圆

 楼主| 发表于 2015-10-21 23:29:54 | 显示全部楼层
runapp 发表于 2015-10-21 11:08
不懂帮顶,会不会是设置了加密后所有传输的命令都被加密了,但是Halt命令需要明文? ...

有可能,但14443-3协议里面没有提到halt指令需要明文。不过谢谢你的idea,我朝着这个思路试试!

出0入0汤圆

发表于 2015-11-14 13:36:10 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2016-7-29 18:42:01 | 显示全部楼层

楼主你好,我也在开发MFRC522,我跟你遇到的问题正好相反。
我这边的情况是认证成功后可以成功Halt,即Halt后不移开卡,接下来的Request中被Halt的卡不会响应。
但是如果认证不成功,或者Select之后直接Halt,那么这个卡在后续的Request中会继续响应。

楼主还在关注这个帖子吗?想问下楼主是怎么做到Halt的?

我是直接发送Halt命令,0x50 0x00 (后面还有两个字节的CRC:0x57 0xCD)

出0入0汤圆

发表于 2016-9-16 14:29:58 | 显示全部楼层
fnems 发表于 2016-7-29 18:42
楼主你好,我也在开发MFRC522,我跟你遇到的问题正好相反。
我这边的情况是认证成功后可以成功Halt,即Hal ...

你好,请问你的问题解决了吗?请指点

我的情况是
1-request->anticollision->select->authentication, 认证成功后进行Halt,即Halt后不移开卡,接下来的Request中被Halt的卡不会响应。但是即Halt后移开卡,接下来的Request中被Halt的卡再次响应。

2-request->anticollision->select->Halt,那么这个卡在后续的Request中会继续响应。

Halt命令,0x50 0x00

出0入0汤圆

发表于 2016-9-16 20:40:45 | 显示全部楼层
zirong0804 发表于 2016-9-16 14:29
你好,请问你的问题解决了吗?请指点

我的情况是

你好

我的情况同你描述的一样。
对于第二点,我的猜测是因为Mifare卡仅仅符合14443A-3标准,而不符合14443A-4标准。后者标准中有Deactive功能的要求。所以在认证之前Mifare无法被Halt。

关于“Halt后移开卡,接下来的Request中被Halt的卡再次响应”,移开卡之后卡片相当于断电,再次进入射频场后相当于上电复位,所以响应Request属于正常情况。

出0入0汤圆

发表于 2016-9-17 09:26:41 | 显示全部楼层
fnems 发表于 2016-9-16 20:40
你好

我的情况同你描述的一样。

谢谢你的回答,之前关注过你的一些帖子。对于RC522想再请教个问题:
1-想实现扣款和充值功能,调用PcdValue函数一直出错,而且这个函数(也只有这函数)参数是unsigned char。方便的话分享个扣款充值例程,学习下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2016-9-17 12:27:00 | 显示全部楼层
zirong0804 发表于 2016-9-17 09:26
谢谢你的回答,之前关注过你的一些帖子。对于RC522想再请教个问题:
1-想实现扣款和充值功能,调用PcdVal ...


你好

我对Mifare卡的关注大部分在于其认证过程。认证之后的卡片操作经验很少。

对于你提到的卡片金额操作错误问题,由于我不知道错误代码与函数细节,所以没法对错误排查提供帮助。
例程方面,我觉得NXP公司自己的MFRC522 Demo很有参考价值。Demo的代码分层、结构也比网上常见的相关MFRC522代码更正规。
具体代码请查看附件。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2016-9-18 19:54:51 | 显示全部楼层
fnems 发表于 2016-9-17 12:27
你好

我对Mifare卡的关注大部分在于其认证过程。认证之后的卡片操作经验很少。

谢谢,我已解决,原因是我写入的数据16字节的格式有问题。
另外一个小问题,为啥你对Mifare的关注大部分在认证过程,这部分是一个有趣的知识?

出0入0汤圆

发表于 2016-12-23 19:52:57 | 显示全部楼层
有部分的卡没有支持halt指令。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-24 01:34

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表