发新帖我要提问
12
返回列表
打印
[STM32F1]

USB_Host模式

[复制链接]
楼主: wuhany
手机看帖
扫描二维码
随时随地手机跟帖
21
万图| | 2024-11-12 09:28 | 只看该作者 回帖奖励 |倒序浏览

保护被保护IC或线路

使用特权

评论回复
22
帛灿灿| | 2024-11-12 12:27 | 只看该作者

所以不会通过地损耗

使用特权

评论回复
23
Bblythe| | 2024-11-12 13:30 | 只看该作者

相当于积分,用于滤波

使用特权

评论回复
24
周半梅| | 2024-11-12 15:26 | 只看该作者

将在原边形成电压尖峰,

使用特权

评论回复
25
Pulitzer| | 2024-11-12 16:29 | 只看该作者

使该元器件不超过正常值范围

使用特权

评论回复
26
童雨竹| | 2024-11-12 18:25 | 只看该作者

驱动脉冲变压器原边时,

使用特权

评论回复
27
Wordsworth| | 2024-11-12 19:28 | 只看该作者

ESD静电保护器工作特性与TVS管一致。

使用特权

评论回复
28
公羊子丹| | 2025-3-14 07:44 | 只看该作者
你是在用 STM32CubeMX 生成的 USB Host 代码吗?这个问题一般是 控制传输失败,可能是设备响应超时。

使用特权

评论回复
29
Wordsworth| | 2025-3-14 07:45 | 只看该作者
你用的是 外部 12MHz 晶振 还是 HSI?USB Host 需要稳定时钟源,建议使用外部晶振。

使用特权

评论回复
30
周半梅| | 2025-3-14 07:46 | 只看该作者
USBH_MSC_GETMaxLUN 主要是获取 U 盘的逻辑单元数(LUN),如果卡住,试试检查 U 盘是否正常供电。

使用特权

评论回复
31
Bblythe| | 2025-3-14 07:47 | 只看该作者
试试在 USBH_HandleControl 里检查 req_status,看看是 USBH_BUSY 还是 USBH_FAIL,这样更容易找到原因。

使用特权

评论回复
32
帛灿灿| | 2025-3-14 07:48 | 只看该作者
你可以在 USBH_CtlReq() 里加调试信息,看看是在哪一步超时的,比如 URB_Status 是不是 USBH_URB_TIMEOUT。

使用特权

评论回复
33
Pulitzer| | 2025-3-14 07:48 | 只看该作者
检查 USB 供电电流,有些 U 盘启动电流大,可能导致 F105 供电不足,试试加个 100uF 电容。

使用特权

评论回复
34
童雨竹| | 2025-3-14 07:50 | 只看该作者
试试换个 U 盘,有些 U 盘兼容性不好,特别是大容量的 USB 3.0 U 盘,可能不兼容 USB 2.0 FS。

使用特权

评论回复
35
Uriah| | 2025-3-14 07:50 | 只看该作者
你有配置 VBus 供电管脚 吗?如果用 外部供电,确保 VBus GPIO 正确控制 5V 供电开关。

使用特权

评论回复
36
Clyde011| | 2025-3-14 07:51 | 只看该作者
如果一直卡住,可以尝试手动跳过 LUN 读取,直接执行 USBH_MSC_ReadCapacity() 看看能不能继续后续初始化。

使用特权

评论回复
37
万图| | 2025-3-14 07:52 | 只看该作者
USBH_MSC_GETMaxLUN() 失败,有时候是 U 盘没准备好,可以试试加个 HAL_Delay(500) 再执行。

使用特权

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

本版积分规则