打印
[STM32F4]

以太网数据发送漏帧

[复制链接]
1273|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
w_u123|  楼主 | 2016-2-24 13:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32F407通过lwip的UDP连续发送多包数据,发送的过程中并无错误返回,但是在接收PC上通过Wireshark抓包发现会少收到其中一帧数据。但是在通讯过程中,调用ST的库函数时,从未返回任何异常。不知这是一个问题,还是本来就应该这样?
沙发
huangxz| | 2016-2-24 13:31 | 只看该作者
首先看看有没有什么规律,偶然还是必然?

使用特权

评论回复
板凳
w_u123|  楼主 | 2016-2-24 13:31 | 只看该作者
huangxz 发表于 2016-2-24 13:31
首先看看有没有什么规律,偶然还是必然?

必然

使用特权

评论回复
地板
w_u123|  楼主 | 2016-2-24 13:34 | 只看该作者
通过加测试代码发现,我的APP调用sendto发送的每一帧都顺利的送到了low_level_output函数中

使用特权

评论回复
5
huangxz| | 2016-2-24 13:34 | 只看该作者
那就直接定位到处理那个帧的位置,看实际处理有没有问题,wireshark不设置滤波,接收不会有什么问题

使用特权

评论回复
6
w_u123|  楼主 | 2016-2-25 15:45 | 只看该作者
huangxz 发表于 2016-2-24 13:34
那就直接定位到处理那个帧的位置,看实际处理有没有问题,wireshark不设置滤波,接收不会有什么问题 ...

APP里UDP的收发是异步的,此时MAC配置寄存器需要使能全双工吗?

使用特权

评论回复
7
E-Kaia| | 2016-2-25 18:23 | 只看该作者
测试一下中断有没有进入,抓包的话有没有丢包,网络变压器工作了吗?

使用特权

评论回复
8
Jessicakjdsl| | 2016-2-26 09:02 | 只看该作者
你的硬件设计是不是有些问题,变压器选的不匹配?

使用特权

评论回复
9
w_u123|  楼主 | 2016-2-29 08:25 | 只看该作者
果然是MAC配置寄存器需要使能全双工。但是如果设置自适应的话,从PHY返回的结果是半双工的,这里需要强制设置为全双工才行

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

23

帖子

1

粉丝