ESP8266--创建WebServer

423 阅读1分钟

准备工作

详见链接: ESP8266--STA模式连接Wi-Fi

编写代码

/**
 * 提供了连接到网络所需的ESP8266特定Wi-Fi例程
 * 还提供了在站模式或软接入点模式下的方法和属性
 */
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

/**
 * 定义要与ESP连接的Wi-Fi网络的SSID和密码
 * 必须将PC和ESP连接到同一Wi-Fi网络
*/
#ifndef STASSID
#define STASSID "你的Wi-Fi名称"
#define STAPSK  "你的Wi-Fi密码"
#endif

// 建立全局Web服务器并监听80端口
ESP8266WebServer server(80);

const char* ssid = STASSID;
const char* password = STAPSK;

void homepage() {
  server.send(200, "text/plain", "This is test homepage");
  Serial.println("用户访问了主页");
}

void setup() {
  Serial.begin(115200);
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  /**
   * AP模式(Access Point)提供无线接入服务,提供数据访问,允许其他无线终端接入
   * 简单来说就是和路由器在多数情况下工作模式相同,能让手机接入
   * STA模式(Station)类似于无线终端,本身并不接受无线接入,
   * 简单来说就是和手机热点工作状态相同
   */
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());

  //初始化WebServer
  server.on("/", homepage);
  server.begin();
  Serial.println("HTTP server started");
}

void loop() {
  //监听客户请求并处理
  server.handleClient();
}

网页访问

image.png

串口输出

image.png