以太网控制芯片DM9000在2440裸机上终于能正确接收数据了(源代码工程已经上传)...

以太网控制芯片DM9000在2440裸机上终于能正确接收数据了(源代码工程已经上传)

(411.47 K) 该附件被下载次数 168

弄了几天DM9000了,一直不能正确接收数据,郁闷了几天,现在终于行了,高兴一下。

参考了这篇文章《单片机驱动DM9000网卡芯片(详细调试过程)》,文章很好,写的很详细,对DM9000驱动感兴趣可以看看原文

http://hi.baidu.com/mikenoodle/blog/item/dda3a4cc034e871800e9287a.html

http://hi.baidu.com/mikenoodle/blog/item/a271def982bc6a51242df279.html

原文就不转载了,主要总结一下我遇到的问题。

问题一 没有开MMU,不能进入中断(我的程序在内存中运行)

问题二:读取DM9000的ID不对

原因1,读基地址不对,在micro2440中应该是

#define DM_ADD (*((volatile unsigned short *) 0x20000300))

#define DM_CMD (*((volatile unsigned short *) 0x20000304))

原因2 ,MMU没有设置好

MMU_SetMTT(0x20000000,0x27f00000,0x20000000,RW_NCNB);

bank4读写类型应该是RW_NCNB

问题三,不能正确接收数据

原因:误读了一个寄存器DM9000_MRCMD,读数据地址自动增加,误读了一次导致,地址偏移,总得不到数据。

稍后上传整个工程的代码,现在比较乱,整理一下再上传。

mirco2440  DM90000驱动

转载于:https://www.cnblogs.com/xilentz/archive/2010/07/12/1775541.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值