COM端口 - 如何识别设备(.net / c#)

时间:2010-05-17 12:25:12

标签: c# .net serial-port identification

我正在为Windows CE编程,我需要连接到扫描仪。没有问题 - 我知道它在端口COM0上,但是如果我之前插入另一个设备它会获得另一个COM端口...以便轻松获得所有COM端口:

SerialPort.GetPortNames()

但我不知道如何识别设备?有没有标准的方法?我无法“ping”它,因为有一个设备只发送数据......它一直在发送数据......我不知道如何'ping'设备......

1 个答案:

答案 0 :(得分:4)

串行连接的问题是无状态。你无法知道是否有人在听另一边听或谁在听。

要找到这个,你只需要几个选择:

  • 如果可能,找出是否有人使用硬件握手(如RTS,CTS等)。
  • 要查找谁在那里,您通常会发送某种识别信息,以便您知道正确的答案(例如,您要发送的调制解调器AT,您将收到OK。< / LI>

因此,如果您无法使用上述任何方法,则无法自动检测要使用的端口。因此,唯一可行的模型是询问用户正确的设置(例如,带有可用端口或BaudRates的ComboBox,用于不同布尔配置设置的CheckBox等)。