利用zynq7020的PS端lwip进行udp通信时出现内存溢出错误怎么解决?
代码返回:Error on udp send : -1
利用zynq的PS端lwip进行udp通信时出现内存溢出错误怎么解决?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 【相关推荐】
- 这篇博客: Zynq-7000基于zynq平台裸跑LWIP协议栈的详解(万字长文)中的 3.2.3 UDP Server 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
UDP服务的创建相比于TCP在理论上简单许多,实现上类似。系统平台设计不需要变更,只需要注意将UDP选项打开即可。建立服务的过程封装成如下的函数:
int new_udp_connect(){
struct udp_pcb *pcb;
err_t err;
unsigned port = ETH_PORT;
//创建pcb
pcb = udp_new();
if(!pcb)
{
xil_printf(“Error creating PCB. Out of Memory\r\n”);
return -1;
}
//绑定端口
err = udp_bind(pcb,IP_ADDR_ANY,port);
if(err != ERR_OK)
xil_printf(“error on udp_connect: %x\n\r”, err);
//设置接收回调函数
udp_recv(pcb,(udp_recv_fn)recv_callback_udp,NULL);
return 0;
}
同样是基于回调函数,但是UDP是直接回调接收回调函数,这与TCP略有差异,UDP接收回调函数如下:
回调函数同样是对接收数据进行简单的处理。While(1)循环内部transfer_data_udp()与TCP相同,也可自行实现其他应用程序。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决评论 打赏 举报无用 2- 这篇博客: Zynq-7000基于zynq平台裸跑LWIP协议栈的详解(万字长文)中的 3.2.3 UDP Server 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
悬赏问题
- ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
- ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
- ¥45 求17位带符号原码乘法器verilog代码
- ¥20 PySide6扩展QLable实现Word一样的图片裁剪框
- ¥15 matlab数据降噪处理,提高数据的可信度,确保峰值信号的不损失?
- ¥15 怎么看我在bios每次修改的日志
- ¥15 python+mysql图书管理系统
- ¥15 Questasim Error: (vcom-13)
- ¥15 船舶旋回实验matlab
- ¥30 SQL 数组,游标,递归覆盖原值