蓝牙hid(蓝牙hid设备)

zhangyang 2022-04-18 阅读:66
  

什么是蓝牙HID?

  汗水是一个通过spike连接的无线键盘。

蓝牙hid

蓝牙4.1(HID/HOGP/SPP)什么意思?

  在Spec的定义上,蓝牙4.1的配对加密链路都是基于AES-CCM加密,但是由于蓝牙4.1的双方共享相同的密钥,存在被破解的风险和漏洞。hid是蓝牙的技术规范,是蓝牙hid的应用规范和系统解决方案。蓝牙技术中人性化接口设备(hid)的应用模式,可以使人们在没有连接的情况下控制自己的电脑、游戏操纵杆、远程监控设备等。参考sig发布的最新版本0.95c hid规范,详细介绍了蓝牙hid规范及其应用场景,以及蓝牙hid终端设备和hid主机的解决方案。蓝牙技术成功应用于耳机、免提设备和pc外设之后,逐渐得到了更广泛的应用。人们开始期望能够控制他们的计算机、游戏操纵杆、遥控设备等。没有连线的麻烦。蓝牙组织公布的hid规范正好迎合了这种需求。与传统的无线键盘只能与匹配的设备通信不同,蓝牙hid键盘可以作为标准键盘与任何蓝牙hid系统通信。蓝牙解决方案使hid终端设备能够自动检测并连接到所需的系统,如pda、pc、机顶盒等。比如蓝牙hid鼠标可以用来控制pc或者pda,而不是传统模式下只能控制与之匹配的特定主机的某个外设。因此,蓝牙hid规范使得不同平台的hid主机的输入和控制外设实现了真正的互操作。蓝牙hid规范a .蓝牙hid规范的软件结构蓝牙hid规范的软件结构框图如图1所示。Hid规范运行在蓝牙的l2cap协议上,基于gap规范。b . HID规范的基本要求如下:1 .通常建议在微网络中作为从设备,但也允许作为主设备。2.键盘必须支持认证和加密:工作模式只有在hid主机需要时才被激活;在认证加密的基础上,还可以被其他hid主机选择;使用加密技术的低成本hid方案可以通过用单个密钥创建联合密钥来实现。强烈建议蓝牙hid键盘和辅助键盘支持关节键的应用。3.建议使用有限服务发现模式:对于一个hid主机,hid终端设备通常是一一对应的关系;通过按键或通电激活hid终端设备。4.作为从设备,必须始终保持连接。例如,pc在启动时寻呼键盘,或者在有数据传输时键盘寻呼pc。5.hid主机必须支持qos。6.hid主机必须支持低功耗工作模式。一般HID终端设备(如鼠标、键盘、操纵杆)的设计目标是:在三节标准aaa电池或两节标准碱性aa电池下至少工作三个月;hid主机和hid终端设备都必须支持嗅探模式和驻留模式;保持工作模式对hid主机是必要的,但对hid终端设备是可选的。7.hid终端设备只需要支持dm1格式的数据。8.除了查询模式和分页模式,交互分页扫描模式和查询扫描模式也是必不可少的。9.单功能设备不需要支持sco语音通道。10.支持绑定的设备必须有某种形式的固定内存来存储128位身份验证代码。与只使用单键的设备相比,使用联合键的hid设备需要更多的内存来支持它们。11.为了使设备支持联合密钥认证,建议为至少四个主机密钥预留适当的存储空间。c. hid规范的导入方式c . hid规范规定基本键盘和指点功能使用固定格式数据包,hid主机不需要hid解析器(70kb左右)。允许固定psm和辅助设备类别控制作为服务发现协议的fhs数据包的定位,以及键盘和定点设备之间的连接。usb导入模式保留为最低级别的终端应用程序。为了使用户界面更加友好,要求系统遵守以下规定:1 .它能自动检测hid终端设备;2.必须有一个硬件添加向导;3.键盘必须加密且安全;4.pc导入时,hid终端设备暂时无法使用。

  D.hid规范中虚拟电缆连接的概念d .鼠标、键盘等hid终端设备是个人区域设备,它们具有以下特点:1 .它们通常与hid主机有一对一的关系;2.不支持同时连接多个hid主机;3.他们可能有多个hid主机可以建立连接。当蓝牙hid终端设备与hid主机建立一对一的连接关系时,称为虚拟线缆连接。此时,hid终端设备和hid主机之间建立以下关系:1 .hid终端设备与HID主机捆绑在一起。2.如果连接断开,它将自动重新建立。3.除非用户明确移除虚拟电缆连接,否则它不会连接到另一个hid主机。hid终端设备的解决方案如图2所示。作为hid终端设备,bluecode+可以有以下两种应用模式:1 .它与蓝牙芯片中的蓝牙核心协议栈集成在一起,并作为蓝牙硬件模块提供。2.作为软件协议栈,bluecode+也可以集成到客户指定的cpu中。每个蓝牙hid终端设备(如键盘)都会有自己的输入控制处理器,它收集用户的输入信号,将其转换成特定的代码,并传输到其hid主机(如pc、pda等。).因为输入处理器资源少,通常蓝牙软件需要在特定的处理器上运行。在我们的方案中,将bluecode+移植到蓝牙芯片中运行,实现了最大程度的资源共享和硬件集成。

