[tr]我把原来的网络
通信的程序稍微改了一下,测试长时间的数据发送情况,发现了一个问题,在长时间的发送过程中,EMAC_linkStatus这个函数一直会被调用,查了一下这个函数是连接状态发生变化的时候会被调用,在运行了将近两小时的时候有一次没有连接的情况,从另一侧抓的包来看,后面应该是连接又恢复了,想问下为什么连接状态会变。
/****************************************************************************/
/* */
/* 回调函数 获取连接状态 */
/* */
/****************************************************************************/
// 这个函数被驱动调用 不要修改函数名
void EMAC_linkStatus(unsigned int phy, unsigned int linkStatus)
{
UARTprintf("Link Status: %s on PHY %dn",LinkStr[linkStatus],phy);
}
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: 100Mb/s Full Duplex on PHY 0
Link Status: No Link on PHY 0
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
sendto error :-1
ENOBUFS
Link Status: 100Mb/s Full Duplex on PHY 0
sendto error :-1
[/tr]