硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4003|回复: 11
收起左侧

[USB] STM32H7 USB Host 枚举设备失败

[复制链接]

1

主题

4

回帖

7

积分

新手上路

积分
7
发表于 2021-7-9 11:35:40 | 显示全部楼层 |阅读模式
现在问题是主函数的USBH_Process(&USB_OTG_Core, &USB_Host);中无法枚举成功,下推发现是无法获得设备描述符,URB一直是notready或者error。时钟用的是HSI48,板子是STM32H755, 想问问有可能是什么原因导致的
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2021-7-9 12:51:23 | 显示全部楼层
方便的话,发下你的时钟配置看下。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2021-7-9 18:46:17 | 显示全部楼层

你用的是内部HSI实现480MHz吗,那你这里配置__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3);是不对的,应该是SCALE0
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2021-7-12 15:47:32 | 显示全部楼层
eric2013 发表于 2021-7-9 18:46
你用的是内部HSI实现480MHz吗,那你这里配置__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCA ...

是使用内部hsi实现480Mhz,但好像scale0就无法运行
回复

使用道具 举报

19

主题

31

回帖

88

积分

初级会员

积分
88
发表于 2021-7-12 17:16:22 | 显示全部楼层
内部供电开了么 HAL_PWREx_EnableUSBVoltageDetector()
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2021-7-13 00:18:43 | 显示全部楼层
laqqqqq 发表于 2021-7-12 15:47
是使用内部hsi实现480Mhz,但好像scale0就无法运行

那最好降低主频速度和这个匹配下。
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2021-7-13 10:53:51 | 显示全部楼层
卡卡倬 发表于 2021-7-12 17:16
内部供电开了么 HAL_PWREx_EnableUSBVoltageDetector()

开了的,可以正常识别usb连接但没办法枚举
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2021-7-13 15:15:55 | 显示全部楼层
楼主最后解决问题了吗?
我也遇到同样的问题,一直没有解决。
我用得STM32H743,用在HSE作为系统时钟来源,400Mhz。
也是卡在了枚举的代码。
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2021-7-14 11:14:54 | 显示全部楼层
k329266978 发表于 2021-7-13 15:15
楼主最后解决问题了吗?
我也遇到同样的问题,一直没有解决。
我用得STM32H743,用在HSE作为系统时钟来源 ...

也还没有,怀疑是时钟配置问题但还不知道怎么解决
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2021-7-15 08:11:55 | 显示全部楼层
k329266978 发表于 2021-7-13 15:15
楼主最后解决问题了吗?
我也遇到同样的问题,一直没有解决。
我用得STM32H743,用在HSE作为系统时钟来源 ...

你用的HSE的话,直接跑我们的例子试试
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2021-7-20 15:58:25 | 显示全部楼层
k329266978 发表于 2021-7-13 15:15
楼主最后解决问题了吗?
我也遇到同样的问题,一直没有解决。
我用得STM32H743,用在HSE作为系统时钟来源 ...

解决啦,两个原因,一是看接线是否接反了(我是),二是如果你用了hal库,他有个hal_delay的定义是弱定义,如果用生成的工程,在程序的别处可能另外定义了这个函数,我这边另外定义了这个函数且为空函数,所以要将空函数这个注释掉,就可以枚举了
回复

使用道具 举报

2

主题

2

回帖

8

积分

新手上路

积分
8
QQ
发表于 2021-7-20 17:48:01 | 显示全部楼层
我也遇到了问题,麻烦问一下,带操作系统吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-14 21:17 , Processed in 0.236818 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表