UHF一体机电子标签读写器用户手册v2.0
0xXX 0xXX 变长 0xXX 0xXX 变长 4Byte 0xXX 0xXX 参数解析: WNum:待写入的字个数,一个字为2个字节。这里字的个数必须和实际待写入的数据个数相等。WNum必须大于0,若上位机给出的WNum为0或者WNum和实际字个数不相等,将返回参数错误的消息。
ENum:EPC号长度。以字为单位。EPC的长度在15个字以内,可以为0。否则返回参数错误信息。
EPC:要写入数据的标签的EPC号。长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
Mem:一个字节,选择要写入的存储区。0x00:保留区;0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。其他值保留。若命令中出现了其它值,将返回参数出错的消息。
WordPtr:一个字节,指定要写入数据的起始地址。
Wdt:待写入的字,字的个数必须与WNum指定的一致。这是要写入到存储区的数据。每个字的高字节在前。如果给出的数据不是整数个字长度,Data[]中前面的字写在标签的低地址中,后面的字写在标签的高地址中。比如,WordPtr等于0x02,则Data[]中第一个字(从左边起)写在Mem指定的存储区的地址0x02中,第二个字写在0x03中,依次类推。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。在写操作时,应给出正确的访问密码,当相应存储区未设置成密码锁时Pwd可以为零。
MaskAdr:一个字节,掩模EPC号的起始字节地址。0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推。
MaskLen:一个字节,掩模的字节数。掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息。
注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x03 0x00 —— LSB MSB 8.2.4 写EPC号
这个命令向电子标签写入EPC号。写入的时候,天线有效范围内只能有一张电子标签。
16
UHF一体机电子标签读写器用户手册v2.0
命令: Len Adr Cmd ENum 0xXX Data[] Pwd 4Byte WEPC 变长 CRC-16 0xXX 0xXX 0x04 LSB MSB 参数解析: ENum:1个字节。要写入的EPC的长度,以字为单位。不能为0,也不能超过15,否则返回参数错误信息。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。在本命令中,当EPC区设置为密码锁、且标签访问密码为非0的时候,才需要使用访问密码。在其他情况下,Pwd为零或正确的访问密码。
WEPC:要写入的EPC号,长度必须和ENum说明的一样。WEPC最小1个字,最多15个字,否则返回参数错误信息。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x04 0x00 —— LSB MSB 8.2.5 销毁标签
这个命令用来销毁标签。标签销毁后,永远不会再处理读写器的命令。 命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x05 Data[] ENum 0xXX EPC 变长 Killpwd 4Byte MaskAdr 0xXX MaskLen 0xXX —— LSB MSB Data参数如下: 参数解析: ENum:EPC号长度,以字为单位。EPC的长度在15个字以内,不能为0,否则返回参数错误信息。
EPC:要写入数据的标签的EPC号。长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
Killpwd:4个字节的销毁密码。32位的销毁密码的最高位在Killpwd的第一字节(从左往右)的最高位,销毁密码最低位在Killpwd第四字节的最低位,Killpwd的前两个字节放置销毁密码的高字。要销毁标签,则销毁密码必须为非0,因为密码为0的标签是无法销毁的。如果命令中的销毁密码为0,则返回参数错误的应答。
17
UHF一体机电子标签读写器用户手册v2.0
MaskAdr:一个字节,掩模EPC号的起始字节地址。0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推。
MaskLen:一个字节,掩模的字节数。掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息。
注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x05 0x00 —— LSB MSB 8.2.6 设定存储区读写保护状态
这个命令可以设定保留区为无保护下的可读可写、永远可读可写、带密码可读可写、永远不可读不可写;可以分别设定EPC存储区、用户存储区为无保护下的可写、永远可写、带密码可写、永远不可写;TID存储区是只读的,永远都不可写。EPC存储区、TID存储区和用户存储区是永远可读的。
标签的保留区一旦设置为永远可读写或永远不可读写,则以后不能再更改其读写保护设定。标签的EPC存储区、TID存储区或用户存储区若是设置为永远可写或永远不可写,则以后不能再更改其读写保护设定。如果强行发命令欲改变以上几种状态,则电子标签将返回错误代码。
在把某个存储区设置为带密码可读写、带密码可写或把带密码锁状态设置为其它非密码锁状态时,必须给出访问密码,所以,在进行此操作前,必须确保电子标签已设置了访问密码。
命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x06 —— Data[] ENum 0xXX EPC 变长 Select 0xXX SetProtect 0xXX Pwd 4Byte MaskAdr 0xXX MaskLen 0xXX LSB MSB Data参数如下: 参数说明: ENum:EPC号长度,以字为单位。EPC的长度在15个字以内,不能为0,否则返回参数错误信息。
EPC:要写入数据的标签的EPC号。长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
18
UHF一体机电子标签读写器用户手册v2.0
Select:一个字节。定义如下:
Select为0x00时,控制Kill密码读写保护设定。 Select为0x01时,控制访问密码读写保护设定。 Select为0x02时,控制EPC存储区读写保护设定。 Select为0x03时,控制TID存储区读写保护设定。 Select为0x04时,控制用户存储区读写保护设定。
其它值保留,若读写器接收到了其他值,将返回参数出错的消息,并且不执行命令。
SetProtect:SetProtect的值根据Select的值而确定。
当Select为0x00或0x01,即当设置Kill密码区或访问密码区的时候,SetProtect的值代表的意义如下:
0x00:设置为无保护下的可读可写 0x01:设置为永远可读可写 0x02:设置为带密码可读可写 0x03:设置为永远不可读不可写
当Select为0x02、0x03、0x04的时候,即当设置EPC区、TID区及用户区的时候,SetProtect的值代表的意义如下:
0x00:设置为无保护下的可写 0x01:设置为永远可写 0x02:设置为带密码可写 0x03:设置为永远不可写
当Select与SetProtect出现了其他值的时候,将返回参数出错的消息,并且不执行命令。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。必须给出正确的访问密码。
MaskAdr:一个字节,掩模EPC号的起始字节地址。0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推。
MaskLen:一个字节,掩模的字节数。掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息。
注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x06 0x00 —— LSB MSB 19
UHF一体机电子标签读写器用户手册v2.0
8.2.7 块擦除
此命令可以擦除标签的保留区、EPC存储区、TID存储区或用户存储区的若干字。 命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x07 —— Data[] ENum 0xXX EPC 变长 Mem 0xXX WordPtr 0xXX Num 0xXX Pwd 4Byte MaskAdr 0xXX MaskLen 0xXX LSB MSB Data参数如下: 参数解析: ENum:EPC号长度。以字为单位。EPC的长度在15个字以内,不能为0,否则返回参数错误信息。
EPC:要写入数据的标签的EPC号。长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
Mem:1个字节,选择要读取的存储区。0x00:保留区;0x01:EPC区;0x02:TID存储区;0x03:用户存储区。其他值保留,若命令中出现了其它值,则返回参数错误信息。
WordPtr:1个字节,指定要擦除的字起始地址。0x00 表示从第一个字(第一个16位存储体)开始擦除,0x01表示从第2个字开始擦除,依次类推。当擦除EPC区时,WordPtr必须大于等于0x01,若小于0x01,则返回参数错误消息。
Num:1个字节,指定要擦除的字的个数。从WordPtr指定的地址开始擦除,擦除Num指定个数的字。若Num为0x00,则返回参数错误信息。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。当进行擦除操作时,并且相应存储区设置为密码锁的时候,才必须使用正确的访问密码。其它情况下,Pwd为零或正确的访问密码。
MaskAdr:一个字节,掩模EPC号的起始字节地址。0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推。
MaskLen:一个字节,掩模的字节数。掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息。
注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x07 0x00 —— LSB MSB
20