如何判断串口链接正常 C#

有个设备通过USB和电脑相连,串口号是COM3。。如果使用过程中设备被拔出就不能正常使用了。。现在我想判断下设备是否正常连接 。。如果正常,则什么也不做。。如果不正常,则要对设别进行重新连接。string port = string.Format("{0}",MessageModem.Properties.Settings.Default.Com_Port_new); string a = "COM" + port; SerialPort p = new SerialPort("COM" + port); try { p.Open(); p.Close(); label6.Text = "链接异常"; //重连操作。 } catch { label6.Text = "连接正常"; }这样为什么不行啊?

引用 1 楼 的回复:一般我都是给串口发数据,收到正确回应才判断串口正常,否则就是有问题.还有你这个try里是不是判断反了? try { p.Open(); label6.Text = "正常"; } catch { label6.Text = "异常"; } if (label6.Text == "正常") p.Close(); ……没反吧。我意思是:如果串口如果异常,则重连。。。p.open()如果不能正常执行,说明串口正在被使用,则链接正常啊。就会捕捉到异常,执行CATCH
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-25
这个当设备拔出的时候 电脑是读不出串口号的。所以判断设备是否连接正常,只需要读出串口号就行了~
第2个回答  2013-06-25
一般我都是给串口发数据,收到正确回应才判断串口正常,否则就是有问题.还有你这个try里是不是判断反了? try { p.Open(); label6.Text = "正常"; } catch { label6.Text = "异常"; } if (label6.Text == "正常") p.Close(); ...
第3个回答  2013-06-25
引用 4 楼 的回复:用p.IsOpen属性判断是否已打开好像不行吧。。我想判断这个端口有没有在使用。为什么我拔下设备和插上设备时 P.Isopen都是false

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网