Esp32中Wi-Fi 开发介绍及使用:AP模式与STA模式常用函数详解

目录

一、介绍

二、AP模式下常用函数

1.将 Wi-Fi 作为接入点启动。

2.使用函数 softAP 配置 Wi-Fi AP 特性:

3.使用函数softAPConfig配置静态IP、网关、子网掩码

4.使用函数softAPdisconnect强制断开AP连接

5.使用函数softAPgetStationNum获取连接到AP的客户端数量

6.获取AP的IPv4地址

7.获取 AP IPv4 广播地址

8.获取AP的network ID

9.获取AP的子网网段

10.获取AP的子网掩码

11.启用IPv6

12.获取IPv6地址

13.获取AP主机名

14.设置AP主机名

15.设置AP的MAC地址(如果某些特定情况下需要自定义mac地址)

16.获取设置的AP的MAC地址

17.获取AP的SSID

三、AP模式示例代码

四、STA模式下常用函数

1.连接WiFi

2.连接wifi

3.用config设置wifi配置

4.重连

5.断开连接

6.判断是否连接

7.设置自动连接

8.连接丢失时自动重连

9.将 AP 的最低安全性设置为可连接

10.多无线连接WiFiMulti

11.wifi扫描WiFiScan

五、Wifi STA示例代码

六、参考资料


一、介绍

Wi-Fi API 提供对 802.11b/g/n 协议驱动程序的支持。支持以下四种模式

基站模式(即STA模式或Wi-Fi客户端模式),此时ESP32连接到接入点(AP);

AP模式(即Soft-AP模式或接入点模式),此时基站连接到ESP32;

AP-STA共存模式(ESP32既是接入点,同时又作为基站连接到另外一个接入点);

AP-STA混合模式(ESP32既是接入点,同时又作为基站连接到另外一个接入点,且该接入点也有一个或多个客户端连接)。

二、AP模式下常用函数

1.将 Wi-Fi 作为接入点启动。

WiFi.softAP(ssid, password);

2.使用函数 softAP 配置 Wi-Fi AP 特性:

bool softAP(const char* ssid, const char* passphrase = NULL, int channel = 1, int ssid_hidden = 0, int max_connection = 4, bool ftm_responder = false);
  • ssid 设置 Wi-Fi 网络 SSID。
  • passphrase 设置 Wi-Fi 网络密码。如果网络时开放的,则设置为 NULL。
  • channel 配置 Wi-Fi 信道.Wi-Fi信道是指无线网络中传输数据的通道,类似于有线网络中的电缆。 信道的带宽是固定的,而且在同一时间内只能有一个设备使用该信道。如果两个设备同时使用相同的信道,则会发生干扰,从而降低信号质量。
  • ssid_hidden 将网络设置为隐藏
  • max_connection 设置最大同时连接数。默认值为 4。
  • ftm_responder 设置 Wi-Fi FTM 响应程序功能。仅适用于 ESP32-S2 和 ESP32-C3 SoC!

如果配置成功,则返回 true。

3.使用函数softAPConfig配置静态IP、网关、子网掩码

bool softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet);

local_ip IP地址        gateway 网关        subnet 子网掩码

如果配置成功,则返回 true。

4.使用函数softAPdisconnect强制断开AP连接

bool softAPdisconnect(bool wifioff = false);

wifioff 设置位true时断开连接

如果配置成功,该函数将返回 true。

5.使用函数softAPgetStationNum获取连接到AP的客户端数量

uint8_t softAPgetStationNum();

6.获取AP的IPv4地址

IPAddress softAPIP();

7.获取 AP IPv4 广播地址

IPAddress softAPBroadcastIP();

8.获取AP的network ID

IPAddress softAPNetworkID();

该函数将以 IPAddress 格式返回 AP 网络地址。

9.获取AP的子网网段

uint8_t softAPSubnetCIDR();

10.获取AP的子网掩码

IPAddress softAPSubnetMask();

11.启用IPv6

bool softAPenableIpV6();

如果配置成功,该函数将返回 true。

12.获取IPv6地址

IPv6Address softAPIPv6();

该函数将以 IPv6 地址格式返回 AP IPv6 地址。

13.获取AP主机名

const char * softAPgetHostname();

14.设置AP主机名

bool softAPsetHostname(const char * hostname);

如果配置成功,该函数将返回 true。

15.设置AP的MAC地址(如果某些特定情况下需要自定义mac地址)

uint8_t* softAPmacAddress(uint8_t* mac);

16.获取设置的AP的MAC地址

String softAPmacAddress(void);

17.获取AP的SSID

String softAPSSID(void) const;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值