物联网的第一步利用ESP8266搭建网络服务器

关于ESP8266如何接入WiFi,并搭建网络服务器

对于ESP8266首先要知道它有三种接入点模式:
STA(无线终端模式)AP(接入点模式)STA+AP(混合接入点模式)。

这里主要讲的是如何利用Ardunio把esp8266接入局域网

先把要用到的WiFi库函数加入到Ardunio中 这一步极其重要,否则程序将无法运行。点击管理库,可以在里面查找要用到的库文件。还有一种办法就是自己手动添加库的压缩包。 在这里插入图片描述
<ESP8266wifiMulti.h>可以通过这个库函数来添加多个WiFi,ESP8266会自动加入一个信号最强的WiFi。

<ESP8266WebServer.h>可以通过这个函数实现网络服务器的搭建。

主要代码如下:

#include  <ESP8266WiFi.h>
#include  <ESP8266wifiMulti.h>
#include   <ESP8266WebServer.h>

ESP8266WiFiMulti wifiMulti;   //新建一个ESP8266WiFiMulti的类对象wifiMulti;
ESP8266WebServer  WebS(80);     //新建一个ESP8266WebServer的类对象WebS
//80为http标准端口号码;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);  
  //端口传输波特率,这里也可以为115200
  WiFi.mode(WIFI_STA);  
  //wifi模式为无线终端模式(l另外一种模式为接入点模式AP)
  wifiMulti.addAP("WIFINAME","PASSWORD");  
  wifiMulti.addAP("WIFINAME_1","PASSWORD_1");
  //输入多个wifi账号密码,esp8266会自动连接
  

//当wifi未接入网的时候等待连接入网并输出数字(可在串口监视器上查看)
  int i=0;
  while(wifiMulti.run()!=WL_CONNECTED){
  delay(1000);
  Serial.print(i++);
  Serial.print(' ');
  }
  Serial.print("\n");
  Serial.print("CONNECT TO:");
  Serial.println(WiFi.SSID());//输出连接上的wifi名称
  Serial.print("IP address:");
  Serial.println(WiFi.localIP());//输出路由器为8266生成wifi的ip地址

  //===================配置网络服务=======================
  WebS.begin();//表示开始配置
  WebS.on("/",handRoot);
  //连接入网检测到‘/’表示网站首页的连接请求,利用handRoot函数来处理
  WebS.onNotFound(handNotFound);
  //找不到链接的情况下(404)用handNotFound函数来处理
  Serial.print("esp8266 Webserver has beign");
  //串口监视器输出表示网络服务器已经成功搭建
}

//=======处理网络连接请求函数====
  void handRoot(){
    WebS.send(200,"text/plain","SUCCESSFUL!!!"); 
   //200为状态码(与常见的404类似,不过一个表示成功一个表示失败)  
  //在网站里面输出SUCCESSFUL,“text/plain”表示向网站里面输出的信息为纯文本 
  }

  void handNotFound(){
     WebS.send(404,"text/plain","404 NOT found");
     //在网站里面输出404 NOT found,表示没有成功进到esp8266的网络服务器中
    }
  

void loop() {
  // put your main code here, to run repeatedly:
  WebS.handleClient();//处理http服务器访问
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值