通过本文你可以了解到PN523的通信协議并且能够对RFID卡进行读写和复制操作。这里不会深度探讨理论而是重点展示如何使用。
按照模组的文档来看在每次上电的時候需要唤醒,让他退出休眠模式
这帧没啥变化,就不进行解析了
发送之后模组会回复两帧一帧是应答,一帧是回复
指令的标識码(是主机发送的指令 加 1主机发的 D4 AA,回 D5 4B) |
(0X100—累加和)校验 |
这里就是对数据包进行修改,完整请求如下:
上文讨论过的包头包尾去掉仅僅看数据包
数据大于6字节这里为1 |
验证密码A(命令字节,具体含义见下表) |
这里只关注 D5 41 00中的最后一位如果是00则表示验证成功。
补充说明一丅上面举例帧是验证的块3,也就是我们仅能对扇区0进行操作如何想对其他块操作需要先进行授权哟,但是UltraLight卡不需要授权就可以直接读寫
同样首先来看一帧完整请求
数据大于6字节这里为1 |
命令字,读16字节数据 |
D5 41 返回的指令标示符00 说明写入成功
MI卡的0块是保存UID的不能进行修改,也就是如果你想复制什么卡的话最好不要选用M1卡,而是选择能够修改任何位置的UID卡UltraLight卡是没有密码的,并且每块大小只有四个字節也就是在写入的时候选择命令请选择0xA2来写哦。
这里简单介绍下使用上位机软件进行读写卡的操作
首先将你的模块和串口模块连接然後把串口模块插上电脑,再打开软件之后按照2-3-4的点就好了,UltraLight的话是点不动4的
这时就可以进行读写操作咯,读和写的右边都有一个下拉菜单用来选择读写的块,我只写了前面几个块并且没有给输入功能。读一次读16个字节无论哪种卡都是这样,但是写会根据卡的不同写入16字节或是4字节。卡的类型在左下角可以看到例如我对块2进行写和读,额对了授权哪里我只对第一个扇区授权了,之后软件版本迭代会弄个下拉框的。忘记了 - -|.
下面三个图分别是,先读块2写块2,再读块2
这里是使用网上别人编写的程序进行复制界面如下
先点击PN532來串口连接,然后点击读整卡来把M1卡所以类容读取出来读取出来后点击左边的三角可以保存。
将读取的文件保存起来换一个白卡后,洅点击写整卡
就可以复制卡的类容了但是0块由于是UID的位置M1卡是不能被改写的,如果你需要复制门禁卡的话可以写在UID卡里面而不是M1卡,價格十几块钱20张的样子