文档详情

UHF电子标签读写器UHFReader18用户手册v20

无***
实名认证
店铺
DOC
472.90KB
约38页
文档ID:153233929
UHF电子标签读写器UHFReader18用户手册v20_第1页
1/38

UHF一体机电子标签读写器用户手册v2.0RFID改变识别的距离杭州恒竣科技有限公司目录一、通讯接口规格 4二、协议描述 4三、数据的格式 51. 上位机命令数据块 52. 读写器响应数据块 5四、操作命令总汇 61. EPC C1 G2(ISO18000-6C)命令 62. 18000-6B命令 73. 读写器自定义命令 7五、命令执行结果状态值 8六、电子标签返回错误代码 12七、标签存储区及需要注意的问题 12八、操作命令详细描述 138.1 命令概述 138.2 EPC C1G2命令 138.2.1 询查标签 138.2.2 读数据 148.2.3 写数据 158.2.4 写EPC号 168.2.5 销毁标签 178.2.6 设定存储区读写保护状态 188.2.7 块擦除 208.2.8 读保护设置(根据EPC号设定) 218.2.9 读保护设定(不需要EPC号) 218.2.10 解锁读保护 228.2.11 测试标签是否被设置读保护 228.2.12 EAS报警设置 238.2.13 EAS报警检测 248.2.14 user区块锁 248.2.15 询查单张标签 258.2.16 块写命令 268.3 18000-6B命令 278.3.1寻查命令(单张) 278.3.2 按条件寻查标签 278.3.3 读数据 288.3.4 写数据 298.3.5 锁定检测 298.3.6 锁定 308.4读写器自定义命令 308.4.1 读取读写器信息 308.4.2 设置读写器工作频率 318.4.3 设置读写器地址 328.4.4 设置读写器询查时间 328.4.5 设置串口波特率 328.4.6 调整功率 338.4.7 声光控制命令 338.4.8韦根参数设置命令 348.4.9工作模式设置命令 348.4.10读取工作模式参数 368.4.11 EAS检测精度设置 378.4.12 Syris响应偏置时间设置 378.4.13 触发延时设置 38UHF一体机电子标签读写器用户手册v2.0一、通讯接口规格读写器通过RS232或者RS485接口与上位机串行通讯,按上位机的命令要求完成相应操作。

串行通讯接口的数据帧为一个起始位,8个数据位,一个停止位,无奇偶校验位,缺省波特率57600在串行通讯过程中,每个字节的最低有效位最先传输二、协议描述通讯过程由上位机发送命令及参数给读写器,然后读写器将命令执行结果状态和数据返回给上位机读写器接收一条命令执行一条命令,只有在读写器执行完一条命令后,才能接收下一条命令在读写器执行命令期间,如果向读写器发送命令,命令将丢失上位机发送过程如下:上位机数据传递方向读写器命令数据块→说明:上位机发送的数据流中,每两个相邻字节之间的发送时间间隔必须小于15ms在上位机的命令数据流发送过程中,如果相邻字符间隔大于15ms,则之前接收到的数据均被当作无效数据丢弃,然后从下一个字节开始,重新接收读写器接收到正确命令后,在不超过询查时间的范围内 (不包括数据发送过程,仅仅是读写器执行命令的时间),会返回给读写器一个响应读写器发送过程如下:读写器数据传递方向上位机响应数据块→说明:读写器发送响应数据期间,相邻字节之间的发送时间间隔小于15ms完整的一次通讯过程是:上位机发送命令给读写器,并等待读写器返回响应;读写器接收命令后,开始执行命令,然后返回响应;之后上位机接收读写器的响应。

一次通讯结束三、数据的格式1. 上位机命令数据块LenAdrCmdData[]LSB-CRC16MSB-CRC16数据各部分说明如下:长度(字节)说明Len1命令数据块的长度,但不包括Len本身即数据块的长度等于4加Data[]的长度Len允许的最大值为96,最小值为4Adr1读写器地址地址范围:0x00~0xFE,0xFF为广播地址,读写器只响应和自身地址相同及地址为0xFF的命令读写器出厂时地址为0x00Cmd1命令代码Data[]不定参数域在实际命令中,可以不存在LSB-CRC161CRC16低字节CRC16是从Len到Data[]的CRC16值MSB-CRC161CRC16高字节2. 读写器响应数据块LenAdrreCmdStatusData[]LSB-CRC16MSB-CRC16数据各部分说明如下:长度(字节)说明Len1响应数据块的长度,但不包括Len本身即数据块的长度等于5加Data[]的长度Adr1读写器地址reCmd1指示该响应数据块是哪个命令的应答如果是对不可识别的命令的应答,则reCmd为0x00Status1命令执行结果状态值Data[]不定数据域,可以不存在LSB-CRC161CRC16低字节。

