你好!
我正在尝试使用
STM32u585 mcu 上的 USBX 中间件创建具有 2 个注册类 DFU 和 CDC ACM 的 USB 复合设备。
我在 git 上浏览了这两个例子:
STM32CubeU5/项目/B-U585I-IOT02A/应用程序/USBX/Ux_Device_DFU/
STM32CubeU5/项目/B-U585I-IOT02A/应用程序/USBX/Ux_Device_HID_CDC_ACM/
两个示例在单独运行时均按预期工作。
作为起点,我使用 Ux_Device_DFU 示例并开始将 CDC ACM 部分复制到我的项目中。
使用ux_device_stack_class_register函数成功注册了 DFU 和 CDC ACM 设备类。
但是,当
调用 HAL_PCD_Start时,只有 DFU 类在 PC 的设备管理器中可见。
我注意到在
MX_USB_Device_Init函数中调用了 HAL_PCDEx_SetRxFiFo和
HAL_PCDEx_SetTxFiFo函数,我不明白应该如何配置以及配置哪些端点。我认为这可能是 CDC ACM 类在设备管理器中不可见的情况。
我希望有人可以帮助我解决这个问题。
一些附加信息:
单片机:STM32U585QIIx
STM32CubeMX版本:6.5.0版
固件包版本:SWM32Cube FW_U5 V1.1.0