UHF电子标签读写模块UHFReader86用户手册V1.10
数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0。
注:当MaskMem、MaskAdr 、MaskLen、MaskData为空时表示以完整的EPC号掩膜。
应答: Len Adr reCmd Status Data[] CRC-16 0xXX 0xXX 0x0c 0x00 —— LSB MSB 8.2.13 EAS报警检测
该命令检测电子标签的EAS报警。仅对NXP UCODE EPC G2标签有效。 命令: Len Adr Cmd Data[] CRC-16 0x04 0xXX 0x0d —— LSB MSB 应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x0d 0x00 —— LSB MSB 无EAS报警的时候,返回“无电子标签可操作”消息。 8.2.14 询查单张标签
命令: Len 0x04 应答: Data[] Len Adr reCmd Status 0x0f 0x01 Ant 0x01 Num 0x01 EPC ID EPC-1 CRC-16 LSB MSB Adr 0xXX Cmd 0x0f Data[] —— CRC-16 LSB MSB 0xXX 0xXX Ant:表示有哪些天线询查到该标签,本模块固定0x01。
Num:本次应答中包含的电子标签的EPC的个数。
EPC ID:读到的电子标签的EPC数据,EPC-1是第一张标签的EPC长度+第一张标签的EPC号+第一张标签的RSSI值。电子标签EPC号高字(EPC C1 G2中数据以字为单位)在前,每一个字的高字节在前。EPC长度以一个字节表示。RSSI值长度以一个字节表示。
8.2.15 块写命令
该命令一次能将多个字写入标签的保留区、EPC区、TID区或用户区。 命令:
23
UHF电子标签读写模块UHFReader86用户手册V1.10
Len 0xXX Adr 0xXX Cmd 0x10 Data[] Data[] —— CRC-16 LSB MSB Data参数如下: WNum 0xXX Pwd 4Byte ENum 0xXX 0xXX EPC 变长 2Bytes Mem 0xXX 0xXX WordPtr 0xXX 变长 Wdt 变长 MaskMem MaskAdr MaskLen MaskData 参数解析: WNum:待写入的字个数,一个字为2个字节。这里字的个数必须和实际待写入的数据个数相等。WNum必须大于0,不能超过12,即最多写12个字。若上位机给出的WNum为0或者WNum和实际字个数不相等,将返回参数错误的消息。
ENum:在(0x00~0x0f)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时无MaskMem、MaskAdr 、MaskLen、MaskData参数项。ENum为0xff时有MaskMem、MaskAdr 、MaskLen、MaskData参数项,无EPC参数项。如果为其它值将返回参数错误信息。
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可以为零。
MaskMem:一个字节,掩码区。0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。其他值保留。若命令中出现了其它值,将返回参数出错的消息。
MaskAdr:两个字节,掩码的起始位地址(单位:Bits)。范围0~16383。
MaskLen:一个字节,掩码的位长度(单位:Bits)。
MaskData:掩码数据。MaskData数据字节长度是MaskLen/8。如果MaskLen不是8的整
24
UHF电子标签读写模块UHFReader86用户手册V1.10
数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0。
注:当MaskMem、MaskAdr 、MaskLen、MaskData为空时表示以完整的EPC号掩膜。 应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x10 0x00 —— LSB MSB
8.2.16 读取Monza4QT工作参数
该命令用于读取标签当前设置的工作参数。仅对Impinj的Monza 4QT标签有效。
命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x11 —— LSB MSB Data参数如下: ENum EPC Pwd MaskMem MaskAdr MaskLen MaskData 0xXX 2Bytes 0xXX 变长 0xXX 变长 4Byte 参数解析: ENum:在(0x00~0x0f)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时无MaskMem、MaskAdr 、MaskLen、MaskData参数项。ENum为0xff时有MaskMem、MaskAdr 、MaskLen、MaskData参数项,无EPC参数项。如果为其它值将返回参数错误信息。
EPC:要读取数据的标签的EPC号。长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。命令中必须给出正确的访问密码。
MaskMem:一个字节,掩码区。0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。其他值保留。若命令中出现了其它值,将返回参数出错的消息。
MaskAdr:两个字节,掩码的起始位地址(单位:Bits)。范围0~16383。
MaskLen:一个字节,掩码的位长度(单位:Bits)。
MaskData:掩码数据。MaskData数据字节长度是MaskLen/8。如果MaskLen不是8的整数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0。
注:当MaskMem、MaskAdr 、MaskLen、MaskData为空时表示以完整的EPC号掩膜。 应答:
25
UHF电子标签读写模块UHFReader86用户手册V1.10
Len 0x07 Adr 0xXX reCmd Status 0x11 0x00 Data[] NC QTcontrol 0x00 1Byte CRC-16 LSB MSB 参数解析: QTcontrol:标签工作参数。
Bit0:标签当前使用的镜像页。Bit0 = 0时表示private;Bit0 = 1时表示public。 Bit1:标签是否使能距离保护。Bit1 = 0时表示不使能;Bit1 = 1时表示使能。 其他值保留。
8.2.17 设置Monza4QT工作参数
该命令用于配置标签的工作参数。仅对Impinj的Monza 4QT标签有效。 命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x12 —— LSB MSB Data参数如下: ENum EPC QTcontrol1 QTcontrol0 Pwd MaskMem MaskAdr MaskLen MaskData 0xXX 变长 0x00 0xXX 4Byte 0xXX 2Bytes 0xXX 变长 参数解析: ENum:在(0x00~0x0f)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时无MaskMem、MaskAdr 、MaskLen、MaskData参数项。ENum为0xff时有MaskMem、MaskAdr 、MaskLen、MaskData参数项,无EPC参数项。如果为其它值将返回参数错误信息。
EPC:要读取数据的标签的EPC号。长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
QTcontrol1:保留字节,取定值0x00。
QTcontrol0:标签工作参数。
Bit0:标签当前使用的镜像页。Bit0 = 0时表示private;Bit0 = 1时表示public。 Bit1:标签是否使能距离保护。Bit1 = 0时表示不使能;Bit1 = 1时表示使能。 其他值保留。
Pwd:4个字节的访问密码。32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。命令中必须给出正确的访问密码。
MaskMem:一个字节,掩码区。0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。其他值保留。若命令中出现了其它值,将返回参数出错的消息。
26
UHF电子标签读写模块UHFReader86用户手册V1.10
MaskAdr:两个字节,掩码的起始位地址(单位:Bits)。范围0~16383。
MaskLen:一个字节,掩码的位长度(单位:Bits)。
MaskData:掩码数据。MaskData数据字节长度是MaskLen/8。如果MaskLen不是8的整数倍,则MaskData数据字节长度为[MaskLen/8]取整再加1。不够的在低位补0。
注:当MaskMem、MaskAdr 、MaskLen、MaskData为空时表示以完整的EPC号掩膜。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x12 0x00 —— LSB MSB 8.2.18 指定掩码扩展读数据
这个命令读取标签的保留区、EPC存储区、TID存储区或用户存储区中的数据。从指定的地址开始读,以字为单位。
命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x15 —— LSB MSB Data参数如下: Data[] ENum EPC Mem WordPtr Num Pwd MaskMem MaskAdr MaskLen MaskData 0xXX 2Bytes 0xXX 变长 0xXX 变长 0xXX 2Bytes 0xXX 4Byte 参数解析: ENum:在(0x00~0x0f)范围内表示EPC号长度,以字为单位。EPC的长度在15个字以内。此时无MaskMem、MaskAdr 、MaskLen、MaskData参数项。ENum为0xff时有MaskMem、MaskAdr 、MaskLen、MaskData参数项,无EPC参数项。如果为其它值将返回参数错误信息。
EPC:要读取数据的标签的EPC号。长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数长度。高字在前,每个字的高字节在前。这里要求给出的是完整的EPC号。
Mem:一个字节。选择要读取的存储区。0x00:保留区;0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区。其他值保留。若命令中出现了其它值,将返回参数出错的消息。
WordPtr:两个字节,高字节在前。指定要读取的字起始地址。0x0000 表示从第一个字(第一个16位存储区)开始读,0x0001表示从第2个字开始读,依次类推。
Num:一个字节。要读取的字的个数。不能设置为0x00,否则将返回参数错误信息。Num不能超过120,即最多读取120个字。若Num设置为0或者超过了120,将返回参数出错的
27