欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是:首页  > 科普文章

低功耗蓝牙协议栈

科普小知识2021-09-02 11:22:21
...

1、简介

BLE,bloothlowpower,即蓝牙低功耗技术。

该技术具有低成本、短距离、可互操作的特性,工作在免许可的2.4GHzISM射频频段。

蓝牙系统核心包括射频收发器,基带和协议栈。核心系统协议包括射频(RF)协议、链路控制(LC)协议、链路管理(LM)协议、逻辑链路的控制和适配(L2CAP)协议。蓝牙核心系统最底三层是射频,链路控制,链路管理协议,通常会把这三者归为一个子系统——蓝牙控制器。把往上的其他层一起称为为蓝牙主机。在蓝牙控制器和蓝牙主机之间实现通信通常需要有主机-控制器接口,HosttoControllerInterface(HCI)。蓝牙系统的具体应用apps,就是建立在蓝牙主机之上。而host部分由蓝牙软件厂商开发和维护,control部分由蓝牙的硬件厂商提供,两部分通过hci(主机控制器接口)进行通信和数据交互。

2、组成

低功耗蓝牙协议栈包含两部分共8层:主机(Host)和控制器(Controller)。

控制器部分包括:

物理层(PhysicalLayer)

链路层(LinkLayer)

主机控制接口层(HostControllerInterface)

从应用层到物理层一共包含8层

主机部分包括:

L2CAP逻辑链路控制及自适应协议层(LogicalLinkControlandAdaptationProtocol)

安全管理层(SecurityManager)

ATT属性协议层(AttributeProtocol)

GAP通用访问配置文件层(GenericAccessProfile)

GATT通用属性配置文件层(GenericAttributeProfile)

从应用层到物理层一共包含8层,如下图所示。对于开发者而言,不需要对每一层的具体实现都有深入的了解。只需要掌握与应用紧密相关的GAP/GATT层即可满足大部分开发的需求,通过SoftDevice(即协议栈,这种方式使得协议栈和用户应用可以单独编译和链接)的API软件接口(以sd_开头)调用来实现。

从应用层到物理层一共包含8层

1、物理层(PhysicalLayer)

对于低功耗蓝牙,其物理层工作于2.4GHz全球通用的免许可证频段(2400MHz~2483.5MHz),共使用40个频道,频道间隔为2MHz,而经典蓝牙使用79个频道,1MHz间隔。低功耗蓝牙有两种频道类型:广播频道3个,数据频道37个,共40个频道。

低功耗蓝牙广播频道为2402MHz(37),2426MHz(38),2480MHz(39),你没看错!就是2402MHz(37),2426MHz(38),2480MHz(39)。3个广播频道刚好与WiFi无线局域网的信道错开,用于设备发现和建立连接。相比之下,经典蓝牙技术需要使用32个广播频道来完成相同的任务。正因如此,低功耗蓝牙可以大幅减少在空中的使用时间,从而降低功耗。

由于使用3个广播频道,低功耗蓝牙只需0.6到1.2ms的“开启”时间来扫描其他设备。而经典蓝牙需要22.5ms扫描其32个频道。低功耗蓝牙的这个机制对降低功耗有显著效果(比经典蓝牙减少10到20倍的功耗)。

由于蓝牙和WiFi都工作在2.4GHz频段,在同一使用环境下可能产生相互的影响,为此低功耗蓝牙做了系统共容性的考虑。低功耗蓝牙频道表设计时尽量避开WiFi的工作频道,低功耗蓝牙的所有3个广播频道均在WiFi频道表之外,除了重叠的数据频道部分,仍有9个数据频道在WiFi频道之外,确保了低功耗蓝牙系统的可靠性及与WiFi系统的共容性,增强了应用时的抗干扰能力。 

低功耗蓝牙规范中所定义的最大发射功率为+10dBm(10mW),最小发射功率为-20dBm(0.01mW)。接收机灵敏度要求优于-70dBm(当误码率BER为0.1%时)。

显而易见,蓝牙的通信距离与发射功率和接收灵敏度有关。

当发射功率为0dBm,接收机灵敏度为-70dBm,通信距离约为30米。

当发射功率为+10dBm,接收机灵敏度为-90dBm,通信距离约为100米。

此外,通信距离往往还与天线、方向以及周围环境等诸多因素有关。

2、链路层(LinkLayer)

链路层用于控制射频设备的工作状态,包括5种可能的工作状态:待机、广播、扫描、启动和连接。

当扫描者监听广播者时,广播者发送数据而不需要建立连接。

如果一个设备以一个连接请求来响应一个广播者,该设备称为发起者。

如果广播者接受该请求,则广播者和发起者将进入连接状态。

当一个设备位于连接状态时,它将连接到两个角色之一(主机或者从机)。发起连接的设备成为主机,接受连接请求的设备成为从机。

3、主机控制接口(HostControllerInterface)

HCI层为主机和控制器之间的通信提供了一种标准化的接口,其主要完成两个任务:①发送命令给控制器和接收来自控制器的事件;②发送和接收来自对端设备的数据。

4、L2CAP逻辑链路控制及自适应协议层

L2CAP逻辑链路控制及自适应协议层(LogicalLinkControlandAdaptationProtocol)为更高层提供数据封装服务,允许逻辑的端到端数据通信。

5、安全管理层(SecurityManager)

SM层定义了配对和密钥分发的方法,并为其他堆栈层的安全连接以及与另一个设备交换数据提供功能。

6、ATT属性协议层(AttributeProtocol)

ATT属性协议用于所有低功耗蓝牙的数据传输,具有快速、简单的特点,其采用了客户端(Client)/服务器(Server)架构。

7、GAP通用访问配置文件层(GenericAccessProfile)

低功耗蓝牙协议栈的GAP层与应用/Profile直接连接,负责处理设备的接入方式和过程,包括设备发现、链路建立、链路终止、启动安全功能以及设备配置。

8、GATT通用属性配置文件层(GenericAttributeProfile)

GATT层是一个服务框架,定义使用ATT的子过程。GATT规定了配置文件Profile的结构。在低功耗蓝牙中,所有的数据块由一个Profile或服务所使用的数据库称为特性(characteristic)。

上一篇:氢化铍

下一篇:超声波