你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F107VCT6+DP83848 在复杂网络环境中网络部分挂掉

[复制链接]
huangzilong1 提问时间:2020-8-27 09:54 /
各路大神,请教一个问题:
     我们有一个控制板带网络控制的,网络部分用的是STM32F107VCT6+DP83848,用了TCP和UDP通讯,已经在很多地方用过是不会死机没有问题的。最近用在一个比较大的内网网络中,部分控制板容易出现网络不通(Ping不通,不能通讯)的情况,重启又好了。此内网中有很多网络设备,包括网络安防监控摄像头,很多网络门禁,很多电脑等等各种设备。

比如:有10个控制板可能通电几个小时后,就有6个控制板会网络不通,有4个还是通的。有时开一天都正常。
现在怀疑是因网络环境复杂之后,有时有大量的广播数据包导致单片机网络部分死掉了?

各路大神,有没有遇到过这种问题,怎么解决的,请赐教!谢谢!
收藏 评论3 发布时间:2020-8-27 09:54

举报

3个回答
kate2005_chen 回答时间:2020-8-28 12:23:02
如果怀疑  大量的广播数据包导致单片机网络部分死掉了,就 在软件中预防应对这部分,及时清空数据和中断。
huangzilong1 回答时间:2020-8-28 18:21:12
STM32F107中:
netif->flags = NETIF_FLAG_BROADCAST | NETIF_FLAG_ETHARP | NETIF_FLAG_LINK_UP;(这里的NETIF_FLAG_BROADCAST)
ETH_InitStructure.ETH_ReceiveAll = ETH_ReceiveAll_Disable;//关闭接收所有的帧
ETH_InitStructure.ETH_BroadcastFramesReception = ETH_BroadcastFramesReception_Enable;//允许接收所有广播帧
试了去掉NETIF_FLAG_BROADCAST这个是不回复目的地址为xxx.xxx.xxx.255的广播的。

windowsbbs 回答时间:2020-9-29 20:23:41
签到签到
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版