新闻中心

RFID高频写码方式

您的当前位置: 首 页 >> RFID新闻中心 >> RFID高频写码方式

RFID高频写码方式

发布日期:2020-06-26 15:43:31 作者:Ling 点击:14574

1.RFID高频标签存储结构

      S50卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,我们也将16个扇区的64个块按绝对地址编号为0~63,
说明:
● 第0扇区的块0(即绝对地址0块),它用于存放厂商代码,已经固化,不可更改。
● 每个扇区的块0、块1、块2为数据块,可用于存储数据。
● 每个扇区的块 3 为控制块,包括了密码 A、存取控制、密码 B,对该数据块操作要谨慎。
    通信原理。命令由读写器发出,根据相应区读写条件受数字控制单元的控制。
该实验平台配备的RFID高频模块设有UART通信接口,波特率默认为19200,1位起始位,8位数据位,1位停止位。UART工作在半双工方式,即模块接收指令后才会做出应答。
通信命令格式如下:
     前导头:0xAABB,共两个字节,若数据域中也包含0xAA,那么模块会自动在它后面插入一个字节数据0,但是通信长度的值不变。
     通信长度:去掉前导头之外的通讯帧所有字节数(含通信长度字节本身)。
     命令字:各种用户可用命令
     说明:钱包操作涉及的值都是低字节在前,值为四字节有符号数;密钥标志设为0。
     校验码:去掉前导头和校验码字节之外,所有通信帧所含字节的异或值。
CPU发送命令帧之后,需要等待读取返回值,返回值的格式如下:
正确:前导头+通信长度+上次所发送的命令字+数据域+校验码
错误:前导头+通信长度+上次所发送的命令字的取反+校验码
实践内容及步骤
1.读卡器连接
(1)用USB线将RFID高频读卡器连接到PC上,读卡器的红色电源指示灯亮。若PC弹出“发现新硬件”对话框,说明该PC未安装过PL2303驱动(USB转串口),驱动文件位于“资料/usb_driver.rar”。
(2)运行“RFID测试”软件,右击“我的电脑”,在“设备管理器”中查看PL2303驱动对应的串口号
(3)然后在“RFID测试”软件的操作区对串口参数进行设置:波特率—19200、数据位—8位、停止位—1奇偶校验—无,并打开串口。

2.读卡(标签)类型
(1)将一张高频标签放到RFID高频读卡器上面,绿色信号指示灯亮。打开“RFID测试”软件的“RFID”界面,单击“读卡类型”命令,执行结果如图4-40所示。
(2)根据RFID高频模块通信协议和指令系统可知,在“发送区”的数据串中,“AA BB”为前导头,“02”为通信长度,“19”为命令字(读卡的类型),“1B”为“02 19 1B”这3个字节的校验码。
(3)在“接收区”中收到的数据串中“AA BB”为前导头,“04”为通信长度,“19”为命令字(与“发送区”中的命令字相同,说明刚才的指令执行成功),“04 00”为数字域,即S50卡的编号,“19”为“04 19 04 00”这4个字节的校验码。

3.读卡序列号

4.初始化钱包
(1)在“输入区”选择块8作为“钱包”(除了进行修改密码操作以外不要选择控制块),“密码”设为6个字节的0xFF,数据编辑框输入100,然后发送“初始化钱包”命令,
(2)单击“查看钱包”命令,返回的数据为“64 00 00 00”。钱包操作涉及的值是低字节在前,因此返回的数据转换成十进制数为100,说明钱包初始化成功。
5.钱包充值
(1)在“输入区”的“数据”第1个编辑框中输入“300”,然后单击“钱包充值”命令。
(2)单击“查看钱包”命令,返回的数据为“90 01 00 00”,转换成十进制数为400,说明钱包充值成功。

6.钱包扣款
(1)在“输入区”的“数据”第1个编辑框中输入“50”,然后点击“钱包扣款”命令。
7.读数据块
“输入区”的块号不变,“密码”不变,单击“读数据块”命令,返回的数据为“5E 01 00 00 A1 FE FF FF 5E 01 00 00 00 FF 00 FF”,共16个字节。如
8.写数据块
(1)“输入区”的块号不变,“密码”不变,“数据”段的 4 个编辑框中输入 0,然后单击“写数据块”命令。
(2)单击“读数据块”命令,返回的数据为0,说明数据写操作成功。
9.修改密码
    S50卡的存储空间是通过扇区进行管理的,密码存放在每个扇区的控制块。因此我们修改密码是相对扇区而言,不是针对某个块。
(1)在“输入区”中选择扇区的控制块块号。块号8所在的扇区编号为2,因此该扇区的控制块块号为11。密码为默认的6个字节FF。单击“读数据块”命令
(2)假设密码要修改为“01 02 03 04 05 06”,用这6个字节值将上一步读出的数据串中前6个字节替换掉,组合成新的16字节数据串“01 02 03 04 05 06 FF 07 80 69 FF FF FF FF FF FF”。然后把这个数据串填入“输入区”的数据编辑框中,最后单击“修改密码”命令。
(2)假设密码要修改为“01 02 03 04 05 06”,用这6个字节值将上一步读出的数据串中前6个字节替换掉,组合成新的16字节数据串“01 02 03 04 05 06 FF 07 80 69 FF FF FF FF FF FF”。然后把这个数据串填入“输入区”的数据编辑框中,最后单击“修改密码”命令。
(3)在“输入区”中选择块8,密码改为旧密码“FF FF FF FF FF FF”,然后单击“读数据块”命令,如图4-51所示。模块返回的数据为“AA BB 02 DE DC”,命令字变为0xDE,即“读数据块”命令(0x21)的反码,说明用以前旧的密码进行读数据块操作失败。
(4)将“输入区”中密码改为新密码“01 02 03 04 05 06”,然后再单击“读数据块”命令,如图4-52所示。数据块8的16个字节数据被读取出来,说明用新的密码进行读数据块操作成功。

本文网址:http://www.hysrfid.com/article/RFIDgaopinxiemafangshi.html

关键词: RFID高频写码方式RFID.高频写码方式

芯创益技术专注于RFID标签读写器设备生产厂家,所提供RFID解决方案集成RFID系统、RFID标签,RFID读写器等设备应用,为国内外企业提供完善高效的RFID技术应用。
服务热线  13691762133
服务热线  13691762133服务热线 13691762133
微信二维码
手机二维码
返回顶部
返回顶部返回顶部