看代码:
/*以下代码的一部分是自己封装的库、组件*/
//引脚初始化
gpio_init(2, GPIO_MODE_OUTPUT);
//LED亮
gpio_set_level(2, 1);
//连接网络
WiFi_connect();
//LED灭
gpio_set_level(2, 0);
/*@delay*/
//创建TCP socket
int c_sock = create_sock("192.168.10.100", 8080);
//连接TCP,问题就是这里,灯灭后总是报错Socket unable to connect: errno 118
//118报错信息就是无法 连接/触及 到(192.168.10.100:8080)的意思
sock_connect(c_sock);
sock_send(c_sock, "hello");
解决办法:
连接WIFI后,不能第一时间去创建socket连接,需要延时,再进行socket通讯;
就在上面/*@delay*/的位置加延时。
我测试了一下,需要900ms以上!
能帮助到的给个♥,我找了一下午的错⑤。
发现要延时的原因了,socket 通讯要在获取到 ip 后才能使用,注册IP的事件,在事件中放个标志位,等待标志位置位后再进行socket 通讯
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)