蓝牙

  • 概述
  • 蓝牙版本
  • BLE蓝牙协议栈
    • Physical Layer
    • Link Layer
    • HCI
    • L2CAP
    • ATT
    • GAP

概述

蓝牙至今已发展至5.0版本
蓝牙4.0增加BLE版本,同时增加ATT、GATT、SM(security manager)、AES加密;
蓝牙4.1版本,不与4G相互干扰;通过IPV6接入网络;可同时发送和接收;

蓝牙版本

蓝牙协议分为BR/EDR、AMP、BLE;
BLE就是低功耗蓝牙。

BLE蓝牙协议栈

协议分为BLE Application和BLE Core,而BLE Core又分为Controller与Host。HCI层在Controller层与Host层之间。
层级 备注
Application 应用层
Generic Acess protocol GAP
Attribute protocol ATT
Logic Link Control and Adaptation Protocol L2CAP
Host Controller Interface 接口层
Link Layer 链路层
Physical Layer 物理层

Physical Layer

物理层上,蓝牙使用频率为2.4G~2.4835GHZ,分为40个channel,每个channel为2M带宽;

Link Layer

实现物理层通道的共享,同时因为物理层通道不确保数据传输准确性,所以Link Layer有校验重传、机制。
Link Layer层有5中状态
standby,初始状态,既不能发送,也不能接受;
advertising,可以发送数据,由standby状态进入;
scanning,可以接受数据,由standby状态进入;
initiating,可以接受数据,但只能接受connectable状态的数据。接收到数据后,向advertiser发送连接请求,连接成功后,initiator和advertiser都进入connection状态;
connection,进行了专属连接;当通道断开后,重新回到standby状态;

HCI

实现两颗蓝牙芯片的互联,连接方式可使用USB、UART、软件模拟。

L2CAP

逻辑链路控制与适配层,对LL层的数据进行简单的封装,会区分是否是加密数据还是普通数据。

ATT

属性层协议,BLE的初衷是物联网,而物联网是为了信息的采集、处理,属性值的概念在物联网广泛存在。
ATT层是GATT、GAP层的基础。ATT层将信息已Attribute的方式进行整理,规定了访问属性的方法和权限。

GAP

Generic Acess Protocol,这个协议使得不同的蓝牙产品可以相互连接、通讯。
它指定了蓝牙发现、建立连接的业务流程。
这个协议具有强制性,是其他所有蓝牙规范应用的基础。

本文地址:https://blog.csdn.net/qq_42012605/article/details/107108178