如何使用端口基本流读取完整字节

问题描述 投票:0回答:1

我正在进行串行端口通信。使用BaseStream时,我正在读写端口。

port.BaseStream.Write(dataItems, 0, dataItems.Length);
int receivedBytes = port.BaseStream.Read(buffer, 0, (int)buffer.Length);
Thread.Sleep(100);
var receiveData = BitConverter.ToString(buffer, 0, receivedBytes);

[此后写,我正在休眠线程,以便获得完整的字节。还有其他方法可以等待所有字节可用吗?

最后一个字节应为22。上面的代码也在名为Taskpublic async Task PortHitmethod(Iterations iterations)中运行

我正在进行串行端口通信。使用BaseStream时,我正在写入和读取端口。 port.BaseStream.Write(dataItems,0,dataItems.Length); int receiveBytes = port.BaseStream.Read(...

c# serial-port task-parallel-library
1个回答
0
投票

这无疑是使用Stream.Read的错误方法。正确的模式在documentation中:

© www.soinside.com 2019 - 2024. All rights reserved.