蓝牙协议栈分层

蓝牙协议栈分层

更详细的蓝牙协议栈可参考文章:“深入浅出低功耗蓝牙(BLE)协议栈”!


蓝牙协议栈的分层, 所有 Profile (配置文件层)和应用都建构在GAP或GATT之上。

  • PHY——物理层(Physical Layer):1Mbps自适应跳频GFSK(高斯频移键控调制),运行在免征的2.4GHz ISM(工业、科学、医疗)频段。
  • LL——链路层(Link Layer):此层为RF控制器,用于控制设备的射频状态,控制设备会处于5种状态之一:standby(准备)、advertising(广播)、scanning(监听/扫描), initiating(发起连接)、connected(已连接) 。五种状态的切换描述为:advertising(广播)不需要连接就可以发送数据(告诉所有人,我来了);
    scanning(监听/扫描)来自广播的数据;initiator(发起人)将携带 connection request(连接请求)来响应广播者,如advertiser(广播者)同意该请求, 那么广播这和发起者都会进入已连接状态, 发起连接的设备变为 master(主机),接收连接请求的设备变为 slave(从机)。
  • HCI——主机控制接口层(Host Controller Interface):为主机和控制器之间提供一个标准通信接口。这一层可以通过软件API或硬件接口实现,例如 UART、SPI、USB。
  • L2CAP——逻辑链路控制及自适应协议层(Logical link Control and Adaptation Protocol):相当于快递,将数据打包,为上层提供数据封装服务,允许逻辑上的点对多点数据通信。
  • SM——安全管理层(Security Manager):定义了配对和密钥分配方式。并为协议栈的其它层和其它设备之间的安全连接和交换数据提供服务。
  • GAP——通用访问配置文件层(Generic Access Profile):是直接与应用程序或配置文件 (profiles)通信的接口,处理设备发现和连接相关服务,另外还处理安全特性的初始化。对上级提供应用程序接口,对下级管理各级智能部门,尤其是指示LL层控制器5种状态切换。GAP目前主要用来进行广播,扫描和发起连接等。
  • ATT——属性协议层(Attribute Protocol):允许设备向其它设备展示一块特定的数据,称之为“属性(attribute)”。在ATT环境中,展示“属性”的设备称之为服务器,与之配对的设备称之为客户端。链路层状态(主机和从机)与设备的ATT角色是相互独立的。例如,主机设备既可以是ATT服务器,也可以是ATT客户端。从机设备可以是ATT客户端,也可以是ATT服务端。
  • GATT——通用属性配置文件层(Generic Attribute Profile):定义了使用ATT的服务框架。GATT规定了配置文件(profiles)的结构。在BLE中,所有被profile或服务器用到的数据块都称之为“特征(characteristic)”。两个建立连接的设备之间的所有数据通信都是通过GATT子程序处理。应用程序和profiles直接使用GATT层。GATT负责处理向上与应用打交道,其关键工作是为检索工作提供合适的profile结构,而profile由检索关键词(characteristics)组成。
    在这里插入图片描述

在 Bluetooth-LE中有四种设备类型:Central主机、Peripheral从机、Observer观察者、Broadcaster广播者。
GATT有Service和Client之分,对一般情况下,Central 作为Client,GATT Client提供 ,Peripheral 作为 Service ,所以主机 Central会调read/write 接口来和作为Service端的 Peripheral从机通信, 而Peripheral 需要通过notify的方式调用GATT_Notification 发起和主机的通信,一般Peripheral notify的方式速度要比直接读写的速度要慢。

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值