(编者注。可能相关:SerialPort 类)
我正在尝试向 RFID 阅读器发送命令并接收“答案”。
例如,如果阅读器可以读取标签,则会收到 UID port.Write("S")
。port.ReadLine()
我正在使用这样的SerialDataReceivedEventHandler:
port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
port.ReadLine();
}
这就是我发送命令的地方:
public void sendData()
{
port.Write("S");
port.Write("r01");
port.Write("r02");
}
现在的问题是我只收到“S”的第一个答案,它不会发送所有 3 行。问题是我不知道如何将所有 3 个命令发送给阅读器。
如果我忽略SerialDataReceivedEventHandler
,我发现我可以使用此代码:
public void sendandreceive()
{
port.Write("S");
port.ReadLine();
port.Write("r01");
port.ReadLine();
}
该代码将发送和接收命令和答案。但我读到使用SerialDataReceivedEventHandler
.