完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
按键长按3s之后先进入WiFi连接事件,发现连接不上才进入配网模式,这样时间就比较久了,配网重新清除存在nvs的WiFi信息,但为啥还要加重启函数呢?这是按键3s之后的程序:
//按键长按,清除配网信息并重启printf( "key long pressn"'); ESP_ERROR_CHECK(nvs_flash_erase()); ESP_LOGI (TAG , "set Restart now. n"); esp_restart(); 我如果没有添加esp_restart()函数,发现配网时一直重启,导致连不上WiFi,一添加esp_restart()函数,就会先进入WiFi连接事件,连不上才进入配网模式,我想要的是长按3s马上进入配网模块,不懂要添加esp_restart()函数之后才能配网。 |
|
相关推荐
1个回答
|
|
在ESP32C3中,使用按键长按3秒进入配网模式是一种常见的做法。在这个过程中,重启模块是一个重要的步骤,原因如下:
1. **清除状态**:重启模块可以确保所有的状态和配置都被清除,包括网络连接状态。这样可以避免在重新配置网络时出现冲突或错误。 2. **重置网络连接**:在长按3秒后,ESP32C3会尝试连接到之前存储在NVS中的WiFi网络。如果连接失败,它会进入配网模式。但是,如果不重启模块,ESP32C3可能会继续尝试连接到旧的网络,而不是进入配网模式。 3. **确保配置生效**:重启模块可以确保在清除NVS中的WiFi信息后,新的配置能够生效。如果不重启,ESP32C3可能会继续使用旧的配置,导致无法进入配网模式。 4. **避免无限循环**:如果不重启模块,ESP32C3可能会在尝试连接到旧网络和进入配网模式之间无限循环。这会导致设备无法正常工作。 综上所述,添加`esp_restart()`函数是必要的,因为它可以确保ESP32C3在长按3秒后能够正确地进入配网模式。如果不添加这个函数,设备可能会一直尝试连接到旧的网络,导致无法进入配网模式。 关于你提到的“长按3秒马上进入配网模块”,实际上,ESP32C3在长按3秒后会先尝试连接到之前存储的WiFi网络,如果连接失败,它才会进入配网模式。这是正常的流程,因为设备需要先尝试使用旧的配置,如果失败,再进行配网。这样可以避免在不必要的情况下重新配置网络。 |
|
|
|
只有小组成员才能发言,加入小组>>
172个成员聚集在这个小组
加入小组430 浏览 1 评论
1293 浏览 1 评论
598浏览 6评论
495浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
481浏览 5评论
476浏览 4评论
462浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-12 00:19 , Processed in 0.707459 second(s), Total 75, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号