内容发布更新时间 : 2024/12/22 13:22:04星期一 下面是文章的全部内容请认真阅读。
UHF一体机电子标签读写器用户手册v2.0
8.2.16 块写命令
该命令一次能将多个字写入标签的保留区、EPC区、TID区或用户区。 命令: Len Adr Cmd Data[] CRC-16 0xXX 0xXX 0x10 —— Data[] WNum 0xXX ENum 0xXX EPC 变长 Mem 0xXX WordPtr 0xXX Wdt 变长 Pwd 4Byte MaskAdr 0xXX MaskLen 0xXX LSB MSB Data参数如下: 参数解析: 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号掩模。
26
UHF一体机电子标签读写器用户手册v2.0
应答: Len Adr 0x05 0xXX reCmd 0x10 Status 0x00 Data[] —— CRC-16 LSB MSB 8.3 18000-6B命令
8.3.1寻查命令(单张)
本命令只能询查单张电子标签。如果多张标签同时处于天线有效范围内,可能无法询查
到电子标签。
命令: Len Adr Cmd CRC-16 0x04 0xXX 0x50 LSB MSB CRC-16 LSB MSB 应答: Len Adr reCmd Status Data[] 0x0d 0xXX 0x50 0x00 ID 参数解析: ID:标签的UID号,8个字节,低字节在前。
8.3.2 按条件寻查标签
本命令按照给定的条件询查电子标签。 命令: Data[] Len Adr Cmd Condition Address Mask 0x0f 0xXX 0x51 0xXX 0xXX 0xXX Word_data 8 Bytes CRC-16 MSB LSB 参数解析: Condition:选择标签的要求。0x00:等于条件;0x01:不等于条件;0x02:大于条件;0x03:小于条件。
Address:比较的起始字节地址。
Mask:掩码。用来指定要比较的数据。
Word_data:比较的条件,用来比较的数据。
Mask的每一位对应Word_data的一个字节。Mask的最高位(Bit7)对应Word_data的最左边的一个字节。Mask的最低位 (Bit0)对应Word_data的最右边一字节。Word_data是用来与标签中的数据进行比较的。Word_data的最左边一字节与电子标签的Address地址上的数据进行比较,最右边一字节与Address+7地址上的数据进行比较。其它依此类推。Mask相应位为1,表示要把该位在Word_data中对应的字节与标签中对应的字节进行比较;为0则不比较。
27
UHF一体机电子标签读写器用户手册v2.0
应答: Len Adr reCmd Status Num Data[] CRC-16 0xXX 0xXX 0x51 0xXX 0xXX UID1, UID2… LSB MSB 参数解析: Status是应答的状态,其代表的意义如下表所述: Status 说明 0x15 命令执行结束,同时返回询查到的电子标签数据 0x16 询查时间结束,命令执行强制退出,同时返回已询查到的标签数据 如果读到的标签数量无法在一条消息内传送完,将分多次发送。如果0x17 Status为0x03,则表示这条数据结束后,还有数据。 还有电子标签未读取,电子标签数量太多,读写器的存储区已满,返回0x18 此状态值,同时返回已询查到得电子标签数据。 参数解析: Num:本条命令中包含的UID个数。范围为1 – 31。
Data[]:电子标签的UID。每个UID是8个字节,低字节在前。当无UID时(即Num为0时),Data[]为空。 8.3.3 读数据
该命令用来从电子标签的某个指定地址开始读若干个字节。 命令: Data[] Len Adr Cmd CRC-16 Address ID Num 0x0e 0xXX 0x52 0xXX 8 Bytes 0xXX LSB MSB 参数解析: Address:读数据的起始字节地址。地址范围为0 ~ 223。如果地址超出223,将返回参数错误信息。
Num:要读的数据个数,以字节为单位。 Num的范围是 1 ~ 32。如果Address+Num大于224、或是Num超过32、或Num为0,读写器将返回参数错误信息。
ID:要读数据的电子标签的ID。8个字节,低字节在前。
应答: Len Adr reCmd Status Data[] CRC-16 0xXX 0xXX 0x52 0x00 Data LSB MSB 参数解析: Data:读到的数据,低字节在前。
28
UHF一体机电子标签读写器用户手册v2.0
8.3.4 写数据
该命令向指定的电子标签写入若干个字节。 命令: Data[] Len Adr Cmd Address ID Wdata 0xXX 0xXX 0x53 0xXX 8 Bytes 变长 CRC-16 LSB MSB 参数解析: Address:写入数据的起始地址。地址范围:8 ~ 223。地址如果超出范围,将返回参数错误信息。
ID:要读数据的电子标签的ID。8个字节,低字节在前。
Wdata:要写入的数据。Wdata的长度限定在32个字节以内。Wdata的高字节写在电子标签的低地址。如果命令中Wdata的长度为0(即Wdata部分不存在)或超过32,将返回参数错误信息。如果Address加Wdata的长度大于224,也将返回参数错误信息。
应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x53 0x00 —— LSB MSB 8.3.5 锁定检测
该命令用来检测指定的字节是否锁定。 命令: Data[] Len Adr Cmd CRC-16 Address ID 0x0d 0xXX 0x54 0xXX 8 Bytes LSB MSB 参数解析: Address:要检测是否被锁定的字节的地址。范围:0 ~ 223。超过这个范围将返回参数错误信息。
ID:要读数据的电子标签的ID。8个字节,低字节在前。 应答: Len Adr reCmd Status Data[] CRC-16 0x06 0xXX 0x54 0x00 LockState LSB MSB 参数解析: LockState: 0x00:该字节未被锁定 0x01:该字节已经被锁定
29
UHF一体机电子标签读写器用户手册v2.0
8.3.6 锁定
该命令锁定指定的字节。 命令: Len Adr Cmd 0x55 Data[] CRC-16 Address ID 0xXX 8 Bytes LSB MSB 0x0d 0xXX 参数解析: Address:要锁定的字节地址。范围:8 ~ 223。超过这个范围将返回参数错误信息。
ID:要读数据的电子标签的ID。8个字节,低字节在前。 应答: Len Adr reCmd Status Data[] CRC-16 0x05 0xXX 0x55 0x00 —— LSB MSB 8.4读写器自定义命令
8.4.1 读取读写器信息
当上位机通过发送命令数据块让读写器执行该命令后,将获得读写器的信息,这其中包括读写器地址(Adr)、读写器软件版本(Version)、读写器类型代码、读写器协议支持信息、读写器的频率范围、读写器的功率、询查时间等信息。
命令: Len Adr Cmd Data[] CRC-16 0x04 0xXX 0x21 —— LSB MSB 应答: Len Adr reCmd Status Data[] CRC-16 Version,Type,Tr_Type,0x0d 0xXX 0x21 0x00 LSB MSB dmaxfre,dminfre,Power,Scntm 参数解析: 长度参数 说明 (Byte) Version 2 版本号,高字节代表主版本号,低字节代表子版本号 Type 1 读写器类型代号。0x09代表UHFREADER18。 读写器支持的协议信息,Bit1为1表示支持18000-6c协议, Tr_Type 1 Bit0为1表示18000-6B协议,其它位保留。。 Bit7-Bit6用于频段设置用;Bit5-Bit0表示当前读写器工作dmaxfre 1 的最大频率。 Bit7-Bit6用于频段设置用;Bit5-Bit0表示当前读写器工作dminfre 1 的最小频率。
30