为固件更新配置 USB 设备

固件是设备内部的,独立于操作系统。 但是,固件下载可能会导致操作系统错误。

  • 在 Windows XP 中,将设备连接到系统可能会导致多次插入和拔出声音,从而导致最终用户体验不佳。

  • 由于设备每次启动时都会下载固件,因此在接通电源后或操作系统从 S3 或 S4 电源状态恢复后,固件可能无法立即工作。

  • 在从 S3 或 S4 恢复时,设备可能会导致弹出意外删除对话框,因为大多数计算机在 S4 模式下切断了自供电设备的电源。

若要避免系统错误,请执行以下操作:

  • 确保设备具有两组单独的供应商和设备 ID。

    能够进行固件更新的设备由系统枚举两次。 当系统检测到设备时,它会使用供应商和设备 ID 加载初步驱动程序。 此驱动程序有助于固件下载。

    加载固件后,初步驱动程序将重置总线,导致系统再次枚举设备。 新固件提供了一组不同的供应商和设备 ID。 在第二次枚举期间,系统使用新的 ID 集并加载main设备驱动程序。

  • 确保供应商和设备 ID 是唯一的且特定于你的产品。

    如果设备包含由第三方提供的可编程 USB 芯片,该芯片可能会使用一组标准 ID 来标识自身。 如果同一个芯片与同一系统上的另一个设备一起使用,则两个设备之间可能会争用同一组 ID,从而导致操作系统发生故障。

为 Windows 构建 USB 设备