esp8266接入哪个物联网方便 (自学物联网从何下手)

前几篇的学习,已经掌握了esp8266的驱动安装、开发环境配置、AP和终端模式的功能,从程序代码中引用的头文件我们就发现,越来越高级了。

#include <ESP8266WiFi.h> // 本程序使用 ESP8266WiFi库

#include <ESP8266WiFiMulti.h> // ESP8266WiFiMulti库

#include ESP8266WebServer.h // ESP8266WebServer库

现在就是用ESP8266WebServer.h库开始学习了,从名字上看就是服务器呗。

我们先看看程序代码的主要部分:

头文件:

#include <ESP8266WiFi.h> // 本程序使用 ESP8266WiFi库

#include <ESP8266WiFiMulti.h> // ESP8266WiFiMulti库

#include <ESP8266WebServer.h> // ESP8266WebServer库

ESP8266WiFiMulti wifiMulti; // 建立ESP8266WiFiMulti对象,对象名称是'wifiMulti'

ESP8266WebServer esp8266_server(80);// 建立ESP8266WebServer对象,对象名称为esp8266_server

连接wifi:

wifiMulti.addAP("kali01", "zhlm1001"); // 通过调用函数addAP来记录不同的WiFi网络信息。

int i = 0;

while (wifiMulti.run() != WL_CONNECTED) { // 此处的wifiMulti.run()是重点。通过wifiMulti.run(),NodeMCU将会在当前

delay(1000); // 环境中搜索addAP函数所存储的WiFi。如果搜到多个存储的WiFi那么NodeMCU

Serial.print(i++); Serial.print(' '); // 将会连接信号最强的那一个WiFi信号。

} // 一旦连接WiFI成功,wifiMulti.run()将会返回“WL_CONNECTED”。这也是

// 此处while循环判断是否跳出循环的条件。

// WiFi连接成功后将通过串口监视器输出连接成功信息

Serial.println('\n'); // WiFi连接成功后

Serial.print("Connected to "); // NodeMCU将通过串口监视器输出。

Serial.println(WiFi.SSID()); // 连接的WiFI名称

Serial.print("IP address:\t"); // 以及

Serial.println(WiFi.localIP()); // NodeMCU的IP地址

esp8266_server.begin();

esp8266_server.on("/", handleRoot); /

esp8266_server.onNotFound(handleNotFound);

//--------"启动网络服务功能"程序部分结束--------

Serial.println("HTTP esp8266_server started");// 告知用户ESP8266网络服务功能已经启动

}

void loop(void){

esp8266_server.handleClient(); // 处理http服务器访问

}

void handleRoot() { //处理网站根目录“/”的访问请求

esp8266_server.send(200, "text/plain", "Hello from ESP8266"); // NodeMCU将调用此函数。

}

// 设置处理404情况的函数'handleNotFound'

void handleNotFound(){ // 当浏览器请求的网络资源无法在服务器找到时,

esp8266_server.send(404, "text/plain", "404: Not found"); // NodeMCU将调用此函数。

}

就是调用头文件,配置网络服务器功能,开启80端口,判断服务器相应状态返回200和404错误代码后,显示信息的过程。

esp8266接入哪个物联网方便,esp8266物联网入门

代码上传板子后,端口监测反馈了信息,用手机可以访问这个IP地址后,html页面反馈了“Hello from ESP8266”,功能测试成功,原理就是这样。