打印
[STM32F4]

一个关于LWIP的奇怪问题

[复制链接]
712|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sosolife|  楼主 | 2016-7-11 16:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用STM32F407做了一个UDP的收发程序,使用静态IP,平时使用通讯一切正常
但是今天发现个奇怪的问题,如果我的下位机先开机启动,然后再开电脑,就会发现电脑端发送的数据下位机收不到了,接收中断都没有产生,如果这时把下位机重启一下,一切就正常了,通讯正常后,无论怎么重启电脑,都不会有问题。
也就是说,如果下位机在电脑开机前启动,就会收不到电脑下发的数据。
有没有朋友遇到过类似的问题,怎么解决呢? 我连从哪里下手都不知道了
沙发
yklstudent| | 2016-7-11 16:40 | 只看该作者
PC做服务器?
那客户端就一直等着连接服务器成功为止

使用特权

评论回复
板凳
sosolife|  楼主 | 2016-7-11 18:11 | 只看该作者
我现在只能是采用下位机开机后计时,如果一定时间内没收到数据,就软重启STM32,这样到是可以解决电脑后启动而导致的无法收到数据问题
不过这个办法实在是无脑呀,我想找到问题的根源

使用特权

评论回复
地板
JasonWangSE| | 2016-7-12 08:52 | 只看该作者
可以先ping一下对方,看正常和异常情况时是否都能ping通;如果能ping通再去找上层协议的问题;如果ping不通,可以对比一下正常情况和异常情况时下位机以及PC两端的arp表,看对端的arp表项是否存在,如果arp表项不正常,就只能检查网口驱动和收发包的接口有什么问题了

使用特权

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

本版积分规则

1

主题

2

帖子

0

粉丝