CRC16是从Len到Data[]的CRC16值MSB-CRC161CRC16高字节CRC16的C语言算法:#define PRESET_VALUE 0xFFFF#define POLYNOMIAL 0x8408unsigned int uiCrc16Cal(unsigned char const * pucY, unsigned char ucX){ unsigned char ucI,ucJ; unsigned short int uiCrcValue = PRESET_VALUE; for(ucI = 0; ucI < ucX; ucI++) { uiCrcValue = uiCrcValue ^ *(pucY + ucI); for(ucJ = 0; ucJ < 8; ucJ++) { if(uiCrcValue & 0x0001) { uiCrcValue = (uiCrcValue >> 1) ^ POLYNOMIAL; } else { uiCrcValue = (uiCrcValue >> 1); } } }return uiCrcValue;}pucY是要计算CRC16的字符数组的入口,ucX是字符数组中字符个数。

上位机收到数据的时候,只要把收到的数据按以上算法进行计算CRC16,结果为0x0000表明数据正确四、操作命令总汇1. EPC C1 G2(ISO18000-6C)命令序号命令功能10x01询查标签20x02读数据30x03写数据40x04写EPC号50x05销毁标签60x06设定存储区读写保护状态70x07块擦除80x08根据EPC号设定读保护设置90x09不需要EPC号读保护设定100x0a解锁读保护110x0b测试标签是否被设置读保护120x0cEAS报警设置130x0dEAS报警探测140x0euser区块锁150x0f询查单标签160x10块写2. 18000-6B命令序号命令功能10x50询查命令(单张)这个命令每次只能询查一张电子标签不带条件询查20x51条件询查命令(多张)这个命令根据给定的条件进行询查标签,返回符合条件的电子标签的UID可以同时询查多张电子标签30x52读数据命令这个命令读取电子标签的数据,一次最多可以读32个字节40x53写数据命令写入数据到电子标签中,一次最多可以写32个字节50x54检测锁定命令检测某个存储单元是否已经被锁定60x55锁定命令锁定某个尚未被锁定的电子标签。

3. 读写器自定义命令序号命令功能10x21读取读写器信息20x22设置读写器工作频率30x24设置读写器地址40x25设置读写器询查时间50x28设置读写器的波特率60x2F调整读写器输出功率70x33声光控制命令80x34韦根参数设置命令90x35工作模式设置命令100x36读取工作模式参数命令110x37EAS测试精度设置命令120x38设置Syris485响应偏执时间130x3b设置触发有效时间五、命令执行结果状态值响应数据块Status含义说明LenAdrreCmdStatusData[]CRC165+Data[]部分的长度0xXX0xXX0x00……..LSB+MSB操作成功当成功执行命令后返回给上位机的状态值Data[]包含了所要信息5+Data[]部分的长度0xXX0x010x01……..LSB+MSB询查时间结束前返回上位机发出询查G2标签命令时,读写器询查电子标签时,如果在设定的询查时间内返回信息给上位机,则返回此状态值5+Data[]部分的长度0xXX0x010x02……..LSB+MSB指定的询查时间溢出上位机发出询查G2标签命令时,当询查时间溢出时,读写器还没有完成询查操作时返回给上位机的状态值5+Data[]部分的长度0xXX0x010x03……..LSB+MSB本条消息之后,还有消息上位机发出询查G2标签命令时,如果询查命令读到的标签数量无法在一条消息内传送完,将分多次发送。

