首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法完成Arduino Mega到Arduino Mega的串行通信

无法完成Arduino Mega到Arduino Mega的串行通信
EN

Stack Overflow用户
提问于 2018-02-05 12:45:02
回答 2查看 1.4K关注 0票数 0

基于下面的电路,我尝试连接两个Arduino Mega进行串行通信。

发送者的代码:

代码语言:javascript
运行
复制
char mystr[3] = "Hello"; //String data

void setup() {
  // Begin the Serial at 9600 Baud
  Serial.begin(9600);
}

void loop() {
  Serial.write(mystr, 5); //Write the serial data
  delay(1000);
}

接收者代码:

代码语言:javascript
运行
复制
char mystr[5]; //Initialized variable to store received data

void setup() {
  // Begin the Serial at 9600 Baud
  Serial.begin(9600);
}

void loop() {
  Serial.readBytes(mystr, 5); //Read the serial data and store in var
  delay(1000);
}

Arduino的串行控制台中没有输出。有人能告诉我可能的原因和解决办法吗?如果我遗漏了什么,过分强调或者强调过少,请在评论中告诉我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-05 16:20:42

如果我理解正确,你有一个阿迪诺连接到你的电脑和另一个阿迪诺?

问题是您需要指定要使用的串行端口:这很容易,只需键入Serial1Serial2,而不是只输入Serial。这允许您打开两个串口:一个到您的另一个Arduino和您的计算机显示结果!

链接:https://www.arduino.cc/en/Tutorial/MultiSerialMega

票数 1
EN

Stack Overflow用户

发布于 2018-02-05 14:45:30

您需要检查串行的可用数据:

代码语言:javascript
运行
复制
void loop() {
    if (Serial.available() > 0) {
            // read the incoming byte:
            Serial.readBytes(mystr, 5);
            Serial.print("I received: ");
            Serial.println(mystr, DEC);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48622905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档