更加简单,集成度更高。而蓝牙芯片与输入控制器的接口可以是更便于系统集成的ttl电平的串行接口。 例如键盘、鼠标和游戏操纵杆等嵌入式设备,可以通过ps/2、uart、gpio等标准接口将客户已有的hid终端设备硬件与内置hid规范的蓝牙模块结合起来。由于bluecode+hid软件已经集成进蓝牙芯片,因此,用户只需要将bluers+i或蓝牙芯片放进他们的硬件中。输入控制器应按照usb格式通过串行连接发送扫描代码,当然,针对用户的特殊格式要求也是可以的。 如果输入控制器有比较大的资源空间(mips、ram和闪存),蓝牙上层协议栈可以移植到输入控制器中运行,蓝牙芯片与输入控制器也可以以ttl电平串行连接。如果包含hid规范的bluecode+上层协议栈运行在hid终端设备的输入处理器上,那么对系统硬件结构来说,只有一个带hci接口的蓝牙芯片需要集成进客户的硬件。 由于蓝牙鼠标的应用非常简单,这时提供hid的bluecode+可以和鼠标本身的应用程序一起集成在含有蓝牙核心协议栈的蓝牙芯片内。 蓝牙hid主机端的解决方案 在hid主机侧,bluecode+有三种提供方式: 1. 提供完全的蓝牙hid主机驱动程序,使之成为一个标准的oem产品; 2. 以软件协议栈的形式帮助客户整合进他们的蓝牙ps/2接入点设备; 3. 提供独立于操作系统的api,客户可以将它们整合进自己的驱动程序中。 对标准操作系统(如windows、linux)来说,已经有包括hid规范的完整的驱动程序可以提供。这时,除了用户用于表示包括公司及产品的名字、标志、图形和其它类似的图形界面,hid主机端不需要对hid主机的标准驱动作任何改动。这里的hid主机可以用蓝牙usb dongle或pc卡实现,hid主机侧的软件将包括上层堆栈和用户端应用程序。与hid的应用类似,usb dongle也还可用在类似dun、fax、ftp、lan等应用中。因此,这种应用方式的优点是可以支持多个蓝牙规范,其缺点是它们的驱动程序依赖于操作系统。 由于bluecode+能够方便地移植到不同的操作系统,因此客户也可以用hid api开发适合自己的独特应用。例如,可以做成蓝牙hid接入点设备,所有软件作为固件运行在hid接入点设备上。这时,蓝牙hid接入点设备可以是智能化的usb dongle,或者是用户定义的其它设备。在这种应用方式下,hid主机侧不再需要安装驱动程序。hid接入点设备可被hid主机的操作系统认作标准usb或ps/2设备看待。 这种方案的优点是hid接入点设备与操作系统无关, 可用于支持在ps/2或usb 上的标准 hid的任何平台,不需在hid主机上安装任何东西。该方案的缺点是不支持多个蓝牙规范,因为所有运行于hid接入点设备的软件,只是为hid应用设计的。

评论(0)

二维码