C# Balluff BIS M-410写入标签
我想用Balluff BIS M-410系列标签读写器将数字数据写入RFID标签。我可以读取标签上的数据,但不能写入RFID标签。台阶在这里。它来自Balluff pdf 我的功能是:C# Balluff BIS M-410写入标签,c#,rfid,C#,Rfid,我想用Balluff BIS M-410系列标签读写器将数字数据写入RFID标签。我可以读取标签上的数据,但不能写入RFID标签。台阶在这里。它来自Balluff pdf 我的功能是: public void WriteTag() { byte[] b = new byte[17]; b[0] = 0x02; //command header b[1] = 0x011; //command size b[2] = 0x0006; // command id
public void WriteTag()
{
byte[] b = new byte[17];
b[0] = 0x02; //command header
b[1] = 0x011; //command size
b[2] = 0x0006; // command id
b[3] = 0x0000;
b[4] = 0x0000; //Start Adres
b[5] = 0x0000;
b[6] = 0x0006; //Lenght
b[7] = 0x007D;
b[8] = 0x007D; //timeout value
b[9] = 0x0001;
b[10] = 0x0002;
b[11] = 0x0003;
b[12] = 0x0004;
b[13] = 0x0005;
b[14] = 0x0006;
b[15] = 255;
b[16] = 255;
serialPort1.Write(b, 0, 17);
}
您的命令大小错误。您说该命令将有17个字节的数据,而您总共发送17个字节。设备可能正在等待更多数据。这可以在示例中看到:它表示长度为
0x0c
,如果在命令ID之后计算字节数,则有13个字节
我假设将设备作为big-endian使用是可以的(长度也是这样发送的),但是命令终止符0x03
在哪里?为什么最后会有0xff 0xff
另外,作为一种样式,当变量是字节时,我不会将0x0006
用作文本。它不会做错任何事情,但很容易给人留下16位变量的印象