arduino wifi库函数
时间: 2025-07-22 19:09:04 浏览: 2
Arduino 提供了多个用于 WiFi 通信的库函数,尤其是针对 ESP8266 这类支持 WiFi 的芯片。以下是一些常用的 WiFi 库函数及其使用方法,适用于 ESP8266WiFi.h 库:
### 连接 WiFi 网络
使用 `WiFi.begin()` 函数来连接指定的 WiFi 网络:
```cpp
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(115200);
WiFi.begin("network-name", "pass-to-network");
Serial.print("Connecting");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.print("Connected, IP address: ");
Serial.println(WiFi.localIP());
}
```
### 获取 WiFi 状态
使用 `WiFi.status()` 函数来检查当前 WiFi 的连接状态,返回值为 `WL_CONNECTED` 表示已连接[^1]。
### 获取本地 IP 地址
通过 `WiFi.localIP()` 可以获取设备在当前网络中的 IP 地址。
### 启动 SoftAP 模式
ESP8266 可以作为 WiFi 热点使用,使用 `WiFi.softAP()` 函数:
```cpp
WiFi.softAP("MyESP8266", "password123");
```
### 创建 TCP 客户端连接
使用 `WiFiClient` 类来创建 TCP 客户端连接:
```cpp
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
void setup() {
WiFi.begin("network-name", "pass-to-network");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
WiFiClient client;
if (client.connect("example.com", 80)) {
client.println("GET / HTTP/1.1");
client.println("Host: example.com");
client.println("Connection: close");
client.println();
}
}
```
### 创建 UDP 通信
使用 `WiFiUDP` 类进行 UDP 通信:
```cpp
#include <ESP8266WiFi.h>
#include <WiFiUDP.h>
void setup() {
WiFi.begin("network-name", "pass-to-network");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
WiFiUDP udp;
udp.begin(1234);
Serial.println("UDP server started");
}
```
### 常用 WiFi 状态码
- `WL_CONNECTED`:已连接到 WiFi 网络
- `WL_DISCONNECTED`:未连接
- `WL_NO_SHIELD`:未检测到 WiFi 芯片
- `WL_CONNECTION_LOST`:连接丢失
- `WL_AP_LISTENING`:SoftAP 模式已启动
### 相关函数
- `WiFi.disconnect()`:断开当前 WiFi 连接
- `WiFi.reconnect()`:重新连接 WiFi 网络
- `WiFi.SSID()`:获取当前连接的 SSID
- `WiFi.RSSI()`:获取信号强度
### 文档参考
ESP8266WiFi 库的官方文档可在 [ESP8266 Arduino Core 文档](https://arduino-esp8266.readthedocs.io/en/2.4.2/) 中找到,包含完整的 API 参考和示例代码。
---
阅读全文
相关推荐



















