ESP8266 - WiFi

ESP8266 - WiFi

当我们拿到Esp8266开发板的时候,既然具有wifi能功能的,那么我们肯定首先是需要来连接一下wifi啦。首先Esp8266可以工作在2种模式下,分别是AP接入点模式和STA无线终端模式下。

一. 接入点模式

image-20230909135228596

我们搭建好开发环境后,我们需要开发wifi的功能,那么我们就需要wifi相关的库函数,因此我们使用WiFiManager 来开发。可是我们该如何导入库函数呢?接着往下看

1. 导入库函数

收到点击platFormIo主页

image-20230909142510756

然后在libraries中输入WifiManager,选择第一个wifimanger by tzapu,然后双击进入

image-20230909142719581

然后双击进入,再添加到工程,然后再代码中引入wifimanager库函数就好了

image-20230909142835366

如果需要导入其他库函数也是使用上述方法进行

2.代码示例

以下代码演示如何将Esp8266设置成AP工作模式

#include <Arduino.h>
#include <WiFiManager.h>

const char* ssid = "esp8266_Wifi";
const char* password = "123456";

void setup() {
  //打开串口通讯
  Serial.begin(9600);
  //设置wifi为AP接入点模式,并设置wifi名称为esp8266-wifi ,密码为123456
  WiFi.softAP(ssid,password);
  //通过串口监视器输出信息
  Serial.print("Access Point:");
  Serial.println(ssid);
  Serial.print("IP地址:");
  Serial.println(WiFi.softAPIP());
}

void loop() {
}

二.无线终端模式

image-20230909135827178

以下代码演示如何将Esp8266设置成AP工作模式

#include <Arduino.h>
#include <WiFiManager.h>

const char* ssid = "2002";
const char* password = "1234567890";
void setup() {
    //开启串口
  Serial.begin(115200);
    //开启wifi
  WiFi.begin(ssid,password);
  Serial.print("connecting to ");
  Serial.println(ssid);

  int i = 0;
  while (WiFi.status() != WL_CONNECTED)
  {
    delay(1000);
    Serial.print(i++);Serial.print(" ");
  }
  
  Serial.println("");
  Serial.println("connected!");
  Serial.print("IP address:");
  Serial.println(WiFi.localIP());

}

void loop() {
  // put your main code here, to run repeatedly:
}

三.自动配网

发现如上代码有一个问题,就是我们把wifi的连接信息都是写死在代码中的,如果我们离开家或离开指定的wifi网络的话,那么我们的开发的功能也就没有用了。那么我们就需要使用一种可以手动配置输入wifi密码的,即wifi自动配网功能

#include <Arduino.h>
#include <WiFiManager.h>

void setup() {
//开启串口
Serial.begin(9600);
WiFi.begin();
//wifiManager
WiFiManager wifiManger;
//自动连接网络,连接的wifi名称是Esp8266-wifi;
wifiManger.autoConnect("Esp8266-wifi");
//如果需要设置wifi密码的话可以设置 
// wifiManager.autoConnect("AutoConnectAP", "12345678");

Serial.println("wifi连接成功");
}

void loop() {
  // put your main code here, to run repeatedly:
}

然后就可以手机上找到刚刚将来的wifi网络Esp8266-wifi,使用手机连接到该wifi网络

image-20230909143243671

然后再进行网络配置

image-20230909143405189

输入正确的密码后,打开串口助手,可以看到上面也打印出了wifi连接成功

image-20230909143728278

posted @ 2023-09-09 14:05  肖恩雷  阅读(350)  评论(0编辑  收藏  举报