ESP8266-Arduino网络编程实例-接入WiFi网络

接入WiFi网络

ESP8266 WiFi库提供了接入WiFi网络API。本文将演示如何接入WiFi网络。

1、硬件准备

  • ESP8266 NodeMCU开发板一块
  • 数据线一条

2、软件准备

  • Arduino IDE或VSCode + PlatformIO

在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:

ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:

3、代码实现

ESP8266 WiFi库的WiFi.begin函数用于接入WiFi网络,该函数有两个参数:

  • ssid:WiFi网络的SSID
  • password:WiFi网络接入密码,如果该网络为开放网络,设置为NULL即可。

示例代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <ESP8266WiFi.h>

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

WiFi.begin("WiFi的SSID", "WiFi的密码");

Serial.print("Connecting");
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println();

Serial.print("Connected\r\nIP address: ");
Serial.println(WiFi.localIP());
Serial.print("macAddress:");
Serial.println(WiFi.macAddress());
Serial.print("subnetMask:");
Serial.println(WiFi.subnetMask());
Serial.print("gatewayIP:");
Serial.println(WiFi.gatewayIP());
}

void loop() {}

示例代码如何工作?

首先,在setup函数中,初始化串口

1
2
Serial.begin(115200);

然后,调用WiFi.begin函数,连接WiFi

1
2
WiFi.begin("WiFi的SSID", "WiFi的密码");

在调用WiFi.begin函数后,ESP8266开始连接WiFi,如果连接成功,则返回WL_CONNECTED,可以通过调用WiFi.status来查询当前连接状态

1
2
3
4
5
6
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}

连接成功后,可以查询接入信息,比如本地IP,网关,子网掩码等

1
2
3
4
5
6
7
8
9
Serial.print("Connected\r\nIP address: ");
Serial.println(WiFi.localIP());
Serial.print("macAddress:");
Serial.println(WiFi.macAddress());
Serial.print("subnetMask:");
Serial.println(WiFi.subnetMask());
Serial.println("gatewayIP:");
Serial.println(WiFi.gatewayIP());

运行结果如下:

在这里插入图片描述

文章来源: https://iotsmart.blog.csdn.net/article/details/127125858