嵌入式技术william hill官网
直播中

万航渡路

8年用户 1298经验值
擅长:电源/新能源
私信 关注
[问答]

怎样去解决Mini2440平台下RT-Thread Demo中的DM9000驱动问题呢

基于Mini2440平台,使用MDK编译出rtthread-mini2440.afx, 然后以MDK+JLink将rtthread-mini2440.afx下载到Mini2440 SDRAM中以Debug方式运行,从串口中经常会打印出下面的信息

| /
- RT - Thread Operating System
/ |  0.4.0 build Aug 11 2011
2006 - 2011 Copyright by rt-thread team
Initialize fail
No Card assertion
sdcard init failed
finsh />File System initialzation failed!
Device File System initialized!
dm9000 id: 0x90000a46
operating at 100M half duplex mode
TCP/IP initialized!
| /
- RT - Thread Operating System
/ |  0.4.0 build Aug 11 2011
2006 - 2011 Copyright by rt-thread team
Initialize fail
No Card assertion
sdcard init failed
finsh />File System initialzation failed!
Device File System initialized!
dm9000 id: 0x0
To initialize device:e0 failed. The error code is -1
TCP/IP initialized!
| /
- RT - Thread Operating System
/ |  0.4.0 build Aug 11 2011
2006 - 2011 Copyright by rt-thread team
Initialize fail
No Card assertion
sdcard init failed
finsh />File System initialzation failed!
Device File System initialized!
dm9000 id: 0x90000a46
could not establish link
TCP/IP initialized!

从串口打印出来的信息来看,DM9000的初始化代码有BUG!可以确认MINI2440上的DM9000芯片是OK的,在MINI2440上运行Linux,网口一直都是很正常的。请问有人碰到这个问题吗?

如何解决呢!我用DNW工具将rtthread-mini2440.bin下载到MINI2440的SDRAM运行也会出现相同的问题。

回帖(3)

ss

2022-4-11 11:14:58
希望更多的人反馈下,我们这边好像没遇到这样的问题

是否你的硬件不稳定?mini2440的版本是哪个?mini2440用的实际上是DM9000A,而有些2440使用的则是DM9000AEP。
举报

bigbangboom

2022-4-11 11:15:06
我确认了一下,我的MINI2440开发板上的网络芯片是100PIN的DM9000EP!
举报

bigbangboom

2022-4-11 11:15:13
参考了相关文档修改了S3C2440CPU访问DM9000EP的时序:
;//BANKCON4_Val EQU 0x00000700 原来代码默认的时序
BANKCON4_Val EQU 0x00001f7c
之后经测试没有再出现读DM9000EP ID错误和could not establish link的问题。但是运行
RT-Thread Demo时,还是存在在PC端无法PING到MINI2440 开发板的问题,貌似DM9000EP
没有收到Ethernet上的报文
举报

更多回帖

发帖
×
20
完善资料,
赚取积分