完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我写了一个简单的函数来管理我的 ESP8266 的 WiFi 连接。
我从 INI 读取数据,我想根据 INI 设置设置 wWiFi。 我有这个问题,如果我加入 ESP AP 网络只能使用静态 IP(自动 IP 分配不起作用)。 作为 ESP 客户端,如果我尝试断开与一个网络的连接并连接到另一个网络,则失败(返回值 7)。有什么帮助吗? 代码:全选void WiFiConnect(const char* filename) { IPAddress mask; if(ini_open (filename)) { NetworkChoice = ini_read ("NetworkChoice", "network","0"); ClientSSID = ini_read ("network" + NetworkChoice , "ClientSSID","BuddaceCasa"); ClientPassword = ini_read ("network" + NetworkChoice , "ClientPassword","25399750057853538077"); ClientSSID0 = ini_read ("network0", "ClientSSID","BuddaceCasa"); ClientPassword0 = ini_read ("network0", "ClientPassword","25399750057853538077"); ClientSSID1 = ini_read ("network1", "ClientSSID","BuddaceCasa"); ClientPassword1 = ini_read ("network1", "ClientPassword","25399750057853538077"); ClientSSID2 = ini_read ("network2", "ClientSSID","BuddaceCasa"); ClientPassword2 = ini_read ("network2", "ClientPassword","25399750057853538077"); HostSSID = ini_read ("host", "HostSSID","CV19Archimede"); HostPassword = ini_read ("host", "HostPassword","PlasticoCV19"); HostIp = ini_read ("host", "HostIp","10.10.0.1"); HostSubnetMask = ini_read ("host", "HostSubnetMask","255.0.0.0"); ini_close(); } else { NetworkChoice = "0"; ClientSSID = "BuddaceCasa"; ClientPassword = "25399750057853538077"; HostSSID = "CV19ArchimedeDef"; HostPassword = "PlasticoCV19Def"; HostIp = "10.0.0.1"; HostSubnetMask = "255.0.0.0"; } Serial.println(NetworkChoice); Serial.println(ClientSSID); Serial.println(ClientPassword); Serial.println(HostSSID); Serial.println(HostPassword); Serial.println(HostIp); Serial.println(HostSubnetMask); // Connect to Wi-Fi //WiFi.mode(WIFI_AP_STA); WiFi.mode(WIFI_AP_STA); WiFi.softAPdisconnect(); WiFi.disconnect(); delay(1000); Serial.println("Controllo disconnessione"); Serial.println(WiFi.status()); ip.fromString(HostIp.c_str()); mask.fromString(HostSubnetMask.c_str()); WiFi.softAP(HostSSID, HostPassword); WiFi.softAPConfig(ip, ip, mask); WiFi.begin(ClientSSID, ClientPassword); WiFi.hostname("CV19Archimede"); WifiRetry = 0; while((WiFi.status() != WL_CONNECTED) && ( WifiRetry < WIFIRETRY)) { delay(500); WifiRetry ++; if (WifiRetry > WIFIRETRY) { WiFi.disconnect(); } } Serial.println("stato corrente"); Serial.println(WiFi.status()); Serial.println(WiFi.localIP().toString()); ////Serial.println("Stato Wifi = " + String(WiFi.status()) + "fine stato" ); MacAddress = WiFi.macAddress(); WiFi.macAddress(mac); ClientIp = WiFi.localIP().toString(); HostIp_Read = WiFi.softAPIP().toString(); ip = WiFi.localIP(); hostip = WiFi.softAPIP(); WiFiEspNetwork(); } |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
945 浏览 0 评论
1672 浏览 0 评论
请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗
1330 浏览 1 评论
1233 浏览 1 评论
5021 浏览 2 评论
为blufi_device设置自定义名称,但是无法修改,为什么?
1253浏览 4评论
请问ESP32-S2-WROOM怎么获得ESP32-S2外接FLASH的唯一序列号?
927浏览 3评论
2338浏览 3评论
ESP-IDF的VScode插件的build按钮点击会报错的原因?
2526浏览 3评论
ESP-Jumpstart例程中第5个工程:5_cloud连接报错是哪里的问题?
1052浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 05:22 , Processed in 0.822308 second(s), Total 69, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
505
