本帖最后由 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);
}
}
}
|