Arduino 如何使用 ESP2668 创建 wifi 接入点?

Arduino how to create wifi access point with ESP2668?

我正在使用带有内置 ESP8266 WiFi 模块的 Arduino 类型设备 RobotDyn WiFi D1 R2。有两张照片: 我想使用从那里获取的官方库创建 WiFi 接入点:

https://arduino-esp8266.readthedocs.io/en/2.5.0-beta2/installing.html

请看我的草图(代码):

#include <ESP8266WiFi.h> // Include the Wi-Fi library
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>

const char *ssid = "ESP8266Test";  // The name of the Wi-Fi network that will be created
const char *password = "vadimn231"; // The password required to connect to it, leave blank for an open network

ESP8266WebServer server(80);

void handleRoot() {
  server.send(200, "text/html", "<h1>You are connected</h1>");
  // Go to http://192.168.4.1 in a web browser connected to this access point to see it.
}

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

  WiFi.softAP(ssid); // Start the access point

  Serial.println("");
  IPAddress myIP = WiFi.softAPIP();
  Serial.print("Access Point IP address: ");
  Serial.println(myIP);
  Serial.print("Access Point \"");
  Serial.print(ssid);
  Serial.println("\" started");

  server.on("/", handleRoot);
  server.begin();

  Serial.println("HTTP server started");
}

void loop() {
  server.handleClient();
}

此代码有效但无法创建 WiFi 热点。所以,问题是:如何使用 ESP8266 在 Arduino 上创建工作接入点? 如果有任何帮助或建议,我将不胜感激!

谢谢!

P. S. 有时,我可以强迫它工作。如何:首先将 Arduino 连接到任何现有网络,然后一切正常。但我怀疑这是正确的解决方案。

P. P. S. 你可以在那里直接下载草图:https://drive.google.com/open?id=1sWYOxqG3EaeYfM6akXVU5omP3jr7Ki2c

似乎您的 TCP IP 设置未使用此代码进行初始化,但是当您通过 DHCP 服务器将其连接到外部 wifi 时,它们会被设置。

我有这个功能适合我。您可能想尝试一下。

ConfigAndStartAp(){
  while(!(WiFi.softAPConfig(IPAddress(192, 168, 4, 2) , IPAddress(192, 168, 4, 2) , IPAddress(255, 255, 255, 0) )));
  while(!(WiFi.softAP( ssid)));
}