esp8266的CIPSTART指令发出后没连接上也会返回OK为什么呢?

2019-07-21 02:13发布

atk_8266_send_cmd("AT+CIPMUX=0","OK",20);  
sprintf((char*)p,"AT+CIPSTART="TCP","192.168.000.101",%s,2000",(u8*)portnum);  ceshi=6;  //,,ipbuf 2000ÅäÖÃÄ¿±êTCP·tÎñÆ÷,2000
//                        delay_ms(300);
ceshi=atk_8266_send_cmd(p,"OK",200);

这里本来没连接上ceshi应该=1的,可是每次都是0 。但是调试过程中设置断点的情况下,ceshi就是0正常了。所以在前面加了一个延时试了一下也正常了。而且这个延时小于200ms的时候ceshi还是会直接成为0,也就是8266认为连接上了服务器。或者说它在没连接上的情况下匆匆忙忙也返回了一个OK。

原子哥的原文是
atk_8266_send_cmd("AT+CIPMUX=0","OK",20);  
                        sprintf((char*)p,"AT+CIPSTART="TCP","%s",%s",ipbuf,(u8*)portnum);    //ÅäÖÃÄ¿±êTCP·tÎñÆ÷
                        while(atk_8266_send_cmd(p,"OK",200))
                        {。。。。。“连接服务器没有成功哦”。。。。}

我就是稍微改了一下发现,连接不上服务器的时候这个while也进不去

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。