POSTAMBLE:帧尾 一般为 00。
2、读写示例分析
使用的是pn532为主控芯片的NFC串口模块,来读写M1卡,注意所有数字为16进制形式。用usb转串口模块将pn532与电脑连接,串口助手发送选择hex。
波特率默认:115200 ,数据位:8 ,校验位:无, 停止位:1 ,流控:无。
硬件连接正常后开始操作,详细步骤分析:
(1)唤醒PN532:
[mw_shl_code=arduino,true]PC->PN532: 55 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 03 fd d4 14 01 17 00
PN532->PC: 00 00 FF 00 FF 00 00 00 FF 02 FE D5 15 16 00[/mw_shl_code]
其中第一条不符合普通的发送格式,比较特殊。如果没有正常返回,检查硬件连接和波特率。
(2)获取卡UID,也就是卡的唯一ID号,全球就这一个(理论上):
[mw_shl_code=arduino,true]PC->PN532: 00 00 FF 04 FC D4 4A 02 00 E0 00[/mw_shl_code]
04 //代表有四个数据分别是 D4 4A 02 00;
FC //这是04的补码 ;
4a //命令;
02 //卡数量,0--2;
00 //波特率 106K;
E0 //校验位 D