乐鑫技术交流
直播中

贺楠

8年用户 1026经验值
私信 关注
[问答]

使用wifi_station_set_config将SSID和密码直接写入config,如何设置WiFi以连接隐藏的12-14个频道?

我使用 wifi_station_set_config(struct station_config *config) 将 SSID 和密码直接写入 config。但是我无法连接到隐藏的 12-14 频道的 WiFi。如果我将频道设置为 11,我就可以连接。
如果是这样,如何设置 WiFi 以连接隐藏的 12-14 个频道?

回帖(1)

爱吃果冻

2024-7-9 16:04:12
要连接隐藏的12-14频道的WiFi,您需要确保您的设备支持这些频道,并且遵循以下步骤:

1. 首先,确保您的设备支持12-14频道。这通常取决于您的设备硬件和固件。如果您的设备不支持这些频道,您将无法连接。

2. 在设置WiFi配置之前,您需要获取目标WiFi网络的确切频道。这可以通过扫描附近的WiFi网络来实现。您可以使用ESP8266或ESP32的`esp_wifi_scan_start()`函数来扫描附近的网络。

3. 在获取到目标WiFi网络的频道后,您可以设置`struct station_config`结构体中的`channel`字段。例如,如果您要连接到一个隐藏的13频道的网络,您可以这样设置:

```c
struct station_config config;
memset(&config, 0, sizeof(struct station_config));
strcpy((char *)config.ssid, "您的SSID");
strcpy((char *)config.password, "您的密码");
config.bssid_set = 0; // 0表示不设置MAC地址
config.threshold.authmode = WIFI_AUTH_WPA2_PSK; // 设置认证模式
config.threshold.rssi = -127; // 设置信号强度阈值
config.channel = 13; // 设置频道为13
```

4. 使用`wifi_station_set_config(&config)`函数将配置应用到您的设备。

5. 最后,使用`wifi_station_connect()`函数尝试连接到目标WiFi网络。

请注意,连接隐藏的12-14频道的WiFi网络可能会受到法规和地区限制。确保您所在的地区允许使用这些频道。

如果您遵循了上述步骤,但仍然无法连接到隐藏的12-14频道的WiFi网络,建议您检查您的设备是否支持这些频道,或者尝试更新您的设备固件。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分