[求助] 请教关于用lwip在lm3s9b96上面做服务器端不断开连接持续接受客户端发送的数据

mataisui   2011-8-11 12:56 楼主
参考academic的程序在9b96上面用lwip  raw api做成服务端,当客户端每次发送数据给服务器端时服务器端都会在接受数据后断开连接,代码参考academic的enet_tcp。
我将close_tcp()函数在App_sent()函数里面注释掉后,同时改变里面tcp_recv(pcb, NULL);变为tcp_recv(pcb, APP_Recv);但调试发现数据第一次发送才会进APP_recv()这样一个回调函数,而客户端(电脑)再次发送却进不去APP_recv()。
我想请问下怎么使得服务器端在不断开连接情况下持续接受客户端发送的数据。

回复评论 (4)

有成功的代码最好能贴上来,学习学习
点赞  2011-8-11 13:06
你缺少个tcp_recved函数
点赞  2011-8-11 13:17
下午上班去搞定了,自己原来没去想,在服务器端接收客户端并且建立连接后,保持recv的回调是所写的APP_RECV就行了,不要对它重新赋值。
点赞  2011-8-11 19:59
我的做服务器时,上位机多次连续发命令有时容易死机啊,怎么回事啊?还有这个tcp_recved函数是在接受数据前调用还是在把数据接收完后处理了在调用它啊?
点赞  2012-11-30 16:56
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复