我在使用两个带有arduino板的软件串行端口从两个传感器获取数据时遇到了问题。我注意到一个类似的问题可能之前已经问过,但答案表明它不能完成,我完全清楚它可以基于这里的示例(http://arduino.cc/en/Tutorial/TwoPortReceive)!在Arduino上使用软件串口接收两个端口
我正在使用arduino以太网。我试图从中获取数据的设备包括来自sparkfun的GPS和IMU。
我可以从任何设备上使用软件串行端口获取数据,但只要添加第二个软件串行端口,两个端口都不会工作。我无法使用硬件串行端口,因为它正在被其他设备使用。
我的代码是完全同样的例子:
#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();
}
有任何想法吗?
灿你给我们提供了有关它不起作用的更多信息吗? – Jeff
我以某种方式得到它的工作,你必须设置引脚状态,即接收引脚作为输入和传输引脚作为输出。 – Dyps