如何解决将数据从NodeMCU Esp8266发送到UNO
我试图使用UART从8266向UNO发送数据,但很难使它工作。
我设法使用Tx-> Rx引脚,或者使用UNO上的SoftwareSerial-> ESP上的Rx,从UNO发送到ESP,两者都可以正常工作。 现在,当我试图做同样的事情时,反之亦然,事实并非如此。我已经试过在ESP上同时发送Tx和Tx1(Serial1),并在UNO上同时尝试Rx(0)和SoftwareSerial Rx引脚。
PS:是的,我正在使用电平转换器。
ESP代码:
#include <Arduino.h>
void setup()
{
// Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
Serial1.println("1");
// Serial.println("1"); // SENDING TO UNO
delay(500);
}
UNO:
#include <Arduino.h>
#include <SoftwareSerial.h>
SoftwareSerial mySerial(5,6);
char receivedChar;
boolean newData = false;
void recvOneChar();
void showNewData();
void setup()
{
mySerial.begin(9600);
Serial.begin(9600);
Serial.println("<Arduino is ready>");
}
void loop()
{
recvOneChar();
showNewData();
}
// SoftwareSerial Rx pin
void recvOneChar()
{
if (mySerial.available() > 0)
{
receivedChar = mySerial.read();
newData = true;
}
}
// Normal Rx ( 0 )
// void recvOneChar()
// {
// if (Serial.available() > 0)
// {
// receivedChar = Serial.read();
// newData = true;
// }
// }
void showNewData()
{
if (newData == true)
{
Serial.print("This just in ... ");
Serial.println(receivedChar);
newData = false;
}
}
我在输出上什么也没有,或者在最好的情况下什么也没有,但是很少(我什至不知道如何复制它)我得到了垃圾值。想到了吗?
我的最终目标是从同一代码/项目中的两个板同时发送/接收数据。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。