搜索
bottom↓
回复: 27

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

[复制链接]

出0入0汤圆

发表于 2011-11-20 12:58:55 | 显示全部楼层 |阅读模式
工程是用的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函数,实在费劲,一句一句的啃,还是不甚明了,求解释

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2011-11-20 13:03:18 | 显示全部楼层
当然我又反过来想,这个函数是stm32_eth的驱动,应该没有问题,我因此只有怀疑:
1、硬件有问题,但仔细查看硬件中STM32和DP83848相应管脚的连接,并用万用表测试,都是通的,并且DP83848一些关键的电阻和引脚的接法参考数据手册也没问题,实在不知为何。所以寻求各位知道的给个解释,还有不有其他需要特别注意的地方???
2、软件会不会是其他地方的问题,但调试的时候因为是单步,没有跟踪到真正的问题所在处???如果说这儿初始化都不成功,为何后面还能和电脑建立连接,不懂???
3、可不可能是因为在初始化时,也就是在读这个建立连接成功与否的状态之前的配置本身就不正确呢???
4、当然还有其他的问题,我知道的也不多,因此求解???

人微言轻,只要能给出意见或解答,无论可否,将不胜感激……

出0入0汤圆

 楼主| 发表于 2011-11-20 13:10:14 | 显示全部楼层
还有一个现象,我设置的是静态的IP:192.168.1.8,在ping的时候,用抓包工具测试,发现,它给出的Info:who was 192.168.1.8,这说明静态IP没有分配成功???

出0入0汤圆

发表于 2011-11-21 12:58:37 | 显示全部楼层
i'm

出0入0汤圆

 楼主| 发表于 2011-11-23 22:21:11 | 显示全部楼层
都过了好几天了,该来结贴了,此问题已解决,这里简单的说一下吧:
正如我怀疑的第3点,确实初始化不成功是由于写操作没有成功,具体点儿说吧,
/* We wait for linked satus... */
    do
    {
      timeout++;
    } while (!(ETH_ReadPHYRegister(PHYAddress, PHY_BSR) & PHY_Linked_Status) && (timeout < PHY_READ_TO));
这个老是读不出正确的状态时因为没有对当前DP83848配置。DP83848有个物理地址PHY_ADDRESS。
  /* Configure Ethernet */
  ETH_Init(&#208;_InitStructure, PHY_ADDRESS);

  #define PHY_ADDRESS       0x01 /* Relative to STM3210C-EVAL Board */
  具体去看DP83848手册,

(原文件名:PHY Adr.jpg)

最近一直还在学习中,等完了,我会将调试LwIP收集的一些问题发表到这里来,再次感谢Ourdev的网友,虽然没有人回答这个问题,但是“此时无声胜有声”,因为我知道没有得到大家回答有两种原因:1、知道的人_大多都比较忙,没时间回答,而不是不愿意或不削回答;2、不知道的人想回答,但是又不知道怎么回答。最后“解铃还须系铃人”……

出0入0汤圆

发表于 2011-11-23 22:53:52 | 显示全部楼层
刚看到 :-) 最近比较忙,白天也上不了ourdev.cn,难道是被屏蔽了?!

其实看你的帖子标题就猜到你没配置好PHY,很有可能就是PHY地址不知道如何填。aozima大牛有个穷举大法,基本上都不需要去看手册

出0入0汤圆

 楼主| 发表于 2011-11-24 09:52:29 | 显示全部楼层
回复【5楼】ffxz  
-----------------------------------------------------------------------

呵呵,ffxz还是解答了,履行我的承诺,“不胜感激”一下,。我去看看aozima的穷举大法,相信会很有用……
不过我倒觉得手册是很重要的,根本的,有时候实在没辄的时候,多啃啃,说不定也就能找出问题了……

出0入0汤圆

发表于 2011-11-24 10:32:12 | 显示全部楼层
回复【6楼】adamwin2011  
-----------------------------------------------------------------------
我将来也要移植lwip,不过我现在是个菜鸟,希望和楼主交流一下,相互学习,交个朋友!我的qq:584213578