5+Data[]部分的长度0xXX0x010x04……..LSB+MSB读写器存储空间已满 上位机发出询查G2标签命令时,如果询查到的电子标签太多,超过了读写器的存储容量,则读写器返回读到的电子标签EPC号,同时,也将返回此状态值50xXX0xXX0x05无此项LSB+MSB访问密码错误当读写器执行需要密码才能执行的操作,而命令中给出的密码是错误的密码时返回给上位机的状态值50xXX0x050x09无此项LSB+MSB销毁标签失败当向G2标签进行销毁操作时,如果销毁密码错误,或是读写器与标签通讯不畅,则将返回此状态值50xXX0x050x0a无此项LSB+MSB销毁密码不能为全0销毁标签时,销毁密码为0的标签是无法销毁的50xXX0xXX0x0b无此项LSB+MSB电子标签不支持该命令G2协议中的某些可选命令,及一些厂商的特定命令,可能某些标签不支持这些命令,此时返回此状态值50xXX0xXX0x0c无此项LSB+MSB对该命令访问密码不能为全0对NXP UCODE EPC G2X标签设置读保护及设置EAS报警时,访问密码不能为全0,若为全0,将返回此状态值50xXX0x0a0x0d无此项LSB+MSB电子标签已经被设置了读保护,不能再次设置对已经被设置了读保护的NXP UCODE EPC G2X标签,在解除读保护之前,不能再次设置。

此情况下返回这个状态值50xXX0x0a0x0e无此项LSB+MSB电子标签没有被设置读保护,不需要解锁对NXP UCODE EPC G2X标签解锁,如果标签没有被锁定,将返回此状态值,对不支持读保护设定命令的标签发送此命令,也将返回此状态值50xXX0x530x10无此项LSB+MSB有字节空间被锁定,写入失败在向6B标签写入数据时,因为有字节空间被锁定,使得写入数据失败时,返回此状态值50xXX0x550x11无此项LSB+MSB不能锁定当6B标签出现不能被锁定的情况,返回此状态值50xXX0x550x12无此项LSB+MSB已经锁定,不能再次锁定对已经锁定的6B标签进行再次锁定时,返回此状态值50xXX0xXX0x13无此项LSB+MSB参数保存失败,但设置的值在读写器断电前有效对于某些需要保存的参数,如果保存失败,则返回此状态值50xXX0xXX0x14无此项LSB+MSB无法调整调整功率的时候,在某些情况下,如果出现功率无法调整的错误,则返回此状态值5+Data[]的长度0xXX0x510X15……..LSB+MSB询查时间结束前返回上位机发出询查6B标签命令时,读写器询查电子标签时,如果在设定的询查时间内返回信息给上位机,则返回此状态值5+Data[]的长度0xXX0x510x16……..LSB+MSB指定的询查时间溢出上位机发出询查6B标签命令时,当询查时间溢出时,读写器还没有完成询查操作时返回给上位机的状态值5+Data[]的长度0xXX0x510x17……..LSB+MSB本条消息之后,还有消息上位机发出询查6B标签命令时,如果询查命令读到的标签数量无法在一条消息内传送完,将分多次发送。

5+Data[]的长度0xXX0x510x18……..LSB+MSB读写器存储空间已满上位机发出询查6B标签命令时,如果询查到的电子标签太多,超过了读写器的存储容量,则读写器返回读到的电子标签UID号,同时,也将返回此状态值50xXX0xXX0x19无此项LSB+MSB电子标签不支持该命令或者访问密码不能为0当设置电子标签的EAS报警时,在通信正常的情况下,如果标签无法设置,则可能是电子标签不支持该命令,也可能是电子标签的访问密码不能为050xXX0xXX0xF9无此项LSB+MSB命令执行出错命令执行出错50xXX0xXX0xFA无此项LSB+MSB有电子标签,但通信不畅,操作失败当检测到有效范围内存在可操作的电子标签,但读写器与电子标签之间的通讯质量不好,而无法完成整个通讯过程时返回给上位机的信息50xXX0xXX0xFB无此项LSB+MSB无电子标签可操作当读写器对电子标签进行操作时,有效范围内没有可操作的电子标签时返回给上位机的状态值60xXX0xXX0xFCErr_codeLSB+MSB电子标签返回错误代码电子标签返回错误代码时,错误代码由Err_code返回给上位机50xXX0xXX0xFD无此项LSB+MSB命令长度错误当上位机输入的命令的实际长度和它应当具有的长度不同时,返回该状态50xXX0x000xFE无此项LSB+MSB不合法的命令当上位机输入的命令是不可识别的命令,如不存在的命令、或是CRC错误的命令50xXX0xXX0xFF无此项LSB+MSB参数错误上位机发送的命令中的参数不符合要求时,返回此状态六、电子标签返回错误代码EPC C1G2(ISO18000 -6C)电子标签错误代码:错误代码支持错误代码错误代码名称错误描述特定错误代码0x00其它错误全部捕捉未被其它代码覆盖的错误0x03存储器超限或不被支持的PC值存储位置不存在或标签不支持的PC值0x04存储器锁定存储位置锁定或永久锁定,且不可写入0x0b电源不足标签电源不足,无法执行存储写入操作非特定错误代码0x0f非特定错误标签不支持特定错误代码七、标签存储区及需要注意的问题A. EPC C1G2标签(简称G2标签)G2标签分4个区:保留区(又称密码区),EPC区,TID区和User区。

