DM9000A的自适应寄存器始终设置不了!<br /> PHY_Write ( 0, 0x1200 ); <br /> delay(2000); /* wait >2 ms */ <br /> PHY_Read(0x01); /* PHY 01H register status = 0x7849(默认值)*/<br /> PHY_Read(0x05); /* PHY 05H register status = 0x0000*/<br /><br />以下是PHY读程序:<br />static uint16 phy_read(uint8 offset)<br />{<br /><br /> writetonet(DM_EPAR, 0x40 | offset); <br /> writetonet(DM_EPCR, EPCR_EPOS | EPCR_ERPRR); <br /><br /> while( (readfromnet(DM_EPCR)) & 0x01 ) <br /> {<br /> delay(5); <br /> }<br /> writetonet(DM_EPCR, 0x00); //PHY 清除命令<br /> <br /> return (readfromnet(DM_EPDRL) | (readfromnet(DM_EPDRH) << 8)); <br />}<br />DM9000A的自适应功能始终设置不了,LINK的灯也不亮,大家能帮忙看看错在那里呢?或者是设置的顺序错误? |
|