搜索

GD32F4以太网在软件复位时卡住

[复制链接]
569|9
 楼主 | 2020-7-6 18:44 | 显示全部楼层 |阅读模式
se, ev, DM
我使用的是官方1.4的库里的以太网例程,连接网线下载程序后,打开DEBUG发现程序一直卡在 reval_state = enet_software_reset();
进去后发现,dma_flag = (ENET_DMA_BCTL & ENET_DMA_BCTL_SWR); SWR位一直不复位。

使用特权

评论回复
 楼主 | 2020-7-6 18:49 | 显示全部楼层
enet_system_setup();
enet_gpio_config();
enet_mac_dma_config();

    reval_state = enet_software_reset();
    if(reval_state == ERROR){
        while(1){}

}

    /* reset all core internal registers located in CLK_TX and CLK_RX */
    ENET_DMA_BCTL |= ENET_DMA_BCTL_SWR;

    /* wait for reset operation complete */
    do{
        dma_flag = (ENET_DMA_BCTL & ENET_DMA_BCTL_SWR);
        timeout++;
    }while((RESET != dma_flag) && (ENET_DELAY_TO != timeout));



PHY芯片配置的管脚也是对的,PHY芯片也复位了,但就是卡在软件复位这里。
有没有大佬帮忙看下。

使用特权

评论回复
| 2020-7-27 11:35 | 显示全部楼层
楼主问题解决了吗,我也遇到相同的问题了...

使用特权

评论回复
| 2020-8-3 18:18 | 显示全部楼层
纯硬件复位可以吗

使用特权

评论回复
| 2020-8-3 18:19 | 显示全部楼层
先排除一下是硬件问题还是软件问题啊

使用特权

评论回复
| 2020-8-3 18:19 | 显示全部楼层
帮楼主顶一下

使用特权

评论回复
| 2020-8-3 18:19 | 显示全部楼层
楼主问题解决了吗

使用特权

评论回复
| 2020-8-3 18:19 | 显示全部楼层
我也很关心这个问题

使用特权

评论回复
| 2021-2-22 13:02 | 显示全部楼层
楼主,后来问题解决了吗,我也遇到了

使用特权

评论回复
| 2021-2-26 10:22 | 显示全部楼层
void enet_deinit(void)
{
    rcu_periph_reset_enable(RCU_ENETRST);
    rcu_periph_reset_disable(RCU_ENETRST);
    enet_initpara_reset();
    rcu_periph_reset_enable(RCU_ENETRST);//新增
}
在void enet_deinit(void)函数中,新增 rcu_periph_reset_enable(RCU_ENETRST);软件复位就可以过

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表