2

我将以下草图上传到我的 Arduino Uno Rev3:

void setup() {
    Serial.begin(9600);
}

void loop() {
    Serial.println("Hello, World!");
    delay(10);
}

当我运行它时,你好,世界!按预期连续打印到串行监视器。

我有以下处理草图:

import processing.serial.*;

Serial port;

void setup() {
    port = new Serial(this, "/dev/cu.usbmodem1421", 9600);
}

void draw() {
}

当我运行处理草图时,串行监视器输出被损坏。Hello, World! 的简洁线条 最终看起来像这样:

Hello, Wold!
Hell, Wrld!
He
Hello, o, Worlorld!
H
Hello,World!
ello World!
Hell, World!
Helo, orld
Hello,Worl!
Hello World!
d!
HellHello, W, World!

我想通过串行在处理和 Arduino 之间进行通信,但如果输出损坏,我就不能。这可能是什么原因造成的?

4

1 回答 1

1

你是说你在运行处理草图的同时打开了 Arduino 串行监视器吗?如果是这样,你不能这样做:你不能让两个应用程序同时尝试通过同一个端口与 Arduino 通信。

此外,增加延迟(尝试 100) - 您正在淹没缓冲区。您没有显示从串口读取的处理代码;哪里是?

于 2013-03-01T05:48:05.807 回答