蓝牙主机控制器接口.

上传人:我** 文档编号:115017448 上传时间:2019-11-12 格式:PPT 页数:17 大小:389.50KB
返回 下载 相关 举报
蓝牙主机控制器接口._第1页
第1页 / 共17页
蓝牙主机控制器接口._第2页
第2页 / 共17页
蓝牙主机控制器接口._第3页
第3页 / 共17页
蓝牙主机控制器接口._第4页
第4页 / 共17页
蓝牙主机控制器接口._第5页
第5页 / 共17页
点击查看更多>>
资源描述

《蓝牙主机控制器接口.》由会员分享,可在线阅读,更多相关《蓝牙主机控制器接口.(17页珍藏版)》请在金锄头文库上搜索。

1、CH3.3 蓝牙主机控制器接口,3.3.1 蓝牙主机控制器接口概述 3.3.2 蓝牙主机控制器接口数据分组 3.3.3 蓝牙主机控制器接口,3.3.1 蓝牙主机控制器接口概述,蓝牙主机控制器接口(HCI):蓝牙主机-主机控制器应用模式中蓝牙模块和主机间的软硬件接口,它提供了控制基带与链路控制器、链路管理器、状态寄存器等硬件功能的指令分组格式(包括响应事件分组格式)以及进行数据通信的数据分组格式。 蓝牙技术集成到各种数字设备中的方式:单微控制器方式和双微控制器方式。,单微控制器方式是? 所有的蓝牙低层传输协议(包括蓝牙射频基带与链路控制器、键路管理器)与高层传输协议(包括逻辑链路控制与适配协议、

2、服务发现协议、串口仿真协议、网络封装协议等)以及用户应用程序都集成到一个模块当中,整个处理过程由一个微处理器来完成。,双微控制器方式是? 蓝牙协议与用户应用程序分别由主机和主控制器来实现(低层传输协议一般通过蓝牙硬件模块实现,模块内部嵌入式的微处理器称为主机控制器,高层传输协议和用户应用程序在写入的个人计算机或嵌入的单片机、DSP等上运行,称为主机),主机和主机控制器间通过标准的物理总线接口(如通用串行总线 USB、串行端口RS232)来连接。,左图是蓝牙主机-主机控制器模型,观察左图可以发现:蓝牙主机-主机控制器是由三个部分构成。分别是蓝牙主机,物理总线硬件和蓝牙主机控制器硬件。,HCI从功

3、能上可分为三个不同的部分:一是HCI固件,它位于主控制器内,当蓝牙主机向蓝牙模块发送HCI指令时,HCI固件通过对基带命令,链接管理器命令,硬件状态注册器,控制注册器和事件注册器的访问以实现蓝牙硬件的HCI指令。二是HCI驱动程序,它位于主机内,当蓝牙模块收到蓝牙主机发送来的HCI指令后,执行相应的命令,而后用HCI事件通知主机,主机将收到相应HCI事件的通知。主机发现有事件发生时,将对收到HCI事件包进行分析和相应的处理。三是主控制器传输层,HCI,固件和HCI驱动程序之间的通信是通过主控制器传输层来进行的,蓝牙协议定义了三种主控制器传输层,即HCI、 UART HCI、RS232和HCI

4、USB传输层。主控制器传输层对蓝牙主机与蓝牙模块之间的通信是透明的,既采用哪种传输层并不影响它们之间的通信。,在蓝牙的主机-主机控制器连接模型当中,HCI作为蓝牙软件协议堆栈中软硬件之间的接口,提供了一个控制基带与链路控制器、链路管理器、状态寄存器等硬件的统一接口。当主机和主机控制器通信时,HCI层以上的协议在主机上运行,而HCI层以下的协议由蓝牙主机控制器硬件来完成,它们通过HCI传输层进行通信。主机和主机控制器中都有HCI,它们具有相同的接口标准。主机控制器中的HCI解释来自主机的信息并将信息发向相应的硬件模块单元,同时还将模块中的信息(包括数据和硬件/固件信息)根据需要向上转发给主机。,

5、蓝牙设备通过HCI进行数据收发通信的过程如下图所示:,3.3.2 蓝牙主机控制器接口数据分组,HCI分组概述: 主机和主机控制器之间是通过HCI收发分组(Packet)的方式进行信息交换的。主机控制器执行主机指令后产生结果信息,主机控制器通过相应的事件分组将此信息发给主机。,主机与主机控制器通过指令应答方式实现控制,主机向主机控制器发送指令分组。主机控制器执行指令后,通常会返回给主机一个指令完成事件分组,该分组携带有指令完成信息;对于有些分组,不返回指令完成事件分组,但返回指令状态事件分组,用以说明主机发出的指令已经被主机控制器接收并开始处理;如果指令执行出错,返回的指令状态事件分组就会指示相

6、应的错误代码。,HCI分组类型: HCI分组有三种类型:指令分组(Command Packet)事件分组(Event Packet)和数据分组(Data Packet)。 1.指令分组:只从主机发向主机控制器,分为链路控制指令、链路策略指令、主机控制与基带指令、信息参数指令、状态参数指令和测试指令。 2.事件分组:只从主机控制器发向主机,用以说明指令分组的执行情况,是主机控制器向主机报告各种事件的分组,包括通用事件、测试事件、出错事件三种。,3.数据分组:在主机和主机控制器间双向传输,分为异步无连接(ASL)数据分组和同步面向连接(SCO)数据分组两种。,3.3.3 蓝牙主机控制器接口,HCI

7、的六种指令分组为链路控制指令、链路策略与模式指令、主机控制与基带指令、信息指令、状态指令和测试指令。,链路控制(Link Control)指令: 主机控制器在建立和保持蓝牙微微网和散射网时,通过链路控制指令来控制与其相连的蓝牙设备的连接。 链路策略(Link Policy)指令: 蓝牙主机控制器提供策略调整机制来支持多种链路模式,链路策略指令为主机控制器提供了如何管理微微网链路的方法。链路管理器使用键路策略指令来建立和维护蓝牙微微网和散射网。这些策略指令既能改变链路管理器的状态,又能使蓝牙远程设备链路连接发生变化。,3. 主机控制器与基带指令: 主机控制器与基带指令提供了识别和控制各种蓝牙硬件的能力,包括如何控制蓝牙设备、主机控制器、链路管理器及基带,主机可利用这些指令改变本地设备的状态。 4. 信息参数指令: 信息参数是蓝牙硬件制造商固化在蓝牙芯片中的有关蓝牙芯片、主机控制器、链路管理器、基带等信息,这些信息是只读的,主机不能修改。,5. 状态参数指令: 状态参数是有关主机控制器、链路管理器和基带当前状态的信息。主机不能修改这些参数(除复位为指定参数),但是主机控制器可以修改它们。 6. 测试指令: 测试指令用于测试蓝牙硬件的功能和设置测试的条件。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号