Arduino Due 与 ESP8266 简单的 AT 命令

Arduino Due with ESP8266 simple AT command

我有一个 Arduino DUE,想将它连接到 ESP8266 板上,然后在串行命令行上使用简单的 "AT" 命令测试连接。我在互联网上写了很多,但是关于这个主题有很多不同的答案,其中 none 直接解决了我的问题。

我用两根电源线正确设置了eps8266。他们甚至来自不同的电源,所以esp板的电源应该没有问题。

我认为问题出在不同的波特率上。如果我选择 9600 波特用于通过 USB 从 Arduino 到 PC 的连接,以及 74880 用于从 esp 板到 DUE 的连接,我至少在 esp 板必须重新启动时(当我强制它时)正确地收到错误消息。

ets Jan 8 2013,rst cause:1, boot mode:(3,6)

load 0x40100000, len 1396, room 16
tail 4 chksum 0x89 load 0x3ffe8000, len 776, room 4
tail 4 chksum 0xe8 load 0x3ffe8308, len 540, room 4
tail 8 chksum 0xc0 csum 0xc0

2nd boot version : 1.4(b1)
SPI Speed : 40MHz
SPI Mod
le:52mn

代码如下:

//always high
int CH_PD_8266 = 53;

void setup() {
  Serial.begin(9600);
  Serial3.begin(74880); //--> at least error code is shwon correctly

//  Serial3.begin(115200); //error code is gibberish
  pinMode(CH_PD_8266, OUTPUT);
  digitalWrite(CH_PD_8266, HIGH);
}

void loop() {
  while (Serial.available() > 0) {
    char a = Serial.read();
    Serial3.write(a);

    //Write back to see if it even comes perfect
    //Serial.write(a);
  }

}

void serialEvent3() {
  while (Serial3.available() > 0) {
    char a = Serial3.read();
   // Serial.write('A');
    Serial.write(a);
  }
}

任何帮助将不胜感激。

这不是错误。这只是一个 boot message.

AT 固件可能使用与引导加载程序不同的波特率。
您应该尝试不同的波特率并使用简单的 AT 命令进行测试。
当您找到正确的波特率时,启动消息将是垃圾,但 AT 命令将起作用。

我不得不做一个解决方法,在这个问题中有描述:

此外,ESP 对货币变化非常敏感。有时需要从外部注入一点电压(通过电压表....)来推动它。完成此操作后,通信开始。