打印
[其他ST产品]

USBDisk无法被识别到?

[复制链接]
96|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
柴库柴库|  楼主 | 2025-4-1 11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32CubeIDE+FreeRTOS+USB_OTG_FS +USB Host+FATFS,无法识别 usbdisk。
STM32CubeIDE+USB_OTG_FS +USB Host+FATFS,可以识别 usbdisk。
以上两种配置都可以在 MDK5 中识别 usbdisk。

使用特权

评论回复
沙发
两只袜子| | 2025-4-1 11:48 | 只看该作者
可能是FreeRTOS的任务优先级或资源分配不当引起的。

使用特权

评论回复
板凳
elephant00| | 2025-4-1 11:50 | 只看该作者
USB Host库或FATFS库与FreeRTOS可能不兼容。

使用特权

评论回复
地板
jcky001| | 2025-4-1 13:00 | 只看该作者
FreeRTOS的配置可能不正确。

使用特权

评论回复
5
cr315| | 2025-4-1 14:00 | 只看该作者
代码问题?

使用特权

评论回复
6
flycamelaaa| | 2025-4-1 18:00 | 只看该作者
检查并修改与USB Host和FATFS相关的代码,以确保它们能够正确初始化并处理USB盘。

使用特权

评论回复
7
laocuo1142| | 2025-4-1 20:00 | 只看该作者
检查并更新USB Host库和FATFS库到最新版本。

使用特权

评论回复
8
公羊子丹| | 2025-4-2 07:44 | 只看该作者
这听起来像是 FreeRTOS 任务调度的问题,USB 相关的任务优先级调整过吗?

使用特权

评论回复
9
周半梅| | 2025-4-2 07:45 | 只看该作者
你在 STM32CubeIDE 里用 FreeRTOS 版本时,USB Host 任务是不是被挂起了?可以试着手动唤醒看看。

使用特权

评论回复
10
帛灿灿| | 2025-4-2 07:46 | 只看该作者
STM32CubeIDE 里加了 FreeRTOS 之后,USB 相关的回调函数可能没正确触发,试试在 usb_host.c 里加调试信息。

使用特权

评论回复
11
童雨竹| | 2025-4-2 07:47 | 只看该作者
FreeRTOS 版本下 USBH_Process() 是在哪个任务里调用的?有可能是任务没正常运行。

使用特权

评论回复
12
万图| | 2025-4-2 07:48 | 只看该作者
MDK5 里能正常运行的话,可能是 STM32CubeIDE 的 usb_host.c 里 FreeRTOS 相关的初始化流程有差别。

使用特权

评论回复
13
Wordsworth| | 2025-4-2 07:49 | 只看该作者
试试在 FreeRTOS 版本的 MX_USB_HOST_Init() 里加 osDelay(500);,有时候 USB 设备需要一点初始化时间。

使用特权

评论回复
14
Bblythe| | 2025-4-2 07:50 | 只看该作者
你在 FreeRTOS 版本里有开启 USE_STATIC_ALLOCATION 吗?如果开启了,可能 USB 任务栈大小不够。

使用特权

评论回复
15
Pulitzer| | 2025-4-2 07:50 | 只看该作者
试试在 STM32CubeIDE 里,把 USBH_HID 这些组件去掉,仅保留 USBH_MSC 看看是否有影响。

使用特权

评论回复
16
Uriah| | 2025-4-2 07:52 | 只看该作者
USBH_UserProcess() 里的 ApplicationState 逻辑在 FreeRTOS 版本里可能会有竞态问题,试试加 volatile 关键字。

使用特权

评论回复
17
Clyde011| | 2025-4-2 07:53 | 只看该作者
用 USBH_DEBUG_LEVEL 开启详细日志,看看 USB 设备有没有成功枚举,或者是否卡在某个步骤了。

使用特权

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

本版积分规则

10

主题

10

帖子

0

粉丝