Arduino x ESP8266-01无串行输出



我是arduino的新手,目前正在尝试连接ESP8266-01(https://www.reichelt.de/entwicklerboards-esp8266-wifi-modul-debo-esp8266-p192142.html)用我的CCD_ 2。我在用这个(https://www.youtube.com/watch?v=ji71cHaGW8w)作为教程和我的布线几乎是一样的。ESP8266-01上传接线

我可以上传没有任何问题。唯一的区别是,直接使用3V3而不需要任何额外的组件。我测量了120mA(稳定(,它们应该足够了。这是我的ESP8266-01代码:

void setup() {
Serial.begin(9600);
}
void loop() {
Serial.write("Hello from ESP");
delay(2000);
}

上传到ESP8266-01后,我将接线更改为此(除了我将Vcc直接连接到3V3(。这是我的Arduino代码:

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX

void setup()
{
Serial.begin(9600);
mySerial.begin(9600);
delay(5000);
}

void loop(){

String IncomingString="";
boolean StringReady = false;

while (mySerial.available()){
IncomingString=mySerial.readString();
StringReady= true;
}

if (StringReady){
Serial.println("Received String: " + IncomingString);

}
}

再一次,上传没有问题,但我没有任何生命迹象。ESP8266-01指示灯不闪烁(仅在上传时(,串行监视器中也没有输出。我已经把ESP8266-01换成了另一个,但没有什么变化。

编辑:我用眨眼和一个接入点的例子测试了ESP8266-01,它工作起来没有任何问题。

好吧,你的代码是完美的,但只尝试在RX和tx之间进行更改,最重要的是电压我知道它可以在3.3伏上工作,但在我的情况下,它在3.3伏下工作不正常,所以给它5.0伏100毫安,它工作得非常完美

确保RX引脚连接到另一侧的TX,TX连接到另一端的RX。因此,接收器上的引脚2(RX(应连接到esp8266上的发送引脚。

软件串行可以用于低波特率的东西,但总的来说,它很慢,不可预测,而且通常很痛苦。如果您有可用于Arduino的串行线路,请使用它。它更容易预测,此外,尝试也没有坏处。只需删除所有软件串行的东西,并用常规的串行命令替换mySerial,这些命令只是引脚0和1。

如果这些都不起作用,请尝试将波特率更改为115200。我知道很多ESP和其他通信设备都更习惯于此。尽管如此高的波特率不适用于软件串行,所以你只需要再次将其更改为常规串行线路。

最新更新