我有一个我知道接收无效奇偶校验位的 COM 端口,并且我正在使用以下程序,但是我似乎从未得到文档提到的尾随126
字节。
在下面的程序中,控制台打印了很多!!!!!
但没有?????
,为什么?
另外我假设具有无效奇偶校验位的字节仍将包含在流中?
using (var serialPort = new SerialPort())
{
serialPort.PortName = "COM2";
serialPort.BaudRate = 562500;
serialPort.Parity = Parity.Space;
serialPort.DataBits = 8;
serialPort.StopBits = StopBits.One;
serialPort.ErrorReceived += (s, e) => Console.WriteLine("!!!!!");
serialPort.Open();
var thread = new Thread(() =>
{
while (isRunning)
{
var b = serialPort.ReadByte();
if (b == 126)
Console.WriteLine("?????");
}
});
thread.Start();
Console.WriteLine("");
Console.WriteLine("Press any key to exit.");
Console.ReadKey(true);
isRunning = false;
thread.Join();
}