欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

lwip中的udp客户端,该怎么解决

更新时间: 2014-01-05 03:14:05 责任编辑: Author_N1

 

lwIP中的UDP客户端
大家好,在lwIP的客户端程序中,我在main函数中写了一个UDP客户端的发送程序,但是执行到udp_send(udppcb, p);时就死机了,麻烦大家帮我检测下是什么原因。

if (flag==1)
{
//主动发起一个UDP连接并发送数据
struct udp_pcb *udppcb;//UDP控制块
struct ip_addr ipaddr;//目标IP地址信息
struct pbuf *p;//pbuf对象
unsigned char senddata[34]={0x7E,0x86,0xF4,0x9D,0x10,0x04,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2B,0x02,0x0D};

//客户端发送数据
p = pbuf_alloc(PBUF_TRANSPORT ,sizeof(senddata), PBUF_RAM);//为pbuf开辟内存空间
p->payload = (void *)senddata;
p->len=p->tot_len=sizeof(senddata);
IP4_ADDR(&ipaddr, 192, 168, 182, 43);
udppcb = udp_new();
udp_bind(udppcb, IP_ADDR_ANY, 160);//绑定本地IP地址和端口
udp_connect(udppcb, &ipaddr, 60000);//连接到远程UDP主机
udp_send(udppcb, p);//发送数据
//udp_recv(udppcb, NULL, NULL);
pbuf_free(p);//销毁pbuf对象释放资源
flag=0;//清除标志位
}

--参考方法--
bind绑定的对不对。抓包工具看一下,看p数据包是否发送出去。
要不试试udp_sendto,
记得有个文档,我找下
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:14:05
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/19832/
本文WWW.DOC100.NET DOC100.NET版权所有。