蓝牙常见问题解答

本常见问题解答部分提供有关 Windows 操作系统系列蓝牙无线技术支持的信息。 本文主要面向不熟悉 Windows 上的蓝牙生态系统的独立硬件供应商 (IHV),并介绍了硬件和软件开发人员感兴趣的主题。

其他常见问题位于以下主题中:

Windows 10 中的蓝牙版本和配置文件支持以前的 Windows 版本中的蓝牙版本和配置文件支持蓝牙主机无线电支持蓝牙用户界面蓝牙认证附录 A附录 B

Windows 可以支持多少个蓝牙无线电?

Windows 中的蓝牙堆栈仅支持一个蓝牙无线电。 此无线电必须符合蓝牙规范和最新的 Windows 硬件认证计划要求。

蓝牙和 Wi-Fi 无线电如何有效共存?

蓝牙和 Wi-Fi 无线电都在 2.4 GHz 频率范围内运行,因此它们可以暂时尝试使用相同的频率。 蓝牙无线技术使用的跳频技术可防止此类冲突导致连接完全中断,但它可能会降低两个无线电的传输速率。

蓝牙规范的版本 2.0 支持 AFH。 借助 AFH,蓝牙无线电可检测来自其他类型无线电的流量,将繁忙的通道标记为“干扰”,并避免这些通道发生跳频。 Windows Vista 和更高版本通过将“无线”视为可共享的光谱,进一步改进了 AFH。 此功能允许无线技术(如 Wi-Fi 适配器)报告它们打算使用的通道。 当蓝牙堆栈处于活动状态时,它会收到报告为使用中的通道的通知,并将其标记为干扰。

如何在 Windows 中启用 AFH?

Windows Vista 及更高版本包括一个共享频谱模型,用于支持基于版本 2.0 和更高版本的蓝牙规范的蓝牙无线电的 AFH。 但在默认情况下,禁用此功能。 要使系统支持共享频谱模型,OEM 必须显式启用此功能,并指定应在活动 Wi-Fi 通道周围阻止的频带的宽度。 若要指定频带的宽度,请在以下注册表项下创建名为 ChannelAvoidanceRange 的 REG_DWORD 类型的值:

HKLM\System\CurrentControlSet\Services\BthServ\Parameters

ChannelAvoidanceRange 值会启用或禁用频谱共享,并指定受阻频带的宽度。 若要启用频谱共享,请将 ChannelAvoidanceRange 设置为应在活动 Wi-Fi 通道周围阻止的频带的完整宽度。 这些单位为 MHz,范围为 20 到 40(0.02 到 0.04 GHz)。 OEM 必须根据所选的一组无线电、天线特性和无线电制造商反馈来确定适当的带宽。

新的 ChannelAvoidanceRange 值仅在系统重新启动后才会生效。 理想情况下,OEM 应在预安装过程中设置 ChannelAvoidanceRange 值。

要使 Windows 共享频谱模型高效地工作,Wi-Fi 微型端口驱动程序必须将其通道使用情况报告给网络连接管理器。 然后,网络堆栈将通道使用信息传递给蓝牙堆栈。

如何实现在 Windows 中启用远程唤醒?

Windows Vista Service Pack 2 (SP2) 及更高版本提供软件支持,允许启用蓝牙的键盘和鼠标设备使计算机从睡眠 (S3) 或休眠 (S4) 系统电源状态唤醒。 要使此类唤醒成功,蓝牙模块必须自供电,并且必须有足够的电源来唤醒计算机。 即使 Windows 支持从 S4 系统电源状态唤醒,如果蓝牙模块在计算机处于 S4 时没有电源,计算机也不会唤醒。

若要在软件中启用远程唤醒,请验证蓝牙模块是否可以支持唤醒并设置以下注册表值:

  • HKLM\System\CurrentControlSet\Services\Bthport\Parameters \SystemRemoteWakeSupported : (DWORD) 1
  • HKLM\System\CurrentControlSet\Enum\USB\<vid_pid>\<Bluetooth Radio ID> \Device Parameters\RemoteWakeEnabled : (DWORD) 1
  • HKLM\System\CurrentControlSet\Enum\USB\<vid_pid>\<Bluetooth Radio ID> \Device Parameters\DeviceRemoteWakeSupported : (DWORD) 1

注意如果设备管理器中的蓝牙无线电属性页具有“电源管理”选项卡,则无线电可以支持唤醒。 如果不存在“电源管理”选项卡,则无线电可能支持唤醒,但可能性不大。