1

我想问一下如何通过STM32F 407获取鼠标数据。我不想将其发送到PC。我的微控制器应该是 USB HOST,鼠标只与微控制器通信。我搜索了很多,但我只找到了 HID 的示例项目,并且在项目中微控制器假装像鼠标一样向 PC 发送数据。

4

1 回答 1

2

虽然不完全适用于 F4-Discovery,但有一些 F446E EVAL 的示例应该可以帮助您入门。这些可以在 ST 的 STM32Cube 工具中的“STM32F4 系列的 MCU 包”(在编写版本 1.24.1 时)中找到。下载包后,转到包存储库文件夹的位置。示例位于:STM32Cube/Repository/STM32Cube_FW_F4_V1.24.1/Projects/STM32446E_EVAL/Applications/USB_Host。对于您要求的 USB 主机 HID,有两个单独的示例项目:HID_RTOS(使用 FreeRTOS 任务完成的 USB 主机处理等)和 HID_Standalone(使用内部的一个循环完成main.c)。

至于 F407 发现 -用户手册提到 USB-micro 连接器(板上的 CN5)支持完整的 OTG。您显然需要一个外部 USB-micro OTG 适配器来将您的鼠标物理连接到板上,但不需要进行硬件修改。

在将 EVAL 示例改编为 F4-discovery 时——通过查看一些东西,您可能实际上只需很少的工作就可以让它工作。EVAL 示例使用其板载显示器,因此您显然需要删除与此相关的任何代码,并可能查看外部时钟配置。之后应该只使用 USB FS(未定义USE_USB_HS) - 幸运的是,即使两个 MCU 采用不同的封装,USB FS 引脚对于两者都是相同的,因此初始化不会改变。

于 2019-08-17T09:49:42.107 回答