DP83848C: DP83848的初始化 复位 指示灯相关问题

Part Number: DP83848C

我根据GD32的官方例程来调试DP83848,我理解的流程是检测到网线插入后再对phy进行初始化,网线拔出后,复位DP83848,等待再次插入网线再重新初始化。我程序也是这样做的,通讯轮询BMSR的LINKED_STATUS位识别网线是否插入,如果插入就执行enet_inti,如果检测到网线拔出,就向BMCR写入0x8000,大部分时候都是可以正常工作的,ACT灯是闪烁的,但会出现ACT灯常亮的时候,这时候无法与外部建立网络连接,我想知道是什么原因导致的,如何避免,或者说我的流程是否需要修改。