我有以下草图:
#include "WiFi.h"
#include "esp_wpa2.h"
const char WIFI_SSID[] = "";
#define EAP_IDENTITY ""
#define EAP_PASSWORD ""
void setup() {
Serial.println("Connecting to Wi-Fi");
// disconnect from WiFi to set new WiFi connection
WiFi.disconnect(true);
WiFi.mode(WIFI_STA);
esp_wifi_sta_wpa2_ent_set_identity((uint8_t *)EAP_IDENTITY, strlen(EAP_IDENTITY));
esp_wifi_sta_wpa2_ent_set_username((uint8_t *)EAP_IDENTITY, strlen(EAP_IDENTITY));
esp_wifi_sta_wpa2_ent_set_password((uint8_t *)EAP_PASSWORD, strlen(EAP_PASSWORD));
esp_wpa2_config_t config = WPA2_CONFIG_INIT_DEFAULT();
esp_wifi_sta_wpa2_ent_enable(&config);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
}
void loop() {
// put your main code here, to run repeatedly:
}
我基于这个例子。在 ESP32 上运行时出现以下错误:
/home/Documents/sketch_jul25a/sketch_jul25a.ino: In function 'void setup()':
sketch_jul25a:16:5: error: 'esp_wpa2_config_t' was not declared in this scope
esp_wpa2_config_t config = WPA2_CONFIG_INIT_DEFAULT();
^~~~~~~~~~~~~~~~~
/home/Documents/sketch_jul25a/sketch_jul25a.ino:16:5: note: suggested alternative: 'esp_eth_config_t'
esp_wpa2_config_t config = WPA2_CONFIG_INIT_DEFAULT();
^~~~~~~~~~~~~~~~~
esp_eth_config_t
sketch_jul25a:17:35: error: 'config' was not declared in this scope
esp_wifi_sta_wpa2_ent_enable(&config);
^~~~~~
/home/Documents/sketch_jul25a/sketch_jul25a.ino:17:35: note: suggested alternative: 'confstr'
esp_wifi_sta_wpa2_ent_enable(&config);
^~~~~~
confstr
Multiple libraries were found for "WiFi.h"
Used: /home/snap/arduino/85/.arduino15/packages/esp32/hardware/esp32/2.0.10/libraries/WiFi
Not used: /snap/arduino/85/libraries/WiFi
Not used: /home/snap/arduino/current/Arduino/libraries/WiFiNINA
exit status 1
'esp_wpa2_config_t' was not declared in this scope
我已经尝试遵循 WiFiNINA 的替代方法,完全省略配置变量。无法连接 WiFi。 wifi 配置应该适用于没有领域、也没有证书的 PEAP-MSCHAPv2