关于mega2560的串口通讯问题
IDE的串口监视器是只能监视板子的0号串口吗?当我输入以下程序的时候发现串口监视器上只会显示0,而不会显示1、2、3。void setup() {
Serial.begin(9600);
Serial1.begin(9600);
Serial2.begin(9600);
Serial3.begin(9600);
}
void loop() {
Serial.println(0);
Serial1.println(1);
Serial2.println(2);
Serial3.println(3);
delay(2000);
}
那如果我在1号串口上接上外接设备,单片机是否也无法接收到外设发来的信息? 本帖最后由 darkorigin 于 2015-10-22 21:19 编辑
单片机的所有串口都可用
你可以用3个串口芯片分别连接 0 1 2三组而且分别都可以有数据
2560mega的32U8好像就是连接的 TX0 RX0 它又不是交换机。。当然读不到了
打个比方
就好像你装了3个水龙头 分别出3种不同的液体
但是你只拿个小瓶子在1号下面接 其他龙头也都开着 也只是都浪费了罢了 不会自动去你的瓶子里 你的Monitor上只会显示Serial.println()即串口0输出的数据,想把1、2、3串口的数据显示到Monitor上必须要经过转化。例如: int m=Serial1.print(1); Serial.println(m); 你从一个串口观察当然看不到其他串口的信号。 买一个ttl转usb 就可以了 想用哪个就可以用哪个
页:
[1]