蓝牙协议规范--HCI

蓝牙底层软件栈

HCI 提供访问蓝牙硬件统一接口,不做底层协议基本接触不到,本文只作相关了解。

物理连接以及数据通道与协议建立通道不要混为一谈。

在这里插入图片描述
上图对软件层底层进行了概述。HCI固件通过对链路管理器、硬件状态注册器、控制注册器、事件注册器等的访问来执行蓝牙硬件的基带命令。通过物理连接驱动实现软件层与底层的交互。

下图为USB作为蓝牙无线模块与主机传输层接口时主机栈与蓝牙栈的配置情况。(结合蓝牙模块分析,上层协议写好的话,可以使用两个蓝牙模块模拟USB、UART等接口)
在这里插入图片描述

蓝牙协议就是使用无线的方式实现有线的协议,如SPP、rfcomm等,协议的建立是为了更好的使用。

对于蓝牙设备来说,HCI驱动和HCI固件实为一体,物理连接驱动实际不存在,例如主机1为手机,主机2为蓝牙设备(非蓝牙模块插拔连接),两主机数据通路实际不存在USB、UART等连接,数据流为上层协议–>HCI层–>链路控制器–>基带–>跳频传输–>基带–>链路控制器–>HCI层–>上层协议。

To be continue

猜你喜欢

转载自blog.csdn.net/weixin_42762173/article/details/117920665
今日推荐