0

所以我使用蓝牙卡连接到 arduino。现在我将 com 硬编码到 C# 中,而 arduino 没有设置或选择 COM。我的问题是,假设我分发了这个产品。我怎么知道我的 arduino 将始终连接到该 COM?有没有办法扫描所有 COM 以查找特定项目,然后将其用作连接参数?这是我正在做的一些示例代码,可以为您提供一个想法。

        SerialPort BlueToothConnection = new SerialPort();

        BlueToothConnection.BaudRate = (9600);

        BlueToothConnection.PortName = "COM3";

        BlueToothConnection.Open();

此代码当前正在运行,但您可以看到 COM3 是硬编码的......不适合分发

这也是谷歌 C# 和蓝牙连接时给出的基本示例,所以没有帮助。

4

1 回答 1

1

可能的选项是:

  • 提供 COM 端口的运行时选择(一些设置对话框)
  • 在 app.config 中输入实际的 COM-Port(使用 .Net 配置模型或自定义 XML)
  • 尝试打开所有可用的 COM 端口 ( SerialPort.GetPortNames()) 并尝试与您的设备通信

您不能保证您的设备将连接到该 COM 端口,因为这取决于操作系统特定设置(是否有 COM3?)和用户特定设置(用户可以选择多个 COM 端口)

于 2013-05-19T20:37:06.907 回答