LPC2378网卡问题 <br /><br />初始化网卡时,如果执行 <br />COMMAND = COMMAND_RESET_REG | /* Reset all datapaths and host registers */<br /> COMMAND_RESET_TX |<br /> COMMAND_RESET_RX;<br />这句代码后,再初始化其他寄存器时,总是出现死机的错误。<br />如果去掉这句话,程序就可以初始化其他寄存器。<br />代码段如下:<br /> MAC1 = MAC1_RESET_TX | /* [15],[14],[11:8] -> soft resets all MAC internal modules */<br /> MAC1_RESET_MCS_TX |<br /> MAC1_RESET_RX |<br /> MAC1_RESET_MCS_RX |<br /> MAC1_RESET_SIM |<br /> MAC1_RESET_SOFT;<br /><br /> COMMAND = COMMAND_RESET_REG | /* Reset all datapaths and host registers */<br /> COMMAND_RESET_TX |<br /> COMMAND_RESET_RX;<br /><br /><br /> NetBSP_DlyMs(2); /* Delay for a few milliseconds after reset */<br /><br /> MAC1 = 0; /* Deassert all prior resets */<br /><br /> EMAC_TxDis(); /* Disable the transmitter */<br /> EMAC_RxDis(); /* Disable the receiver */<br />说明:执行程序执行时,执行MAC1 = 0语句时,程序跑飞;<br />去掉 COMMAND = COMMAND_RESET_REG | /* Reset all datapaths and host registers */<br /> COMMAND_RESET_TX |<br /> COMMAND_RESET_RX; <br />这句程序,下面的程序能正常执行。<br /> |
|