保留区:保留区4个字前两个字是销毁密码,后两个字是访问密码可读可写,保留区的两个密码区的读写保护特性可以分别设置EPC区:标签EPC号存储在该区,其中第0个字是PC值和标签EPC号的CRC16第1个字是PC值,该值指示标签EPC号长度,从第2个字开始才是标签的EPC号数据可读可写TIC区:该区存储的数据是由标签生产商设定的ID号可读不可写User区:是用户数据区可读可写G2命令中很多地方要求给出数据长度,这里要注意字与字节的区别1个字等于2个字节有些命令需要访问密码,如果没有密码设置,则用0填充密码区,而不能为空 B.18000-6B标签6B标签只有一个存储空间,最低8个字节是标签的UID,并且不能被改写后面的字节都是可改写的,也可以被锁定,但是一旦锁定后,则不能再次改写,也不能解锁八、操作命令详细描述 8.1 命令概述操作命令有三大类,一类是协议相关的;另一类是读写器相关的;还有一类是标签自定义命令如果上位机输入的命令是不可识别的命令,如不存在的命令、或是CRC错误的命令,则返回值如下: LenAdrreCmdStatusCRC-160x050xXX0x000xFELSBMSB 如果命令的长度不对,则返回信息如下:LenAdrreCmdStatusCRC-160x050xXX0xXX0xFDLSBMSB有两种命令读写器不会响应:1. 如果输入的命令的地址出错(地址不是0xFF,也不是读写器地址),读写器不会有任何响应。

2. 如果输入的命令是不完整的,即命令的Len域指示的命令长度大于实际的命令长度,则读写器将不会做出任何响应8.2 EPC C1G2命令8.2.1 询查标签 询查命令的作用是检查有效范围内是否有符合协议的电子标签存在想要对未知EPC的新标签进行别的操作,应先通过询查命令来得到标签的EPC号在运行询查命令之前,用户可以根据需要先设定好该命令的最大运行时间(询查时间)读写器在询查时间规定的范围内必须给上位机一个结果,如果读写器尚未读完有效范围内的所有标签,而询查时间已到,则读写器不再询查其它标签,而是直接把已经询查到得标签返回给上位机,并提示上位机还有标签未读完然后等待下一个命令询查时间的缺省值是1s,用户可以通过运行读写器自定义命令设定询查时间命令来修改允许的范围是:3*100ms~255*100ms(实际的响应时间可能会比设定的值大0~75ms)询查时间如果设定的过短,可能会出现在规定时间内询查不到电子标签的情况命令:LenAdrCmdData[]CRC-16AdrTIDLenTID0xXX0xXX0x010xXX0xXXLSBMSB参数解析:AdrTID:询查TID区的起始字地址LenTID:询查TID区的数据字数。

LenTID取值为0~15,若为其它参数将返回参数错误信息注:当AdrTID、LenTID为空时表示询查标签EPC,否则询查TIDTID询查功能仅当读写器固件V2.36及以上版本有效应答:LenAdrreCmdStatusData[]CRC-16NumEPC ID0xXX0xXX0x010xXX0xXXEPC-1,EPC-2,EPC-3…LSBMSB参数解析:Status是应答的状态,其代表的意义如下表所述:Status说明0x01命令执行结束,同时返回询查到的电子标签数据0x02询查时间结束,命令执行强制退出,同时返回已询查到的标签数据0x03如果读到的标签数量无法在一条消息内传送完,将分多次发送如果Status为0x03,则表示这条数据结束后,还有数据0x04还有电子标签未读取,电子标签数量太多,读写器的存储区已满,返回此状态值,同时返回已询查到得电子标签数据Num:本条命令中包含的电子标签的EPC/TID的个数EPC ID:读到的电子标签的EPC/TID数据,EPC-1是第一张标签的EPC/TID长度+第一张标签的EPC号或TID数据,依此类推每个电子标签EPC号或TID数据高字(EPC C1 G2中数据以字为单位)在前,每一个字的高字节在前。

