通信部分-多串口[Mega]

有时候,一个串口远不能满足你!当你尝试和多个串口设备通信,并且还想将数据发送到串口监视器,多几个RX/TX串口就是你迫切需要的了。本例向你展示Arduino Mega和Genuino Mega上3个附加串口的使用。以及如何将其他串口的数据转发到TX串口,以此在串口监视器上看到。

硬件需求
Arduino Mega板
串口设备(Xbee板,蓝牙模块或者RFID阅读器或者另一个Arduino都可以)
连接线

电路
clip_image002
准备好表格上你需要的串口设备后,请确保板子被正常供电并且线路连接正确。串口设备上的RX口应该连接到MEGA板上的TX1口,串口设备上的TX口应该连接到MEGA板上的RX1口。如果不清楚,请看原理图。
你还要确保MEGA板正常通过USB连接到电脑。

原理图
clip_image004

代码
下列代码假定你已经将串口设备连接到板子上的TX1和RX1。

/*
多串口[Mega]
从主串口获取数据并且转发到其他串口。
从串口1获取数据并且转发到主串口(串口0)。
代码只能在串口>=2的设备上使用。比如Arduino Mega、Due、 Zero等。
电路搭建:
* 串口设备连接到串口1
* 串口监视器在串口0打开
代码是公开的。
*/

void setup() {
// 初始化串口:
Serial.begin(9600);
Serial1.begin(9600);
}

void loop() {
// 从串口1转发到串口0:
if (Serial1.available()) {
int inByte = Serial1.read();
Serial.write(inByte);
}

// 从串口0转发到串口1:
if (Serial.available()) {
int inByte = Serial.read();
Serial1.write(inByte);
}
} 
0
分享到:

评论0

请先

本站资料配套硬件销售店铺:天猫店ultirobot.tmall.com 、三冠淘宝店zhongbest.taobao.com
没有账号? 忘记密码?