USB论坛
直播中

王超

7年用户 1305经验值
私信 关注
[问答]

STM32F105通过CubeMx创建USB HID始终无法识别是为什么?

STM32F105 通过CubeMx创建USB HID始终无法识别

这两天拿一个现成的板子想测试一下USB功能,但是通过最新版的CubeMx创建的项目文件,下载之后始终无法被windows识别(unkown device)。
F105的USB和CAN等接口可以共存,所以在验证过程中把两种组合都测试了一遍,涛声依旧,无法识别。

即使将debug级别调整为3,想输出上电期间的任何消息,没有任何错误消息从调试usart端口输出。说明运行似乎还特正常。

除了USB功能之外,在主循环内的代码无误(这里将CAN已经去掉)。USART工作无误。
cubemx内将USB直接设置为device,然后PA10(作为OTG的ID)自动忽略。
系统始终通过MX自动设置,看起来也是没有问题。

甚至使用仿真器进入到USB上电枚举过程,也可以在运行。但是,这些似乎都无效。总之一句话:不认。
这里USB_EN为L时,则板子作为device连接到主机(PC),为高时,则USB的DP为悬空,主机认为没有设备连接。

问题:还有什么需要考虑的吗?需要修改MX自动生成的HID(不是自定义的)的代码?

回帖(1)

王玲

2024-1-24 17:46:52
有几个可能的原因导致您的STM32F105通过CubeMx创建的USB HID无法被识别:

1. 配置错误: 确保您已正确配置CubeMx来生成USB HID代码。检查USB和HID的配置选项,确保启用了正确的功能和正确的引脚分配。

2. 错误的连接: 确保您的STM32F105与电脑连接正确。使用正常工作的USB线缆,并确保将STM32F105板连接到电脑的可用USB端口。

3. 驱动问题: 确保计算机上已安装正确的USB驱动程序。如果出现未知设备错误,尝试重新安装或更新USB驱动程序。

4. USB时钟设置: 确保已正确配置USB时钟。在CubeMx中可以设置USB时钟的源和分频器。确保选择了适当的时钟源,并根据需要进行分频。通常,使用PLL作为时钟源并根据需要进行分频即可正常工作。

5. 硬件问题: 检查硬件电路,确保USB相关引脚连接正确,并且没有任何电路故障。还要确保USB电源和地线接地良好。

如果您已经排除了上述问题,仍然无法识别STM32F105的USB HID,请检查USB初始化代码,并确保正确初始化和配置USB控制器。您可以尝试调整调试级别,以查看是否会输出任何错误消息。

如果上述建议无效,建议查阅STM32F105的参考手册和CubeMx的文档,以获取更详细的指导和故障排除步骤。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分