转自:http://blog.sina.com.cn/s/blog_7f0456bf0100zup6.html
static void __CheckPHYID(void)
{
//*
//*
//*
}
调试该函数时DM9000ID号一直不对,总是显示46464646即DM9KS_VID_L的默认值。查阅资料发现问题出在MMU_init()函数,该函数将对应的cache打开了,这样cpu的读写操作都会在cache中进行,导致读取寄存器结果一直相同,解决办法是:
在MMU_SetMTT(0x20000000,0x27f00000,0x20000000,RW_CNB); //bank4 for dm9000
把RW_CNB 改为RW_NCNB
博主:经试验,有效