2

次のスケッチを Arduino Uno Rev3 にアップロードしました。

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

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

実行すると、Hello, World! 予想どおり、継続的にシリアル モニタに出力されます。

次の処理スケッチがあります。

import processing.serial.*;

Serial port;

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

void draw() {
}

Processing スケッチを実行すると、シリアル モニタの出力が壊れます。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!

シリアル経由で Processing と Arduino の間で通信したいのですが、出力が壊れていると通信できません。何が原因でしょうか?

4

1 に答える 1

1

処理スケッチの実行と同時にArduinoシリアルモニターを開いていると言っていますか?もしそうなら、それを行うことはできません。同じポートを介して同時に2つのアプリがArduinoと通信しようとすることはできません。

また、遅延を増やします(100を試してください)-バッファをフラッディングしています。シリアルポートから読み取る処理コードは表示されません。それはどこですか?

于 2013-03-01T05:48:05.807 に答える