用SPIFFS保存的wifi名称密码连接不上是哪里的问题
Posted: Tue Mar 07, 2023 5:21 am
我是这样写的,直接用ssid password wifi能连接成功,用SPIFFS保存的new_ssid new_password 信息wifi会一直显示连接中
- #include <WiFi.h>
- #include <WebServer.h>
- #include "SPIFFS.h" // SPIFFS文件系统库
- const char* ssid = "123456";
- const char* password = "12345678";
- String new_ssid;
- String new_password;
- void setup() {
- Serial.begin(115200);
- // 初始化SPIFFS文件系统
- if (!SPIFFS.begin(true)) {
- Serial.println("SPIFFS文件系统初始化失败");
- return;
- }
- // 读取保存的WiFi配置信息
- if (!SPIFFS.exists("/wifinamepass.txt")) {
- Serial.println("WiFi配置文件不存在");
- } else {
- File configFile = SPIFFS.open("/wifinamepass.txt", "r");
- if (configFile) {
- new_ssid = configFile.readStringUntil('\n');
- new_password = configFile.readStringUntil('\n');
- configFile.close();
- if (new_ssid.isEmpty() || new_password.isEmpty()) {
- Serial.println("WiFi配置文件内容不正确");
- } else {
- Serial.println("WiFi配置已加载");
- }
- } else {
- Serial.println("WiFi配置文件读取失败");
- }
- }
- WiFiServer server(8220);
- Serial.print("wifi:(");
- Serial.print(new_ssid.c_str());
- Serial.print(") 密码:");
- Serial.print(new_password.c_str());
- Serial.print(")");
- //WiFi.begin(new_ssid, new_password);
- WiFi.begin(new_ssid.c_str(), new_password.c_str()); //用保存的wifi信息会一直显示连接中
- //WiFi.begin(ssid, password); //用这个wifi可以连接成功
- while (WiFi.status() != WL_CONNECTED) {
- delay(1000);
- Serial.print(".");
- }
- Serial.println("");
- Serial.println("wifi成功连接.");
- Serial.println("IP地址: ");
- Serial.println(WiFi.localIP());
- server.begin();
- }
- void loop() {
- // 处理Web请求
- }