打印

GD32F105RB 使用官方USB例程,运行至枚举状态机时进入死循环

[复制链接]
3659|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
凌不野|  楼主 | 2022-10-9 08:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
将外部晶振修改为8M之后,打印主频96M,一切正常,但是USB的时钟源是未进行修改,应为我主频没变,时钟配置如下void usb_rcu_config(void)
{
        uint32_t system_clock = rcu_clock_freq_get(CK_SYS);
        printf("系统时钟为:%d\n", system_clock);
    if (48000000U == system_clock) {
        usbfs_prescaler = RCU_CKUSB_CKPLL_DIV1;
        timer_prescaler = 3U;
    } else if (72000000U == system_clock) {
        usbfs_prescaler = RCU_CKUSB_CKPLL_DIV1_5;
        timer_prescaler = 5U;
                printf("系统时钟为:%d\n", system_clock);
    } else if (96000000U == system_clock) {
        usbfs_prescaler = RCU_CKUSB_CKPLL_DIV2;
        timer_prescaler = 7U;
    }  else {
        /*  reserved  */
    }


    rcu_usb_clock_config(usbfs_prescaler);
    rcu_periph_clock_enable(RCU_USBFS);
}
但是运行至枚举状态机时就卡死在死循环不出来,这是为什么呢

进入case HOST_DEV_ENUM:之后:调用usbh_devdesc_get (uhost, 8U)) -----》》》usbh_ctl_handler (uhost);------》》》
if (URB_DONE == usbh_urb_wait (uhost, uhost->control.pipe_in_num, DATA_STAGE_TIMEOUT)) {
        uhost->control.ctl_state = CTL_STATUS_OUT;


    }

就卡死在这个等待

使用特权

评论回复
沙发
凌不野|  楼主 | 2022-10-9 12:57 | 只看该作者

使用特权

评论回复
板凳
dsyq| | 2022-10-9 21:41 | 只看该作者
用GD32F305试试,稳定性好一些

使用特权

评论回复
地板
HPQhpqhpq| | 2024-11-12 10:13 | 只看该作者
请问楼主如何解决的,我的是305的也卡在这里

使用特权

评论回复
5
HPQhpqhpq| | 2024-11-12 10:14 | 只看该作者
dsyq 发表于 2022-10-9 21:41
用GD32F305试试,稳定性好一些

请问楼主如何解决的,我的是305的也卡在这里

使用特权

评论回复
6
高级安全大使| | 2025-1-31 18:39 | 只看该作者
如果时钟配置不正确,USB 外设无法稳定运行,可能导致枚举过程中的死循环。

使用特权

评论回复
7
duo点| | 2025-3-12 11:12 | 只看该作者
可能是时钟配置问题

使用特权

评论回复
8
海滨消消| | 2025-3-12 16:56 | 只看该作者
检查DATA_STAGE_TIMEOUT的值是否合适。如果超时时间太短,可能导致等待不成功。

使用特权

评论回复
9
onlycook| | 2025-3-12 19:23 | 只看该作者
系统时钟不稳定导致的?

使用特权

评论回复
10
七毛钱| | 2025-3-12 22:00 | 只看该作者
USBH库版本与GD32F105RB的硬件和固件不兼容。

使用特权

评论回复
11
豌豆爹| | 2025-3-13 11:00 | 只看该作者
USB接口连接是否正常

使用特权

评论回复
12
麻花油条| | 2025-3-14 11:00 | 只看该作者
用USB分析仪来捕获USB通信数据,分析枚举过程中的数据包是否正常。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