在C#中自动检测枚举端口

时间:2016-07-21 03:49:59

标签: c#-4.0 serial-port

我有一个桌面应用程序通过串口转USB与另一台设备(监视器)进行通信。

我有一个连接两个应用程序的通讯板。它有来自CP2100系列的芯片。

通信板由设备(监视器)供电,应用程序开始交换数据。但是,当我关闭设备(监视器)时,为桌面应用程序枚举的端口丢失,当打开设备(监视器)时,端口正在返回,但在这种情况下,桌面应用程序不会将数据发送到装置(监视器)。

我使用串口设置来获取桌面应用程序的当前端口。

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

我会使用此函数枚举COM端口列表,并且在未连接到设备的情况下,循环浏览com列表并尝试连接。如果你可以连接,看看你是否得到了你期望的回复,如果你知道这是正确的COM端口,否则转移到下一个COM端口。

string[] serialPortNames = System.IO.Ports.SerialPort.GetPortNames();