无法设置esp8266 arduino的Station only模式
Can't set Station only mode of esp8266 arduino
在WIFI_AP
模式下一切正常,但在WIFI_STA
模式下仍然处于WIFI_STA_AP
模式。
如何在没有可用软件接入点的情况下将 WiFi 设置为仅站。
if(wmode == "AP") {
Serial.println("Starting in AP mode");
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid, pwd);
WiFi.softAPConfig(charToIPAddress(ip), charToIPAddress(gateway), mask);
} else if (wmode == "STA") {
Serial.println("Starting in STA mode");
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, pwd);
WiFi.config(charToIPAddress(ip), charToIPAddress(gateway), mask);
}
编辑:这与 wmode
无关,此代码的 if
语句工作正常,回复:arduino 字符串 class 运算符 (shorthand)
当您使用 WiFi.begin 而不是仅仅设置它时,ESP8266 似乎是 OR 模式参数,并且还会记住它之前处于什么模式(例如,通过重新启动)。调用 WiFi.disconnect();
后跟 WiFi.softAPdisconnect(true);
应该明确告诉 ESP 禁用所有当前 运行 WiFi 操作 - 无论是基础设施模式还是 AP 模式 - 然后你可以定义它应该是什么模式。
在WIFI_AP
模式下一切正常,但在WIFI_STA
模式下仍然处于WIFI_STA_AP
模式。
如何在没有可用软件接入点的情况下将 WiFi 设置为仅站。
if(wmode == "AP") {
Serial.println("Starting in AP mode");
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid, pwd);
WiFi.softAPConfig(charToIPAddress(ip), charToIPAddress(gateway), mask);
} else if (wmode == "STA") {
Serial.println("Starting in STA mode");
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, pwd);
WiFi.config(charToIPAddress(ip), charToIPAddress(gateway), mask);
}
编辑:这与 wmode
无关,此代码的 if
语句工作正常,回复:arduino 字符串 class 运算符 (shorthand)
当您使用 WiFi.begin 而不是仅仅设置它时,ESP8266 似乎是 OR 模式参数,并且还会记住它之前处于什么模式(例如,通过重新启动)。调用 WiFi.disconnect();
后跟 WiFi.softAPdisconnect(true);
应该明确告诉 ESP 禁用所有当前 运行 WiFi 操作 - 无论是基础设施模式还是 AP 模式 - 然后你可以定义它应该是什么模式。