STM32F407+dp83848利用UDP协议一次最多能发送多少数据?

2019-07-20 03:59发布

请教一下各位大侠,问题已经困扰我很久了,。。。
移植原子的程序,想测试一下网口的速度,想法是通过网络调试助手,发送一个指令如0xeb90,然后STM32通过网口返回大量数据,然后算出速度。。。。。
看很多资料说如果要发送大量数据的话,可以利用PBUF_POOL类型的Pbuf,然后多个这种类型的pbuf组成pbuf链,要发送的数据包分配到这个链的每个pbuf的payload指向的数据处,原理如图


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
24条回答
刺客mfl
1楼-- · 2019-07-21 04:41
 精彩回答 2  元偷偷看……
刺客mfl
2楼-- · 2019-07-21 06:05
回复【8楼】amyoubo:
---------------------------------
谢谢你,我测的是最多发1467个字节,但是MTU我都给增大了啊,你先在知道为什么数据只能存在pbuf链中的第一个pbuf的payload指向的数据区了吗?
如果这样的话,那还要pbuf链干什么呀
amyoubo
3楼-- · 2019-07-21 07:42
回复【9楼】刺客mfl:
---------------------------------
原子的程序中只有一句ptr->payload=(void*)buffer2;,所以肯定只有第一个Pbuf有数据,我上个回复中的代码就可以把所有的数据填到pbuf链中
刺客mfl
4楼-- · 2019-07-21 12:19
 精彩回答 2  元偷偷看……
amyoubo
5楼-- · 2019-07-21 15:36
恩,两个都没有试过,第一个函数不清楚是干什么的,第二个,由于我当时1400多已经足够我用了,所以并没有试过改MTU,不过我感觉应该可以,前提是你先要手动把数据填到pbuf中
刺客mfl
6楼-- · 2019-07-21 15:52
回复【10楼】amyoubo:
---------------------------------,
还有如果最大只能发送1400多字节的话还不如修改PBUF_POOL_SIZE的大小了,也就是把单个pbuf的payload指向的数据区加大,这样还省事

一周热门 更多>