2

我正在使用带有 ESP8266 的 Arduino Uno Rev3 连接到网络并通过 TCP 套接字发送一些数据。我正在使用以下代码建立连接

boolean connectWifi() {
  String cmd =  "AT+CWJAP=\"";
         cmd += SSID;
         cmd += "\",\"";
         cmd += PASS;
         cmd += "\"";
  Serial.flush();
  Serial.println(cmd);
  delay(5000);
  if(Serial.find("OK")) {
    Serial.println("Connected");
    return true;
  } else {
    Serial.println("Not connected");
    return false;
  }
}

但是每次我在 arduino loop() 中调用这个函数时,我都会收到“未连接”。

我已经尝试从在 Arduino 上运行空代码的串行监视器直接连接,并且这个 AT 命令运行良好。有人知道出了什么问题吗?

连接:

(当我需要直接从 arduino 代码发送命令时使用)
Arduino ------------ ESP8266
3.3v --------- vcc
gnd ---------------------- gnd
3.3v ------------------- CH_PD
TX -- ---------------------- RX
RX ------------ TX

(当我需要直接从 arduino 串行监视器发送命令时使用)
Arduino ------------ ESP8266
3.3v -------- - vcc
gnd ---------------------- gnd
3.3v -------------------- CH_PD
TX - ------------------------ TX
RX ------------ RX

4

3 回答 3

2

我刚刚将 blank.bin 上传到 ESP 中,一切正常。有一些示例代码与 Arduíno 冲突。

于 2015-05-14T13:30:07.840 回答
0

您将需要更多的电源才能使其正常工作。也许这会有所帮助:

http://makezine.com/2015/04/01/installing-building-arduino-sketch-5-microcontroller/

(查看:从文章中用电阻器构建分压器

于 2015-05-14T09:02:43.683 回答
0

我也有同样的问题,试试下面的代码,也许它可以工作(esp 应该连接到 arduino 的引脚,除了 rx 和 tx,我使用引脚 7 和引脚 8)

#include <SoftwareSerial.h>

SoftwareSerial esp(7, 8);// TX, RX

void setup()
{
esp.begin(115200);

Serial.begin(9600);
}

void loop()
{
//put your code here
}
于 2018-03-31T17:06:08.783 回答