EPC/TID长度以一个字节表示8.2.2 读数据这个命令读取标签的保留区、EPC存储区、TID存储区或用户存储区中的数据从指定的地址开始读,以字为单位命令:LenAdrCmdData[]CRC-160xXX0xXX0x02——LSBMSBData参数如下:Data[]ENumEPCMemWordPtrNumPwdMaskAdrMaskLen0xXX变长0xXX0xXX0xXX4Byte0xXX0xXX参数解析:ENum:EPC号长度,以字为单位EPC的长度在15个字以内,不能为0超出范围,将返回参数错误信息EPC:要读取数据的标签的EPC号长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数个长度高字在前,每个字的高字节在前这里要求给出的是完整的EPC号Mem:一个字节选择要读取的存储区0x00:保留区;0x01:EPC存储区;0x02:TID存储区;0x03:用户存储区其他值保留若命令中出现了其它值,将返回参数出错的消息WordPtr:一个字节指定要读取的字起始地址0x00 表示从第一个字(第一个16位存储区)开始读,0x01表示从第2个字开始读,依次类推Num:一个字节要读取的字的个数。

不能设置为0x00,否则将返回参数错误信息Num不能超过120,即最多读取120个字若Num设置为0或者超过了120,将返回参数出错的消息Pwd:四个字节,这四个字节是访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字只有当读保留区,并且相应存储区设置为密码锁、且标签的访问密码为非0的时候,才需要使用正确的访问密码在其他情况下,Pwd为零或正确的访问密码MaskAdr:一个字节,掩模EPC号的起始字节地址0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推MaskLen:一个字节,掩模的字节数掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模应答:LenAdrreCmdStatusData[]CRC-160xXX0xXX0x020x00Word1,Word2,…LSBMSB参数解析:Word1, Word2….: 以字为单位每个字都是2个字节,高字节在前Word1是从起始地址读到的字,Word2是起始地址后一个字地址上读到的字,以此类推。

8.2.3 写数据这个命令可以一次性往保留区、TID存储区或用户存储区中写入若干个字命令:LenAdrCmdData[]CRC-160xXX0xXX0x03——LSBMSBData参数如下:Data[]WNumENumEPCMemWordPtrWdtPwdMaskAdrMaskLen0xXX0xXX变长0xXX0xXX变长4Byte0xXX0xXX参数解析: 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号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x030x00——LSBMSB8.2.4 写EPC号这个命令向电子标签写入EPC号。

写入的时候,天线有效范围内只能有一张电子标签命令:LenAdrCmdData[]CRC-16ENumPwd WEPC0xXX0xXX0x040xXX4Byte变长LSBMSB参数解析:ENum:1个字节要写入的EPC的长度,以字为单位不能为0,也不能超过15,否则返回参数错误信息Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字在本命令中,当EPC区设置为密码锁、且标签访问密码为非0的时候,才需要使用访问密码在其他情况下,Pwd为零或正确的访问密码WEPC:要写入的EPC号,长度必须和ENum说明的一样WEPC最小1个字,最多15个字,否则返回参数错误信息应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x040x00——LSBMSB8.2.5 销毁标签这个命令用来销毁标签标签销毁后,永远不会再处理读写器的命令命令:LenAdrCmdData[]CRC-160xXX0xXX0x05——LSBMSBData参数如下:Data[]ENumEPCKillpwdMaskAdrMaskLen0xXX变长4Byte0xXX0xXX参数解析:ENum:EPC号长度,以字为单位。

EPC的长度在15个字以内,不能为0,否则返回参数错误信息EPC:要写入数据的标签的EPC号长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数个长度高字在前,每个字的高字节在前这里要求给出的是完整的EPC号Killpwd:4个字节的销毁密码32位的销毁密码的最高位在Killpwd的第一字节(从左往右)的最高位,销毁密码最低位在Killpwd第四字节的最低位,Killpwd的前两个字节放置销毁密码的高字要销毁标签,则销毁密码必须为非0,因为密码为0的标签是无法销毁的如果命令中的销毁密码为0,则返回参数错误的应答 MaskAdr:一个字节,掩模EPC号的起始字节地址0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推MaskLen:一个字节,掩模的字节数掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x050x00——LSBMSB8.2.6 设定存储区读写保护状态这个命令可以设定保留区为无保护下的可读可写、永远可读可写、带密码可读可写、永远不可读不可写;可以分别设定EPC存储区、用户存储区为无保护下的可写、永远可写、带密码可写、永远不可写;TID存储区是只读的,永远都不可写。

