12. WIFI
ESP32-S3 支持 2.4 GHz 的 Wi-Fi 4(802.11n)标准,提供高达 150 Mbps 的数据传输速率。它支持 STA(Station)模式、AP(Access Point)模式和 Wi-Fi 直连(Wi-Fi Direct)模式,可以灵活地连接到其他设备或创建自身的网络。
ESP32-S3 还支持硬件加速的 Wi-Fi 加密算法,包括 WPA/WPA2-PSK 和 WPA3-SAE 加密。这使得加密和解密数据的速度更快,提高了系统的整体性能和安全性。
Wi-Fi 库支持配置及监控 ESP32 Wi-Fi 连网功能。
它有三种模式:
基站模式
(即 STA 模式或 Wi-Fi 客户端模式),此时 ESP32 连接到接入点 (AP)。AP 模式
(即 Soft-AP 模式或接入点模式),此时基站连接到 ESP32。AP-STA 共存模式
(ESP32 既是接入点,同时又作为基站连接到另外一个接入点)。
MicroPython官方资料链接:http://www.86x.org/en/latet/library/network.WLAN.html
python
#热点模式允许用户将自己的ESP32配置为热点,
#这让多个 ESP32 芯片之间的无线连接在不借助外部路由器网络的情况下成为可能。
import network
ap = network.WLAN(network.AP_IF) # 创建一个热点
ap.active(True) # 激活热点
# 为热点配置热点名称,通道,加密方式,密码
ap.config(essid='LCKFB', channel=5, authmode=3, password="12345678")
#将 ESP32 连接到 WiFi 网络
"""
import time
import network
# 设置路由器 WiFi 账号与密码
ssid = 'qwer'
password = '12345678'
# 创建 WIFI 连接对象
wlan = network.WLAN(network.STA_IF)
# 激活 wlan 接口
wlan.active(True)
# 扫描允许访问的 WiFi
print('扫描周围信号源:', wlan.scan())
print("正在连接 WiFi 中", end="")
#
wlan.connect(ssid, password)
# 如果一直没有连接成功,则每隔 0.1s 在命令号中打印一个 .
while not wlan.isconnected():
print(".", end="")
time.sleep(0.1)
# 连接成功之后,打印出 IP、子网掩码(netmask)、网关(gw)、DNS 地址
print(f"\n{wlan.ifconfig()}")
"""
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
30
31
32
33
34
35
36
37
38
39
40
41
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
30
31
32
33
34
35
36
37
38
39
40
41