我正在使用HAL和CubeMX开发基于STM32F429芯片的USB音频设备。该设备打算是没有特定功能的USB声卡,因此它使用标准的Windows USB音频驱动程序。多维数据集生成的代码工作正常,问题是:当我更改设备描述符设置(如支持的音频等)时,Windows会识别设备,但在设备管理器中返回错误:
Device not migrated
Device configured(usb.inf)
Device not started(usbccgp)
第一句话也说:
Device USB\VID_08DA&PID_82A7\00000002345A was not migrated due to partial or ambiguous match.
当我将设备描述符恢复到初始状态时,它第一次连接到PC,一切正常。我相信问题是Windows看到已经知道的设备的设备描述符中的更改,并认为它有故障。
问题是:如何删除有关设备安装的所有信息,以便系统可以重新开始配置过程?设备管理器中的“设备删除”选项不起作用-设备重新连接后,我仍然可以看到所有事件的历史记录。
答案 0 :(得分:0)
我相信问题是Windows看到已经知道的设备的设备描述符中的更改,并认为它有故障。
预期的行为:当描述符更改时,应该使用其他PID(设备描述符中的{idProduct
)。
Windows在设备描述符中看到相同的idVendor
,idProduct
和bcdDevice
值时,使用相同的驱动程序(缓存在注册表中)。在您的情况下,您至少需要更改bcdDevice
值。