EPC存储区、TID存储区和用户存储区是永远可读的标签的保留区一旦设置为永远可读写或永远不可读写,则以后不能再更改其读写保护设定标签的EPC存储区、TID存储区或用户存储区若是设置为永远可写或永远不可写,则以后不能再更改其读写保护设定如果强行发命令欲改变以上几种状态,则电子标签将返回错误代码在把某个存储区设置为带密码可读写、带密码可写或把带密码锁状态设置为其它非密码锁状态时,必须给出访问密码,所以,在进行此操作前,必须确保电子标签已设置了访问密码 命令:LenAdrCmdData[]CRC-160xXX0xXX0x06——LSBMSBData参数如下:Data[]ENumEPCSelectSetProtect PwdMaskAdrMaskLen0xXX变长0xXX0xXX4Byte0xXX0xXX参数说明:ENum:EPC号长度,以字为单位EPC的长度在15个字以内,不能为0,否则返回参数错误信息EPC:要写入数据的标签的EPC号长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度高字在前,每个字的高字节在前这里要求给出的是完整的EPC号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号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x060x00——LSBMSB8.2.7 块擦除此命令可以擦除标签的保留区、EPC存储区、TID存储区或用户存储区的若干字命令:LenAdrCmdData[]CRC-160xXX0xXX0x07——LSBMSBData参数如下:Data[]ENumEPCMemWordPtrNumPwdMaskAdrMaskLen0xXX变长0xXX0xXX0xXX4Byte0xXX0xXX参数解析: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号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x070x00——LSBMSB8.2.8 读保护设置(根据EPC号设定)这个命令根据电子标签的EPC号,对标签设置读保护,使得电子标签不能被任何命令读写,对标签进行询查操作,也无法得到电子标签的EPC号仅对NXP UCODE EPC G2X标签有效命令:LenAdrCmdData[]CRC-160xXX0xXX0x08——LSBMSBData参数如下:Data[]ENumEPCPwdMaskAdrMaskLen0xXX变长4Byte0xXX0xXX参数解析:ENum:EPC号长度以字为单位EPC的长度在15个字以内,不能为0,否则返回参数错误信息EPC:要写入数据的标签的EPC号长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度高字在前,每个字的高字节在前这里要求给出的是完整的EPC号 Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。

待设定读保护的电子标签访问密码必须不为0,访问密码为0 的电子标签是无法设置读保护的,在命令中,必须给出正确的访问密码MaskAdr:一个字节,掩模EPC号的起始字节地址0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推MaskLen:一个字节,掩模的字节数掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x080x00——LSBMSB8.2.9 读保护设定(不需要EPC号)这个命令可以为有效范围内的电子标签设定读保护这个命令与前面一个命令的区别是,当有效范围内存在多张标签的时候,无法知道这个命令操作的是哪一张电子标签如果要同时对多张标签进行操作,则标签的访问密码最好是相同的仅对NXP UCODE EPC G2X标签有效命令:LenAdrCmdData[]CRC-16Pwd0x080xXX0x094ByteLSBMSB参数解析:Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。

待设定读保护的电子标签访问密码必须不为0,访问密码为0 的电子标签是无法设置读保护的,在命令中,必须给出正确的访问密码 应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x090x00——LSBMSB8.2.10 解锁读保护这个命令用来给设置了读保护的标签解锁用这个命令时,天线有效范围内只能放置一张要被解锁的电子标签仅对NXP UCODE EPC G2X标签有效命令:LenAdrCmdData[]CRC-16Pwd0x080xXX0x0a4ByteLSBMSB参数解析:Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字命令中必须给出正确的访问密码应答: LenAdrreCmdStatusData[]CRC-160x050xXX0x0a0x00——LSBMSB说明:对于不支持读保护设定的标签,认为没有被锁定8.2.11 测试标签是否被设置读保护这个命令不能测试标签是否支持读保护锁定命令,只能测试标签是否被读保护锁定对于不支持读保护锁定的电子标签,一致认为没有被锁定。

