半双工(HDX,Half
Duplex)技术是ISO11784/11785中规定的另一种标签与读写器之间的通讯方式。读写器先打开射频场对标签充电以激活标签,然后关闭磁场,标签在读写器磁场关闭的情况下向读写器传送数据。不过HDX虽然是在动物标签标准中规定,但似乎更多的应用于和动物联系不大的工业识别领域。这也没什么大惊小怪的,标准是标准,实际应用中适合的才是最好的,就像信鸽虽然是动物,但许多信鸽的脚环识别号其实是ID64格式。
与全双工(FDX)相比,HDX
通常识别能力更强,因为HDX读写器的射频场在HDX标签响应期间关闭,从而读写器可以专注于接收来自标签的信号,同时也消除了读写器射频场对标签信号的干扰。HDX采用移频键控(FSK)技术,发送数据“1”使用124.2KHz的频率,发送数据“0”使用134.2KHz的频率。数据的传送速率大约8Kbps,基本上是FDX的两倍。实际工作时读写器持续打开射频场至少50毫秒,以激活标签,在读写器关闭射频场3毫秒的时间之内,标签开始回送识别数据,如下图所示:
因为标签回送数据时读写器的射频场已经消失,回送数据完全使用标签自己之前储存的能量,所以标签如何节能降耗非常重要。为此,一方面HDX传送数据的速率比FDX快一倍,另一方面尽量减少不必要的数据传输,除了64位的识别数据必须完整回送外,其它部分只要不是非传不可的数据,标签是能省则省。头部由FDX的11位减少为8位,同时省略了FDX的13位控制位,这样一共比FDX少传送16位,正好两个字节。整个数据帧的位数也从128位减少到112位。同FDX一样,数据发送时先送最低有效位(LSB)再送最高有效位(MSB),传送的顺序如下图所示:
例如,一个标签的保留位是0,国家编码是999(10进制),国内唯一序列号是1008(10进制),尾部是123456(16进制),动物标志为1,有附加数据(1),64位识别码的16进制数为0x8001F9C0000003F0,它的CRC16=0x5DD6,标签回送数据的顺序如下:
MSB LSB
0 1 1 1 1 1 1 0 8位头部
1 1 1 1 0 0 0 0 38位国内唯一序列号
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0
1 1 1 1 1 0 0 1 10位国家代码
0 0 0 0 0 0 0 1 1位附加数据,14位保留数据
1 0 0 0 0 0 0 0 1位动物标识
1 1 0 1 0 1 1 0 16位CRC校验
0 1 0 1 1 1 0 1
0 1 0 1 0 1 1 0 24位尾部
0 0 1 1 0 1 0 0
0 0 0 1 0 0 1 0
波形使用最简单的非归零码,此处不再画出。需要说明的是,因为非归零码容易失步,所以一般读卡芯片解调后输出数据都使用两条线,一条数据线和一条时钟线。比如TI的芯片RI45538,它的第15脚是RXDT,用来输出数据,第16脚是RXCK,用来输出时钟。