stm32 LWIP udp发送数据,不建立接收回调函数但有数据传至下位机会怎么样

[复制链接]
查看11 | 回复2 | 2021-1-27 06:46:24 | 显示全部楼层 |阅读模式
功能:stm32通过udp给上位机发送5个字节的数据,上位机返回这5个字节
因为我不需要验证上位机返回给我的数据是不是我发给上位机的,所以没有建立udp通信的接收回调函数。下位机只有udp_send(LDUdp,pbufSend);,没有udp_recv(LDUdp,LDUdp_receive_callback,NULL);
上位机是echo模式,每次都会给下位机的IP地址和端口号发送数据。
问这样底层是怎么处理的,是直接把数据包丢掉还是会一直分配内存给到来的数据?
分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:46:24 | 显示全部楼层
我认为,接收缓冲区大小是固定的(lwipopt.h文件里设置),满了会覆盖,所以不会一直增加内存占用,不用担心
回复

使用道具 举报

千问 | 2021-1-27 06:46:24 | 显示全部楼层
我昨天查了下,udp接收数据后会吧数据传给udp_input函数,然后这个函数给的说明是会释放内存。
可以再问你个问题嘛?我用tcp发送数据,不停的write,out,delay,每次发送1024字节,一开始的时候很快,大概0.05s发一次,但时间(这个时间不固定)久了以后,out之后要过七八秒抓包软件才会抓到数据,有时候还抓不到数据,会是什么原因呢?我同时跑了tcp和udp,udp只给客户端周期性发数据
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行