通过串口检查外部硬件

本文关键字:外部 硬件 检查 串口 | 更新日期: 2023-09-27 18:04:07

在我的代码中,我设置了以下值:

public SerialPort comPort = new SerialPort();
comPort.PortName = portName; 

PortName可以是COM17,例如

现在,如果我通过我的GUI添加两个设备,都在COM17上,其中一个最终会抛出异常(访问COM17被拒绝)。现在我想检查哪个设备连接到com端口,所以如果我的应用程序识别它,它可以通过端口发送命令,或者如果它不被识别,它将禁用我的GUI中的选项。

那么,是否有一种方法可以从com端口获得唯一的信息,我可以在安装时保存在我的数据库中?

编辑:澄清一下,如果错误的设备连接到COM端口(除了我安装的时候),我会得到一个错误。我捕捉到那个错误,所以我知道它不是正确的。但我更想知道是哪个装置。假设我有两个驱动DLL,两个不同的设备,有人把它们换了。然后,我的应用程序可以检查并看到正确的名称,因此得出结论,这只是更改已安装对象的com端口的问题,而不是仅仅抛出错误并告诉用户必须重新安装。

通过串口检查外部硬件

这将取决于您的硬件。如果连接的设备将对特定的信号信息给出可预测的一致响应,那么您可以使用它来识别它们。我做同样的事情来弄清楚一个专有硬件连接到哪个COM端口。我遍历所有COM端口并发送一条消息,我知道它将从硬件获得特定的响应。哪个端口给了我预期的结果,哪个端口有硬件。