这个命令只能对单张电子标签进行操作,确保天线有效范围内只存在一张电子标签仅对NXP的UCODE EPC G2X标签有效命令:LenAdrCmdData[]CRC-160x040xXX0x0b——LSBMSB 应答:LenAdrreCmdStatusData[]CRC-160x060xXX0x0b0x00ReadProLSBMSB参数解析:ReadPro说明0x00电子标签没有被设置为读保护0x01电子标签被设置读保护说明:对于不支持读保护设定的标签,认为没有被设置读保护8.2.12 EAS报警设置对电子标签的EAS状态位进行设置或复位仅对NXP UCODE EPC G2标签有效命令:LenAdrCmdData[]CRC-160xXX0xXX0x0c——LSBMSBData参数如下:Data[]ENumEPCPwdEASMaskAdrMaskLen0xXX变长4Byte0xXX0xXX0xXX参数解析:ENum:EPC号长度以字为单位EPC的长度在15个字以内,不能为0,否则返回参数错误信息EPC:要写入数据的标签的EPC号长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。

高字在前,每个字的高字节在前这里要求给出的是完整的EPC号Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字待设置的标签的访问密码必须不为0,访问密码为0的电子标签是无法设置EAS报警的Pwd必须是正确的访问密码EAS:1个字节Bit0位为0,表示设置为关闭EAS报警;为1,表示设置为打开EAS报警Bit1 – Bit7 位保留,默认为0MaskAdr:一个字节,掩模EPC号的起始字节地址0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推MaskLen:一个字节,掩模的字节数掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模应答:LenAdrreCmdStatusData[]CRC-160xXX0xXX0x0c0x00——LSBMSB 8.2.13 EAS报警检测该命令检测电子标签的EAS报警仅对NXP UCODE EPC G2标签有效命令:LenAdrCmdData[]CRC-160x040xXX0x0d——LSBMSB应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x0d0x00——LSBMSB 无EAS报警的时候,返回“无电子标签可操作”消息。

8.2.14 user区块锁 这个命令每次永久锁定user区中的32bits数据,锁定后,这32bits数据只能读,不能被再次写,也不能被擦除这个命令仅对NXP UCODE EPC G2电子标签有效命令:LenAdrCmdData[]CRC-160xXX0xXX0x0e——LSBMSBData参数如下:Data[]ENumEPCpwdWrdPointerMaskAdrMaskLen0xXX变长4Byte0xXX0xXX0xXX参数解析:ENum:EPC号长度以字为单位EPC的长度在15个字以内,不能为0,否则返回参数错误信息 EPC:要写入数据的标签的EPC号长度由所给的EPC号决定,EPC号以字为单位,且必须是整数个长度高字在前,每个字的高字节在前这里要求给出的是完整的EPC号 Pwd:4个字节的访问密码32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字User区块锁操作时必须给出正确的访问密码WrdPointer:要锁定的字地址由于一次会锁定2个字,这里列出WrdPointer和实际被锁定的地址的关系:WrdPointer被保护的数据块(字地址)0或10和12或32和34或54和56或76和78或98和910或1110和1112或1312和13MaskAdr:一个字节,掩模EPC号的起始字节地址。

0x00表示从EPC号的最高字节开始掩模,0x01表示从EPC号的第二字节开始掩模,以此类推MaskLen:一个字节,掩模的字节数掩模起始字节地址+掩模字节数不能大于EPC号字节长度,否则返回参数错误信息注:当MaskAdr、MaskLen为空时表示以完整的EPC号掩模应答:LenAdrreCmdStatusData[]CRC-160x050xXX0x0e0x00——LSBMSB8.2.15 询查单张标签 命令:LenAdrCmdData[]CRC-160x040xXX0x0f——LSBMSB应答:LenAdrreCmdStatusData[]CRC-16NumEPC ID0xXX0xXX0x0f0x010x01EPC-1LSBMSBNum:本条命令中包含的电子标签的EPC的个数EPC ID:读到的电子标签的EPC数据,EPC-1是第一张标签的EPC长度+第一张标签的EPC号电子标签EPC号高字(EPC C1 G2中数据以字为单位)在前,每一个字的高字节在前EPC长度以一个字节表示8.2.16 块写命令 该命令一次能将多个字写入标签的保留区、EPC区、TID区或用户区命令:LenAdrCmdData[]CRC-1。

下载提示
相关文档
正为您匹配相似的精品文档