完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在使用带有 SOFTAP-Mode 的ESP8266。
与我的安卓手机连接和使用网络服务器可以毫无问题。此外,kolleagues没有报告任何问题。 我也想与我的笔记本连接,但它是不可能的,或者换句话说:在很短的时间内:它永久加入并离开 AP。 请帮助我或提供任何建议。 我正在使用 SDK 1.3 并按照我记录的 LOG 进行操作: ======================================================== 加 1 援助 1 站:5c:c5:d4:de:4c:ac连接,AID = 1 站:5c:c5:d4:de:4c:交流休假,AID = 1 rm 1 . 60 . 61 加 1 援助 1 站:5c:c5:d4:de:4c:ac连接,AID = 1 站:5c:c5:d4:de:4c:交流休假,AID = 1 rm 1 ======================================================== 我也尝试了 SDK 1.1 和 SDK 1.2,但没有成功。 这里使用的初始化序列: ==================================================== void dhcps_lease(void) { 结构体 dhcps_lease dhcp_lease; IP4_ADDR(&dhcp_lease.start_ip, 10, 10, 10, 20); IP4_ADDR(&dhcp_lease.end_ip, 10, 10, 10, 100); wifi_softap_set_dhcps_lease(&dhcp_lease); } 主要例程。初始化 stdout、I/O 和 Web 服务器,我们就完成了。 void user_init(void) { ioObj=&ioObj_static; 结构体 softap_config apConfig; 结构体 ip_info ipinfo; 夏尔·西德[33]; 字符密码[33]; 查尔·麦克地址[17]; 字符信息[150]; int i; struct SettingsData *设置; system_timer_reinit(); ets_wdt_disable(); stdoutinit(); for(i=0;i<1000;i++) os_delay_us(1000); ets_wdt_enable(); os_printf("Startingrn"); settings=getsettingsdataptr(); if (1==1 || readSettings()==false) { os_printf("Read Failedrn"); os_sprintf(settings->password,"%s","esptemplate"); os_sprintf(settings->ssid,"%s","esptemplate"); os_sprintf(settings->configstring,""); for(i=0; i<40; i++) settings->params[i]=0L; writesettings(); } if( wifi_get_phy_mode() != PHY_MODE_11G ) { os_printf("*** Setting PHY_MODE ...rn"); wifi_set_phy_mode( PHY_MODE_11B ); } if(wifi_get_opmode() != SOFTAP_MODE) { wifi_set_opmode_current(softap_mode); } wifi_set_opmode_current(softap_mode); wifi_softap_dhcps_stop(); IP4_ADDR(&ipinfo.ip, 10, 10, 10, 1); IP4_ADDR(&ipinfo.gw, 10, 10, 10, 1); IP4_ADDR(&ipinfo.netmask, 255, 255, 255, 0); wifi_set_ip_info(SOFTAP_IF, &ipinfo); wifi_softap_get_config(&apConfig); os_memset(apConfig.ssid, 0, sizeof(apConfig.ssid)); os_sprintf(ssid, "%s", settings->ssid); os_memcpy(apConfig.ssid, ssid, os_strlen(ssid)); 如果 (wifi_get_opmode() == SOFTAP_MODE) { 如果 (1==0) { SSID的 os_memset(apConfig.password, 0, sizeof(apConfig.password)); os_sprintf(password, "%s", settings->password); os_memcpy(apConfig.password, password, os_strlen(password)); apConfig.authmode = AUTH_WPA_WPA2_PSK; } else { 没有密码 os_memset(apConfig.ssid, 0, sizeof(apConfig.ssid)); os_sprintf(ssid, "%s", "esptemplate2"); os_memcpy(apConfig.ssid, ssid, os_strlen(ssid)); apConfig.authmode = AUTH_OPEN; } apConfig.channel = 1; apConfig.max_connection = 2; apConfig.ssid_hidden = 0; apConfig.ssid_len = 0; apConfig.beacon_interval = 100; wifi_softap_set_config_current(&apConfig); } dhcps_lease(); wifi_softap_dhcps_start(); system_os_task(at_procTask、at_procTaskPrio、at_procTaskQueue、at_procTaskQueueLen); system_os_post(at_procTaskPrio, 0, 0 ); 进程io(ioobj,ioaction_init); 进程io(ioobj,ioaction_setoutputs); os_timer_disarm(ETSTimer *ptimer) os_timer_disarm(&working_timer); os_timer_setfn(ETSTimer *ptimer, ETSTimerFunc *pfunction, void *parg) os_timer_setfn(&working_timer, (os_timer_func_t *)working_cb, (void *)0); void os_timer_arm(ETSTimer *ptimer,uint32_t毫秒,bool repeat_flag) os_timer_arm(&working_timer, 100, 1); httpdInit(builtInUrls, 80); os_printf("nReadyn"); } |
|
相关推荐
1个回答
|
|
从您提供的信息来看,您的ESP8266设备在与某些设备(如笔记本电脑)连接时遇到了问题。以下是一些建议和可能的解决方案,以帮助您解决这个问题:
1. **检查固件版本**:确保您的ESP8266设备使用的是最新版本的固件。过时的固件可能会导致连接问题。 2. **检查信道设置**:在ESP8266中,信道设置可能会影响连接质量。尝试更改信道设置,看看是否能够解决问题。您可以在代码中找到信道设置,如下所示: ```c wifi_set_channel(1); // 尝试更改信道号(1-14) ``` 3. **检查加密类型**:确保您的ESP8266设备使用的加密类型与您的笔记本电脑兼容。例如,如果您的设备使用WPA2加密,而您的笔记本电脑仅支持WPA,那么连接可能会失败。您可以在代码中找到加密类型设置,如下所示: ```c wifi_station_set_encrypt_type(STATION_ENCRYPT_TYPE_WPA2_PSK); ``` 4. **检查SSID和密码**:确保您输入的SSID和密码正确无误。错误的SSID或密码可能会导致连接失败。 5. **检查设备兼容性**:某些设备可能与ESP8266不完全兼容。尝试将ESP8266与其他设备(如智能手机)进行比较,看看是否存在类似的问题。 6. **检查电源供应**:不稳定的电源供应可能会影响ESP8266的性能。确保您的设备连接到稳定的电源。 7. **检查日志输出**:从您提供的日志输出来看,设备似乎在尝试连接时出现了一些问题。您可以在代码中添加更多的日志输出,以便更好地了解问题所在。例如: ```c os_printf("Connecting to AP...n"); ``` 8. **尝试使用其他设备**:如果可能的话,尝试使用其他ESP8266设备,看看问题是否仍然存在。这可以帮助您确定问题是否与特定的设备有关。 9. **更新SDK**:您提到您正在使用SDK 1.3。尝试更新到最新版本的SDK,看看是否能够解决问题。 10. **寻求社区支持**:如果以上建议都无法解决问题,您可以在ESP8266社区论坛或相关技术论坛上寻求帮助。那里的用户可能已经遇到了类似的问题,并可能提供解决方案。 希望这些建议能够帮助您解决问题。祝您好运! |
|
|
|
只有小组成员才能发言,加入小组>>
733 浏览 1 评论
552浏览 6评论
461浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
445浏览 5评论
446浏览 4评论
417浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 18:56 , Processed in 0.770204 second(s), Total 83, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号