110,534
社区成员
发帖
与我相关
我的任务
分享
SerialPort ComPort = new SerialPort();
ComPort.DataReceived += new SerialDataReceivedEventHandler(ComPort_DataReceived);
ComPort.ErrorReceived += new SerialErrorReceivedEventHandler(ComPort_ErrorReceived);
/// <summary>
/// 接收数据
/// </summary>
private void ReceivedData()
{
flag = true;
try
{
while (true)
{
Thread.Sleep(100);
bytes = ComPort.BytesToRead;
if (bytes > 0)
{
// 创建字节数组
buffer = new byte[ComPort.BytesToRead];
ComPort.ReceivedBytesThreshold = ComPort.ReadBufferSize;
// 读取缓冲区的数据到数组
ComPort.Read(buffer, 0, buffer.Length);
data = Assist.ByteArrayToHexString(buffer);
Console.WriteLine(data + "\t");
}
}
}
catch (Exception ex)
{
Assist.WritetText(ex.ToString());
}
finally
{
ComPort.ReceivedBytesThreshold = 1;
}
}