c# 串口读没有接收到数据的接收数据缓冲区如何捕捉异常?

现在用如图方法捕捉不到异常,代码不走catch。
2025-03-10 21:04:39
推荐回答(1个)
回答1:

通过设置ReadTimeout属性解决你的问题。代码如下

SerialPort com = new SerialPort("COM1");

// 设置读取超时为5秒(5000毫秒)
com.ReadTimeout = 5000;
try
{
    com.Read(receiveData, 0, readStatus[5]*2+5);
}
catch(TimeoutException)
{
    //超时无数据异常处理
}