《SOF》 《Node》 《Length》 《Status》 《Payload》 《CRC》
分别由开始帧、节点、总长度、状态、标签信息、CRC 这几部分组成。
举例来说, Gen2 盘点命令的操作码为01h, 操作会返回在读写域内全部的符合读取条件的Gen2 标签, 而经过反碰撞模块处理后, 得到的数据帧由标签信息和盘存总结两部分组成:
即《 回复信息》= [《 标签回复》]《 盘存总结》
《 标签回复》 = 《EPC》《 访问回复》
《EPC》 = 《 标签ID 长度》《 协议控制字》《 标签ID》
举例, 当使用天线B 并且RF 的功率为22 时, 读取所有SL 为NOT SET, S3 flag 为A 的Gen2 标签, 此时的起始Q 为1( 即2 个时隙) 。
60 01 01 16 02 03 00 01
如果当前射频范围内的标签有一个64 位的Gen2 标签1的ID 为“ 0102 0304 0506 0708”。
而且有一个96 位Gen2 标签2 的ID 为“ 1211 1009 08070605 0403 0201”。
可能读写模块会收到这样一个包, 完整内容如下:
04 28 00 01 02 03 04 05 06 07 08 07 08 30 00 12 11 10 09 08 07 06 05 04 03 02 01 00 02 00 16 00 01 00 00 00 02 00 09
现在对这个包进行解析, 根据协议规定《 接受包》 = [《标签回复》] 《 盘存总结》
= [《04 28 00 01 02 03 04 05 06 07 08》 《07 08 30 00 12 11 10 09 08 07 06 05 04 03 02 01》] 《 00 02 00 16 00 01 00 00 00 02 00 09》
《 标签1 回复》 = 《 标签1 ID 长度》 《 协议控制字》 《标签1 ID》
《 标签1 ID 长度》 = 《04》 = 4- word = 64 Bit 标签ID
《 协议控制字》 = 《28 00》, 从而得出《 标签1 ID》 =《0102 0304 0506 0708》
《 标签2 回复》 = 《 标签2 ID 长度》 《 协议控制字》 《标签2 ID》
《 标签1 ID 长度》 = 《06》 = 6- word = 96 Bit 标签ID
《 协议控制字》 = 《30 00》, 得出《 标签2 ID》 = 《1211 1009 0807 0605 0403 0201》