请教!!!:LwIP移植中初始化DP83848C不成功的问题,请各位帮忙,如果能得到ffxz的解答,将不胜感

2019-12-15 11:01发布

工程是用的ST的网口移植例程,RMII模式,无操作系统,硬件是STM32F107+DP83848C。在移植LwIP的过程中,发现网络可以连接(硬件板接电脑),但是就是ping不通,但连接也要很久,不知道是什么问题。后来软件单步跟踪调试,发现他在这个函数
  /* Configure Ethernet */
  ETH_Init(Ð_InitStructure, PHY_ADDRESS);
也就是配置DP83848的地方没有得到正确的返回值ETH_SUCCESS。在跟踪进入这个函数,结果发现它在
    /* We wait for linked satus... */
    do
    {
      timeout++;
    } while (!(ETH_ReadPHYRegister(PHYAddress, PHY_BSR) & PHY_Linked_Status) && (timeout < PHY_READ_TO));
这里做循环,直到超时,即timeout达到PHY_READ_TO,就返回不成功的ETH_ERROR。在仔细看,其实它是因为没有读到PHY_Linked_Status这个状态造成的。当然我在跟踪到ETH_ReadPHYRegister的内部,在
  do
  {
    timeout++;
    tmpreg = ETH->MACMIIAR;
  } while ((tmpreg & ETH_MACMIIAR_MB) && (timeout < (uint32_t)PHY_READ_TO));
这里出现了问题,这个ETH_ReadPHYRegister函数,实在费劲,一句一句的啃,还是不甚明了,求解释
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
24条回答
q405228062
1楼-- · 2019-12-17 01:52
ffxz 发表于 2011-11-23 22:53
刚看到 :-) 最近比较忙,白天也上不了ourdev.cn,难道是被屏蔽了?!

其实看你的帖子标题就猜到你没配置好 ...

请问这个PHY地址该怎么填  还有所说大侠的穷举法可以告诉我在哪边找吗 谢谢
q405228062
2楼-- · 2019-12-17 06:34
 精彩回答 2  元偷偷看……
05210324kw
3楼-- · 2019-12-17 10:44
初入网络 DP83848C 和电脑连接是用交叉网线 还是直连网线。
wele
4楼-- · 2019-12-17 13:10
楼主,我也用 RMII模式,无操作系统,硬件是STM32F107+DP83848C,50m时钟由stm32f107的mco提供,但是上电后,DP83848C发烫,3.3v上电流也很大。
LED_ACT的 黄 {MOD}LED也亮了。不知道为什么。楼主能告诉正常3.3v的电流应该是多大?我查查我的,看正常不,估计应该不正常
youhui
5楼-- · 2019-12-17 18:43
默认地址是1,手册写的很详细
chengying
6楼-- · 2019-12-17 22:51
想请教一下大侠们,使用DP83848的LWIP中如何修改网络物理地址

一周热门 更多>