【问题标题】:What is the COM port of the software serial in the arudino?arduino中软件串口的COM口是什么?
【发布时间】:2017-02-27 15:44:04
【问题描述】:

我有一个蓝牙模块连接到 Arduino 上的 RX(0) 引脚,我通过它接收数据。
然后我使用Serial.write() 打印该数据。
这两个引脚对应我电脑中的 COM16。

我现在能够将这些值接收到处理中,并在处理中将 COM 端口设置为 16 后再次打印它们。

现在我想通过串行通信将处理中的特定值再次发送回 Arduino。我想我可以用软件序列号来做到这一点。 但是,关于软件序列的工作原理,我有几个问题:

如果我设置了软件串行,我可以将处理过程中的值发送到 Arduino 的软件串行的 COM 端口是什么?

这是设置正在处理的 COM 端口的命令。

 String portName ="COM16";
 myPort = new Serial(this, portName, 57600);

然后我使用myPort.write() 将一些值发送回 Arduino,但是如何捕获软串行中的值?

【问题讨论】:

    标签: arduino processing


    【解决方案1】:

    最好的方法是使用Serial Event

    最少的代码:

    void setup() {
      Serial.begin(9600);   // initialize serial
    }
    void loop() {           // you need to define a loop function even 
                            // if not used at all.
    }
    
    // This is an interrupt. 
    // Code below will only execute when something is received in the RX pin.
    void serialEvent() {
        while (Serial.available()) {
            char inChar = (char)Serial.read();  // get the new byte
            // here you can process the received byte
        }
    }
    

    如果您想在处理它们之前接收几个字节,请检查提供的链接中的示例,它将字符连接成一个字符串,直到接收到 \n 字节

    这种方法的优点是它使用中断,所以你不需要经常检查串口是否接收到东西。

    PD:我看到在你的代码中你使用了 57600 的波特率。只需修改上面的代码以确保你使用相同的速度,否则你将不会收到任何东西(或者更糟糕的是,你会收到垃圾)

    【讨论】:

    • 谢谢。我一直依赖基于问题标签的自动着色。不知道我可以手动定义代码:)
    • 它适用于某些标签,例如c++c,但对于 arduino 则没有。
    • 我认为您在我说处理时误解了我的问题。我说的是处理图形工具。进一步解释我的问题。我需要从两个串行端口接收数据到 arduino。一个来自处理软件。
    • 我了解到您在 PC 端有处理(软件)。然而这实际上是无关紧要的:Arduino 只是接收和发送数据,它并不关心你在另一端使用哪个软件(它可以是一个使用 telnet 的猴子)。我的解决方案允许您在 Arduino 中接收数据并进行处理。
    【解决方案2】:

    我会反其道而行之:使用 SoftSerial / AltSoftSerial 进行蓝牙模块通讯,使用硬件串行进行处理通讯。

    请记住 SoftSerial 可能不如适当的硬件串行端口强大。波特率 57600 应该可以工作,但请记住更高的波特率可能不可靠。

    或者,如果预算/时间允许,您可以使用具有多个串行端口的 Arduino(例如具有 SerialSerial1 等的 Arduino Mega、Due 等)

    【讨论】:

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