低功耗蓝牙的体系结构

  低功耗蓝牙的体系结构比较简单,从下到上分别为控制器、主机和应用层。

    低功耗蓝牙的体系结构_第1张图片

  控制器主要包含物理层、直接测试模式、链路层和主机控制接口(HCI)的下半部分,能够收发无线电信号,并将这些无线电信号翻译成带信息的数据包。

  主机通常为协议栈,管理设备间如何通信以及如何提供服务。包含主机控制机接口的上半部分、逻辑链路控制和适配协议、属性协议、安全管理器、通用属性规范和通用访问规范。

  应用层就是我们嵌入式开发人员所做的各种应用。

  下面概述下各个模块的功能,在以后的章节中会详细介绍各个模块的具体功能和实现。

  物理层

  物理层采用2,4GH在无线电,完成接收和传输的工作。无线电传输信息主要是通过调制和解调来实现的,通过将0和1调制成不同的波形,发送出去,在接收端收到无线电信号后解调,就完成了信息的传输。当然,物理层还会包含滤波、放大等一系列的操作,但对于嵌入式软件工程师来说,可以将这一部分当做一个黑盒子,只要知道物理层是用来收发数据的就可以。

  低功耗蓝牙技术中,将2.4GHz划分为40个RF信道,每个信道的宽度为2MHz。物理层每微妙传输1bit的数据。

  直接测试模式

  直接测试模式是一种测试物理层的新方法。它允许测试者控制物理层发送和接收一系列的数据包,而后测试者分析接收到的数据包,可以判断出物理层是否遵循RF规范。

  链路层

  链路层是低功耗蓝牙体系中最复杂的部分。它负责广播、扫描、连接的建立和保持。确保数据按正确的方式组织,正确的计算校验值和加密序列等。链路层有两种信道和两种报文。

  信道分为广播信道和数据信道,报文分为广播包和数据包。

  广播信道有3个,设备利用该信道进行广播,并且扫描和发起连接。数据信道有37个,由一个自适用调频引擎控制以实现鲁棒性。

  无论广播包还是数据包,都是小包,这有助于降低功耗。广播包和数据包的基本格式均相同。

  低功耗蓝牙的体系结构_第2张图片

  

  可以发送的最短的报文是空报文,总共80bit,时长为80us。

  主机/控制器接口

  主机/控制器接口提供了主机和控制器之间通信的标准接口。它允许主机将命令和数据发送给控制器,也允许控制器将事件和数据发送给主机。

  主机/控制器接口实际上分为物理接口和逻辑接口。逻辑接口主要定义事件和名利以及相关的行为,而物理接口指的就是USB、UART、SDIO的接口。

  另外,主机/控制器接口会将数据分割和重组。

  逻辑链路控制和适配协议

  L2CAP是低功耗蓝牙的复用层,它定义里两个基本的概念:L2CAP信道和L2CAP信令。

  低功耗蓝牙中只使用固定信道:一个用于信令信道,一个用于属性协议,一个用于安全管理器。

低功耗蓝牙的体系结构_第3张图片

  安全管理器协议

  定义了配对和密匙分发协议。配对完成后,双方就保存了密匙,当两台设备下次重连时,可以迅速的认证彼此的身份。

  属性协议

  定义了访问对端设备数据的一组规则。所有的数据都存储在属性服务器的属性里,供客户端执行读写操作。

  属性是被编址并被打上标签的一小块数据。每个属性包含一个唯一的句柄、一个表示存储数据的类型以及一个值。

  属性协议定义了6中类型的信息:

  客户端到服务器的请求;

  服务器对客户端请求的应答;

  客户定对服务器的命令;

  服务器到客户端的通知;

  服务器到客户端的指示;

  客户端对服务器指示的应答;

   通用属性规范

  GATT位于属性协议之上,定义了属性的类型和使用方法。通用属性规范引入了一些概念,包括“特性”、“服务”、服务之间的包含关系、特性描述符等。它还定义了一些规程用来发现服务、特性、服务之间的关系,以及用来读取和写入特性值。

  服务之间的关系是的低功耗蓝牙体系具有巨大的灵活性和活力。

  通用访问规范

  GAP定义了设备如何发现、连接。它还定义设备之间如何建立长久的联系——绑定。规范定义了设备如何实现可发现、可连接和可绑定。

 

你可能感兴趣的:(低功耗蓝牙的体系结构)