ESP8266 WIFI模块无响应

时间:2016-05-14 09:24:13

标签: arduino wifi iot esp8266

我使用arduino Duemilanove正确购买了新的ESP8266 WIFI模块(8针)和闪存固件(来自https://raw.githubusercontent.com/nodemcu/nodemcu-flasher/master/Win32/Release/ESP8266Flasher.exe)。 我已经完成了许多故障排除步骤,但是在重置模块上确实给出了一些乱码响应,但没有来自“AT”命令的就绪/ OK响应

红色LED     模块始终打开但蓝灯熄灭。

采取的措施: -

  1. 为了提供足够的电流,我使用了Beaglebone 3V3电源作为模块Vcc。 但我无法从AT命令收到任何回复。

  2. Arduino Tx(5V)使用分压器降低到3v3 连接到Rx

  3. 在闪光灯设置中,确保波特率为115200并且所有设置都正确
  4. 模块工作正常,可能与另外两个模块同样的事情
  5. 这是我的关系:

    //////////////////////////////////////////////////////////////////////////////
        ///////                         CONNECTIONS              ////////
        /////////////////////////////////////////////////////////////////////////////
        /*
        ESP8266 VCC -> BeagleBone 3.3
        ESP8266 GND -> Common GND (Arduino & BeagleBone)
        ESP8266 CH_PD -> 3K resistor -> VCC
        ESP8266 RST -> VCC or pin 13(arduino)
        GPIO CAB BE LEFT OPEN OR TIED HIGH
        ESP8266 Tx -> pin2 (Arduino software serial Rx)
        ESP8266 Rx <- Voltage Divider <- pin3 (Arduino software serial Tx)
        */
    

    这是我的代码

    #define esp8266 Serial2
    #define CH_PD Vcc // but needs a narrow low pulse
    #define speed8266 9600 // This is the speed that worked with my ESP8266
    void setup()
    {
     esp8266.begin (speed8266);
     Serial.begin(9600);
     reset8266(); // Pin CH_PD need a reset before start communication
    }
    void loop()
    {
     while(esp8266.available())
     { Serial.write(esp8266.read()); }
     while(Serial.available())
     { esp8266.write(Serial.read()); }
    }
    /*************************************************/
    // Reset funtion to accept communication
    void reset8266 ()
    {
     pinMode(CH_PD, OUTPUT);
    digitalWrite(CH_PD, LOW);
     delay(300);
     digitalWrite(CH_PD, HIGH);
    }
    

    这是串行监视器上的输出 Arduino Serial Monitor Output

    请帮助我,我做错了什么? 我不想使用另一个FTDI芯片,而arduino已经拥有它。

1 个答案:

答案 0 :(得分:1)

目前我只能给你一个部分答案(似乎我还不能评论:))。

启动/重置ESP时,乱码是正常的,它只是以74880波特输出启动消息的启动代码(基本上是默认波特率115200,但因为ESP以较低的CPU频率启动,波特率速率也低,启动频率为26 mhz,正常频率为40 mhz,26/40 * 115200 = 74880.如果你可以将串行客户端设置为74880波特,你应该看到消息,但这是一个奇怪的波特率,所以它可能很难或不可能设置。

复位时的胡言乱语很好!这意味着ESP工作和开心,问题出在你的软件上(正如你自己也确定的那样)。

我假设您的代码在Arduino端? 最大的问题是ESP上闪现的是什么,以及它的预期是什么。从你的问题我不是100%肯定你做了什么闪光..

我想你可能已经在它上面闪现了nodemcu,它不会响应AT命令,尝试从它上面的Espressif Systems闪现'原始'AT rom?

相关问题