arduino ボードで 2 つのソフトウェア シリアル ポートを使用して 2 つのセンサーからデータを取得するのに問題があります。同様の質問が以前に尋ねられた可能性があることに気付きましたが、答えはそれができないことを示唆しており、ここの例に基づいてそれができることを十分に知っています(http://arduino.cc/en/Tutorial/TwoPortReceive)!
私はarduinoイーサネットを使用しています。私がデータを取得しようとしているデバイスには、sparkfun の GPS と IMU が含まれています。
ソフトウェア シリアル ポートだけを使用していずれかのデバイスからデータを取得できますが、2 つ目のソフトウェア シリアル ポートを追加するとすぐに、どちらのポートも動作しません。ハードウェアのシリアル ポートが別のデバイスで使用されているため、使用できません。
私のコードは例とまったく同じです:
#include <SoftwareSerial.h>
SoftwareSerial portOne(7,8);
SoftwareSerial portTwo(5,6);
void setup()
{
Serial.begin(9600);
portOne.begin(9600);
portTwo.begin(9600);
}
void loop()
{
portOne.listen();
while (portOne.available() > 0) {
char inByte = portOne.read();
Serial.write(inByte);
}
delay(500);
portTwo.listen();
while (portTwo.available() > 0) {
char inByte = portTwo.read();
Serial.write(inByte);
}
Serial.println();
}
アイデアのある人はいますか?