2

USB设备是否可以支持多个驱动程序?我想支持我自己的专有驱动程序,但也想支持 CCID 作为第二选择。插入设备后,用户可以选择使用哪一个。要使用的驱动程序取决于 USB 描述符的内容,对吧?如果是这样,是否可以表明两个驱动程序都受支持?支持两个驱动程序的想法可行吗?

4

2 回答 2

1

在 Windows 上,有两个受支持的驱动程序是可能的。事实上,要获得 Microsoft Logo 认证,USB 设备必须支持此功能。(要求CONNECT-0123

但是,您描述的 UI 行为不是 Microsoft 提供的。驱动程序选择是自动的。

您的 USB 设备可以指示它支持两个接口。在这种情况下,将加载两个驱动程序。

于 2010-03-10T09:00:38.570 回答
0

我确信设备不可能同时使用两个驱动程序,但是设备可以使用一种类类型和驱动程序进行枚举,然后在其操作期间,响应 USB 上的某些命令或设备的操作,使其断开连接,然后使用第二个驱动程序重新枚举为不同类型的设备。

例如,我正在开发的产品通常枚举为 CDC(串行端口仿真),但是当我需要重新加载代码时,它会重新枚举为不同的设备类型,并使用芯片供应商提供的驱动程序来执行代码下载。完成此操作后,设备将再次将自身重新枚举为 CDC 设备类型并恢复其串行端口仿真。

因此,您需要提供一个“命令”接口,该接口将触发两种操作模式之间的转换,并确保主机上安装了两个驱动程序,为模式切换做好准备。

于 2010-03-10T08:37:30.160 回答