打印
[STM32L4]

IDE 中生成 USB 程序失败

[复制链接]
146|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
内核558|  楼主 | 2025-3-31 10:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在 L452RE中用STMCube32IDE 中生成 USB 程序失败,显示由于设备描述符错误而枚举失败的 对话框。

还尝试 CubeMX 工具生成代码,导入 IDE 中编译。同样失败。

使用特权

评论回复
沙发
梅花香自123| | 2025-3-31 22:55 | 只看该作者
USB 设备在枚举过程中会检查设备描述符来确定设备类型和能力。如果设备描述符配置错误,枚举就会失败。

使用特权

评论回复
板凳
丢丢手绢666| | 2025-3-31 23:42 | 只看该作者
bLength 和 bDescriptorType 等字段。如果设备描述符配置不正确,USB 主机无法正确识别设备。

使用特权

评论回复
地板
公羊子丹| | 2025-4-1 07:34 | 只看该作者
你用的是 USB 设备模式还是主机模式?如果是设备模式,看看 USBD_Init() 里面的参数对不对。

使用特权

评论回复
5
周半梅| | 2025-4-1 07:35 | 只看该作者
是不是没有正确配置 USB 时钟?检查一下 RCC 里 HSE 或者 HSI48 有没有启用。

使用特权

评论回复
6
帛灿灿| | 2025-4-1 07:36 | 只看该作者
你在 usb_device.c 里 MX_USB_DEVICE_Init() 之后,有没有看到 USBD_Start()?如果没调用,可能 USB 没有真正启动。

使用特权

评论回复
7
童雨竹| | 2025-4-1 07:37 | 只看该作者
设备描述符错误可能是 usbd_desc.c 里的 VID/PID 不对,试试换成官方的 0x0483/0x5740?

使用特权

评论回复
8
万图| | 2025-4-1 07:38 | 只看该作者
你是用 CDC 还是 HID?有些类需要额外的 endpoints 设置,看看 usb_conf.h 里 EP_NUM 够不够用。

使用特权

评论回复
9
Wordsworth| | 2025-4-1 07:39 | 只看该作者
是不是 USB 口的 DM、DP 没有正确连接到 PA11/PA12?可以试试用 GPIO 直接拉高低看看有没有反应。

使用特权

评论回复
10
Bblythe| | 2025-4-1 07:39 | 只看该作者
你的 USB 供电是 3.3V 还是 5V?有些 L4 板子需要 VBUS 供电检测,看看 PWR_CR2 里 USB33DEN 设置对不对。

使用特权

评论回复
11
Pulitzer| | 2025-4-1 07:40 | 只看该作者
试试在 usbd_core.c 里打日志,看 USBD_LL_Init() 有没有返回错误码?

使用特权

评论回复
12
Uriah| | 2025-4-1 07:41 | 只看该作者
你是用 CubeMX 生成的代码,还是手写的?如果是 CubeMX 生成的,试试删掉 USB 相关文件重新生成。

使用特权

评论回复
13
Clyde011| | 2025-4-1 07:42 | 只看该作者
你的 USB 是用的外部晶振吗?有些 L4 需要 HSE 作为 USB 时钟源,看看 SystemClock_Config() 里是不是配置正确。

使用特权

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

本版积分规则

6

主题

6

帖子

0

粉丝