....F407 LWIP 不插网线无法初始化成功...

2020-01-10 19:43发布

....刚才调试F407+LWIP+LAN8720,发现个问题,上电后需要先插入网线与设备连接初始化能过,不插过不了,请问怎么解决...

PS:

do
    {
      timeout++;
    } while (!(ETH_ReadPHYRegister(PHYAddress, PHY_BSR) & PHY_Linked_Status) && (timeout < PHY_READ_TO));
   
    /* Return ERROR in case of timeout */
    if(timeout == PHY_READ_TO)
    {
      err = ETH_ERROR;
      goto error;
    }
卡在这,ETH_ReadPHYRegister正常执行,这里面必须与PHY_Linked_Status进行与操作么?...
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
boyie0
1楼-- · 2020-01-10 23:56
开个进程等插入网线再初始化,或者设置标志位等插入网线。。。

ETH_ReadPHYRegister(PHYAddress, PHY_BSR) & PHY_Linked_Status

这个就是检测插入网线没的函数, 开个进程或者主循环检测就可以知道有网线插入没了。
dy22511825
2楼-- · 2020-01-11 03:53
boyie0 发表于 2018-6-2 00:26
开个进程等插入网线再初始化,或者设置标志位等插入网线。。。

ETH_ReadPHYRegister(PHYAddress, PHY_BSR) ...

想出这个方法
openmcu666
3楼-- · 2020-01-11 09:51
bg8wj
4楼-- · 2020-01-11 14:44
正点原子的这个例程如上提到的修改检测网线插入的部分,另外补充下后续修改dhcp 为不使用DHCP分配IP地址,采用静态地址。要不后续很难ping通。
dy22511825
5楼-- · 2020-01-11 19:37
 精彩回答 2  元偷偷看……
openmcu666
6楼-- · 2020-01-11 22:19
dy22511825 发表于 2018-6-3 20:48
...DP83848 可以用这个做个监控

可以有相关的寄存器的

一周热门 更多>