【问题标题】:Java RXTX - Detecting the right device through serial communicationJava RXTX - 通过串行通信检测正确的设备
【发布时间】:2016-05-20 02:59:59
【问题描述】:

让我直奔问题。

假设,我有一个 Arduino Uno (COM4) 和 Arduino Mega (COM5),两者都通过串口与我的操作系统通信。如何检测 COM4 真的是 Arduino Uno,这样我就不会错误地将我的程序连接到 COM5 端口?连接串口的过程是由我的程序在运行时完成的。

我在网上看到的代码here in another SO question 以及我之前对该代码的实验,它只列出了所有串行端口,而没有显示该设备是什么(所以程序不知道是什么真的是那个设备,可以是 Arduino Uno 或 Arduino Mega 或其他)。

所以我的问题是,我怎样才能达到这个目的?跨平台是首选,但如果不能实现这样的事情,那么请回答如何在 Windows 中做到这一点(因为我目前正在为使用 Windows 操作系统的计算机开发这个程序)

【问题讨论】:

    标签: java arduino serial-port arduino-uno rxtx


    【解决方案1】:

    您可以要求设备在连接后立即识别自己。为此,您希望在设备的固件中支持设备识别。

    在 arduino 草图的loop 方法定义中添加类似以下逻辑的内容:

    int inputData = Serial->read();
    if (inputData == IDENTIFICATION_REQUEST) {
      // respond with information that identify the device
    }
    

    然后你可以检查程序连接到哪个设备发送IDENTIFICATION_REQUEST

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      相关资源
      最近更新 更多