• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32F746疑问

FEItwo 2019-01-19 浏览量:472
STM32F746ZG NUCLEO+Lwip+FREERTOS在不插网线无法完成网络初始化,主要表现在不插网线等待很长时间然后再插入网线硬件灯有反应但是网络无法ping通,或网络ping延迟很大无法使用,中断有反应,请教用轮询的方式如何重新初始化ETH(DMA&MAC)?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这个应该是你代码中间哪部分写冗余了,我推测有这么几个可能:

    1、你习惯了dhcp,所以不插线的时候,没有地址,后续进程阻塞

    2、arp冲突检测,需要验证你设置的地址是否已经在使用,而等待回应的arp报文时间过长。

    3、执行网络检测步骤不合理,比如 检测link的管理状态——link的运行状态——设置地址(静态或动态)——冲突检测——使能网络……

    • 发布于 2019-01-19
    • 举报
    • 评论 1
    • 0
    • 0
2016大圣 回复了 9604a3b72d92b876:点赞 回复

其他答案 数量:5
  • 应该哪里有超时检测网络,你找找看,把他改成定时检测网络,超时设置短一些
    • 发布于2019-01-19
    • 举报
    • 评论 1
    • 0
    • 0
2016大圣 回复了 yhj416606438 :点赞 回复

  • 你可以参考一下官方给出的锁定静态IP的例程,它在一开始就配置好了一个固定的IP,而不是DHCP分配,用那个例程来改就好。

    • 发布于2019-01-21
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库的那些函数都是有超时功能的,将超时改小一点就行
    • 发布于2019-02-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 应该是代码中的移植时,在配置时不通过会不断等待的,最好仿真下代码
    • 发布于2019-02-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 在你的网络库中可以添加一个超时检测的代码,用超时来处理
    • 发布于2019-02-23
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32F746疑问