本帖最后由 celticzy 于 2012-11-4 10:22 编辑
对这个协议栈不是很了解,虽然已经移植自己的平台下,但使用还不熟悉。
我的平台下建立了一个tcp服务器,客服端第一次连接会正常工作,但是若客服端断开就再连接就不行了,下面是应用任务代码,用的是API,对了,版本是1.3.2,操作系统是usos。各位能帮忙看看吗?-
- static void uctsk_TcpTest(void *pdata)
- {
- const uint8_t welcome[] = "hello, world!\r\n";
- struct netconn *__pstConn, *__pstNewConn;
- struct netbuf *__pstNetbuf;
- INT8S *__pbData;
- uint16_t __pbDataLen;
- Init_lwIP();
- __pstConn = netconn_new(NETCONN_TCP);
- netconn_bind(__pstConn, NULL,7);
- netconn_listen(__pstConn);
- __pstNewConn = netconn_accept(__pstConn);
- netconn_write(__pstNewConn,welcome,sizeof(welcome),NETCONN_COPY);
- for(;;)
- {
- if(__pstNewConn != NULL)
- {
- __pstNetbuf = netconn_recv(__pstNewConn);
- netbuf_data (__pstNetbuf, (void *)&__pbData, &__pbDataLen );
- netconn_write(__pstNewConn,__pbData,__pbDataLen,NETCONN_COPY);
- netbuf_delete(__pstNetbuf);
- }
- }
- }
|