stm32F4 的USB问题

在使用stmcube 生成的USB HID程序中,程序在Main中初始化了

  MX_GPIO_Init();

  MX_USB_DEVICE_Init();

跟踪发现USB初始化函数MX_USB_DEVICE_Init时 调用了 USB_CoreInit()其中

    /* Select FS Embedded PHY */

    USBx->GUSBCFG |= USB_OTG_GUSBCFG_PHYSEL;


    /* Reset after a PHY select and set Host mode */

    ret = USB_CoreReset(USBx);


    if (cfg.battery_charging_enable == 0U)

    {

      /* Activate the USB Transceiver */

      USBx->GCCFG |= USB_OTG_GCCFG_PWRDWN;

    }

    else

    {

      /* Deactivate the USB Transceiver */

      USBx->GCCFG &= ~(USB_OTG_GCCFG_PWRDWN);

    }


到 USB_CoreReset()时返回错误, 说明USB模块不能复位。 模块已启用,外设时钟也打开了, 还有什么原因会导致这种问题吗。

已邀请:

admin

赞同来自:

你配置啥都不说,至少把配置截个图, 这样才能知道你哪里的问题?

要不然是时钟, 要不然是heap值太小, 

admin

赞同来自:

另外论坛里已经有很多很详细hid的帖子了. 你可以参数着重新配置生成一下

舒云

赞同来自:

image.png

image.png



工程重做几遍, 都是一样的问题
 

舒云

赞同来自:

image.png

peerless-steeler

赞同来自:

请问楼主解决了吗

要回复问题请先登录注册