[STM32F4] 通过设置 OTG_FS_GUSBCFG 控制寄存器中的相关位来启用主机模式。

[复制链接]
 楼主| yutingwei 发表于 2025-1-23 07:43 | 显示全部楼层 |阅读模式
在 STM32F411 上,USB OTG 控制器通过 OTG_FS 外设进行模式切换。确保配置了正确的寄存器,并根据 USB 设备的状态选择适当的模式。

主机模式配置:如果 STM32F411 需要作为主机与外设通信,首先应启用主机模式。可以通过设置 OTG_FS_GUSBCFG 控制寄存器中的相关位来启用主机模式。

c
复制
编辑
USB_OTG_FS->GUSBCFG |= USB_OTG_GUSBCFG_PHYSEL;  // 选择合适的 USB PHY
USB_OTG_FS->GUSBCFG |= USB_OTG_GUSBCFG_FDMOD;    // 设置为主机模式
设备模式配置:在设备模式下,需要设置 USB_OTG_FS->GUSBCFG 寄存器的相应位来启用设备模式。

c
复制
编辑
USB_OTG_FS->GUSBCFG &= ~USB_OTG_GUSBCFG_FDMOD;  // 设置为设备模式

公羊子丹 发表于 2025-1-23 09:53 | 显示全部楼层
这个配置很实用,刚好我最近在研究 STM32 的 USB 模式切换!
周半梅 发表于 2025-1-23 09:55 | 显示全部楼层
设置主机模式的时候,有没有需要特别注意的时序问题?
帛灿灿 发表于 2025-1-23 09:57 | 显示全部楼层
能不能再讲讲设备模式下怎么处理中断事件?
童雨竹 发表于 2025-1-23 09:59 | 显示全部楼层
OTG 的 PHY 选择需要额外配置外部硬件吗?
万图 发表于 2025-1-23 10:00 | 显示全部楼层
感觉 USB OTG 配置有点复杂,有没有推荐的调试方法?
Wordsworth 发表于 2025-1-23 10:02 | 显示全部楼层
我用 F411 做 USB Host 的时候遇到过数据传输不稳定的问题,求解!
Bblythe 发表于 2025-1-23 10:03 | 显示全部楼层
这个寄存器配置看着有点抽象,能不能提供个完整的例子?
Pulitzer 发表于 2025-1-23 10:04 | 显示全部楼层
主机模式下,支持 USB Hub 的连接吗?
Uriah 发表于 2025-1-23 10:06 | 显示全部楼层
我之前只用过 USB 设备模式,OTG 的切换是不是需要固件动态修改?
Clyde011 发表于 2025-1-23 10:07 | 显示全部楼层
F411 的 USB Host 支持哪些协议?比如 HID 或 MSC?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

58

主题

514

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部