f405中开发3个usb接口,单芯片不能实现是吧
之前在stm32f407中开发过 CDC 或 HID 设备。现在想开发一个具有 3 个接口的 USB合设备,如下所示进行分配Interface 0 = Communication(0x02)Interface 1 = CDC Data (0x0a)Interface 2 = HID(joystick)用单芯片是不是不能实现,需要外扩收发器?STM32F405 只有一个 USB OTG FS 和一个 USB OTG HS,要 3 个接口可能不够吧? 你是想做一个 USB 复合设备,还是 3 个独立的 USB 端口? 如果只是复合设备,应该可以用 USB OTG HS 作为 Device 模式,同时定义多个接口。 你可以用一个 USB HUB 芯片,比如 USB2514,把一个端口扩展成多个。 如果要 3 个物理 USB 端口,STM32F4 可能不行,得考虑更高级别的 MCU。 之前用 F407 做过 CDC 或 HID,感觉 USB 这块的 ST 库有点复杂,你打算用 HAL 还是裸机? 复合设备的话,usbd_conf.c 里要手动添加多个接口,HID 和 CDC 组合应该可行。 STM32F4 的 USB HS 需要外接 PHY,比如 USB3300,不然只能跑 FS 速度。 你用过 STM32 的 USBX 或者 TinyUSB 吗?可能会比 ST 自带的库好用一点。 如果要 3 个独立 USB,可能得看看 STM32H7 或者用多个 MCU 方案?
页:
[1]