出0入0汤圆

发表于 2011-12-27 17:26:18 | 显示全部楼层
好东西,顶一下.
头像被屏蔽

出0入0汤圆

发表于 2011-12-27 21:09:19 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-12-28 13:12:55 | 显示全部楼层
学习

出0入0汤圆

发表于 2011-12-29 11:07:38 | 显示全部楼层
adamwin2011  楼主您好
我最近也在做一个网络相关的东东。。想跟楼主学习学习。您能给我传一个您的程序吗?谢谢!!574393077@qq.com

出0入0汤圆

发表于 2012-4-5 14:01:20 | 显示全部楼层
学习+ing

出0入0汤圆

发表于 2012-5-5 20:43:20 | 显示全部楼层
楼主  我遇到了和你一样的问题,,电路图是和官网一样的  你说的这个是怎么解决的呢  麻烦指教一下。。

出0入0汤圆

发表于 2012-5-5 22:38:28 | 显示全部楼层
ffxz 发表于 2011-11-23 22:53
刚看到 :-) 最近比较忙,白天也上不了ourdev.cn,难道是被屏蔽了?!

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

请问这个PHY地址该怎么填  还有所说大侠的穷举法可以告诉我在哪边找吗 谢谢

出0入0汤圆

发表于 2012-7-7 00:18:50 | 显示全部楼层
我也遇到这个问题了, 之前还怀疑是硬件的原因呢

出0入0汤圆

发表于 2012-7-7 08:23:44 | 显示全部楼层
初入网络 DP83848C 和电脑连接是用交叉网线 还是直连网线。

出0入0汤圆

发表于 2012-7-17 13:16:22 | 显示全部楼层
楼主,我也用 RMII模式,无操作系统,硬件是STM32F107+DP83848C,50m时钟由stm32f107的mco提供,但是上电后,DP83848C发烫,3.3v上电流也很大。
LED_ACT的 黄色LED也亮了。不知道为什么。楼主能告诉正常3.3v的电流应该是多大?我查查我的,看正常不,估计应该不正常

出0入0汤圆

发表于 2012-7-23 15:39:13 | 显示全部楼层
默认地址是1,手册写的很详细

出0入0汤圆

发表于 2012-11-14 16:45:11 | 显示全部楼层
想请教一下大侠们,使用DP83848的LWIP中如何修改网络物理地址

出0入0汤圆

发表于 2012-11-14 16:52:04 | 显示全部楼层
107的板子除了用DP83848之外,还能用什么网卡芯片啊?

出0入0汤圆

发表于 2012-11-14 17:09:04 | 显示全部楼层
lovecrystal 发表于 2012-11-14 16:52
107的板子除了用DP83848之外,还能用什么网卡芯片啊?

我看有的板子上用的是DM9161好像!

出0入0汤圆

发表于 2012-11-15 08:31:37 | 显示全部楼层
Veiko 发表于 2012-11-14 17:09
我看有的板子上用的是DM9161好像!

哦 我去搜搜 谢谢啊

出0入0汤圆

发表于 2014-5-13 12:10:53 | 显示全部楼层
adamwin2011 发表于 2011-11-23 22:21
都过了好几天了,该来结贴了,此问题已解决,这里简单的说一下吧:
正如我怀疑的第3点,确实初始化不成功是 ...

楼主您好,我之前也遇到这个问题,现在Dp83848 phy地址已经好了,不过在主函数循环中ETH_CheckFrameReceived()一直返回0,所以一直ping不通,请楼主指点一下。谢谢!

出0入4汤圆

发表于 2016-10-21 14:19:56 | 显示全部楼层
adamwin2011 发表于 2011-11-23 22:21
都过了好几天了,该来结贴了,此问题已解决,这里简单的说一下吧:
正如我怀疑的第3点,确实初始化不成功是 ...

最近在研究lwip也同样遇到这个问题,和楼主一样,看完解决了,谢谢!

出0入0汤圆

发表于 2018-12-1 14:56:35 | 显示全部楼层
谢谢楼主分享!最近我也在用83848
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-18 23:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表