完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在esp8266启动时,它会尝试连接到接入点。
uint8_t UDP_Start(char* ssid, char* pass, uint16_t loc_port) { uint32_t timeout = 0; if (WiFi.status() != WL_CONNECTED) { rt_parameters.wifi_mode = WIFI_STA; WiFi.mode(WIFI_STA); WiFi.begin(ssid, pass); if (sys_parameters.debug) Serial.println("Waiting for connection"); while (WiFi.status() != WL_CONNECTED) { delay(DELAY_TICK); if (sys_parameters.debug) Serial.print('.'); timeout++; if (timeout >= sys_parameters.ap_con_timeout) { if (sys_parameters.debug) Serial.println(); return UDP_WIFI_ERR; } } Serial.print("nConnection time (ms) "); Serial.println(DELAY_TICK * timeout); } rt_parameters.wifi_status = WiFi.status(); IPAddress ip_addr = WiFi.localIP(); memcpy(sys_parameters.loc_ip, ip_addr, 4); if (sys_parameters.debug) { Serial.print("Connected! IP address: "); Serial.println(ip_addr); Serial.printf("UDP server on port %dn", loc_port); } if (udp.begin(loc_port) == 0) return UDP_CONNECT_ERR; return UDP_OK; } 有时需要合理的时间 - 6-10 秒。有时需要 30-60 秒。有时它会在超时状态超时 wl_connect_failed wl_no_ssid_avail 当它wl_no_ssid_avail时,我执行 WiFi.scanNetworks() 并查看我的接入点。 我怎样才能改善这种情况? |
|
相关推荐
1个回答
|
|
在ESP8266启动时,它会尝试连接到接入点,原因如下:
1. 设备初始化:当ESP8266启动时,它需要进行一系列的初始化操作,包括硬件和软件的配置。连接到接入点是其中一个重要的步骤,因为接入点是设备与外部网络通信的桥梁。 2. 网络连接:ESP8266需要连接到一个无线网络(接入点)以实现与其他设备或服务器的通信。连接到接入点后,ESP8266可以发送和接收数据,实现各种网络功能。 3. 设备配置:在连接到接入点的过程中,ESP8266会根据提供的SSID(网络名称)和密码(网络密码)进行身份验证,以确保连接到正确的网络。 4. 网络服务:连接到接入点后,ESP8266可以利用网络提供的服务,如DNS解析、DHCP分配等,进一步实现网络通信和数据传输。 在提供的代码片段中,`UDP_Start`函数的主要作用是启动UDP通信并尝试连接到指定的接入点。以下是代码的逐步解释: 1. 定义一个名为`timeout`的变量,用于设置连接超时时间。 2. 检查ESP8266当前的WiFi状态,如果状态不是`WL_CONNECTED`(已连接),则执行以下操作: a. 设置WiFi模式为`WIFI_STA`(客户端模式),表示ESP8266将作为客户端连接到接入点。 b. 调用`WiFi.mode(WIFI_STA)`,将ESP8266的WiFi模式设置为客户端模式。 c. 调用`WiFi.begin(ssid, pass)`,使用提供的SSID和密码初始化WiFi连接。 3. 如果ESP8266成功连接到接入点,它将开始监听指定的本地端口(`loc_port`),并准备接收UDP数据包。 通过这个过程,ESP8266在启动时尝试连接到接入点,以实现网络通信和数据传输。 |
|
|
|
只有小组成员才能发言,加入小组>>
313 浏览 0 评论
1170 浏览 1 评论
585浏览 6评论
483浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
468浏览 5评论
467浏览 4评论
442浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 05:56 , Processed in 0.812441 second(s), Total 82, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号