NORDIC的打怪之旅(第七篇)

   BLE学习笔记:之前的文章中简要的说明了一些BLE的基本知识,还不够全面。这次给大家来介绍一下BLE协议栈相关的知识,在我学习BLE的过程中,最开始就拿着BLE低功耗蓝牙的书来啃,但是还是不能够掌握多少,笔记做了一大堆,依然不能让我有个比较清晰的认识。其实最开始学习的时候,不能盲目的去学习,需要从基础的开始学起,了解最开始的且最基础的知识,才能够走得更远。

  1、BLE协议栈的四种低功耗模式:

  a、激活      b、睡眠       c、深度睡眠(EOF关闭)       d、冬眠

  2、BLE子系统的三种子模式:

  a、IDLE       b、传输模式       c、接受模式

   3、BLE协议栈的主要工作有:

   a、初始化蓝牙协议栈的事件处理;

   b、绑定BLE事件调度函数;

   c、绑定SYS事件调度函数。

   备注:蓝牙系统主要靠事件驱动进行调度。

   4、上面说的都是一些很基础的概念,相信很多人也看过下面这张关于BLE协议栈的框架图

  这张图在很多的博客中也有,我在这里就直接引用了。在BLE协议栈中,BLE分为应用(Application)和内核(Core),而在Core中又有Host和Controller。基于自底向上的实现路线,我来简单介绍一下每个模块的相应作用。

  (1)物理层(Physical Layer):学习过计算机网络的朋友,都应该知道在每一个通信系统中,最底层的就是通信介质,通信介质的选用会影响信号或数据的传输速度、效率和质量。由于BLE属于无线通信,它的的通信介质是一定频率范围内的频带资源;而大多数的BLE采用的都是免费的ISM频段(频率范围:2.4GHz--2.4835GHz)。在BLE指南中介绍了,BLE为了同时支持多个设备,就对频带进行了划分,一共划分了40份,每份的带宽是2MHz,称作RF Channel。

  (2)链路层(Link Layer):链路层是基于物理层上实现的,它的主要功能是选择物理层上的某个或某些通道进行收发数据。在实际的收发数据的过程中又会做很多的事情,包含选择通道、识别数据包、校验数据包、错误重传和管理控制链路层的其他一些信息。收到数据或者发送数据后,对相应的数据进行解析就需要上层协议来做了。

  (3)逻辑链路控制和适配协议(Logic Link Control And Adaptation Protocol):L2CAP跟LL有很大的区别,它会基于LL层上传的数据进行封装,并且还要判断通道的属性(加密或者不加密),同时对BLE连接间隔也需要进行管理和控制。

  (4)属性协议(Attribute Protocol):ATT协议是GATT的基础,它需要定义一些用户命令和命令操作的数据信息。BLE中ATT是用来描述数据的,同时定义该数据可以使用的ATT命令。

  (5)安全管理协议(Secure Manager Protocol):SMP层主要用于管理BLE连接过程中的加密和安全性的,在保证连接的可靠和安全性之下,也需要不影响其它的事件的处理。

  (6)通用属性协议(Generic Attribute Profile):GATT是基于ATT协议的,它规范了ATT的数据内容,并对数据进行管理。一个profile下有很多的服务,服务中又会有很多的数据信息,所以这一层对BLE来说对数据管理非常重要。

  (7)通用访问协议(Generic Access Profile):GAP常用作BLE连接的设置,GAP可以对LL层中的有效数据包(Payload)进行解析,同时GAP也对其进行相应的定义和规范。它主要的功能是用来进行广播、扫描和发起连接等。

  (8)应用层(Application):应用层里主要输包含很多的应用服务,比如心率信息、电池信息等。

’  对于如何使用BLE协议栈来进行数据的广播、发送和接收等,在NORDIC芯片中可以使用SDK来加深印象,里面给了丰富的案例进行讲解,同时对底层函数进行了很好地封装,当然流程也很清楚。这里我只是大概介绍一下关于BLE协议栈的大体框架内容,不对其内部做过多的介绍,需要了解的朋友可以去查看BLE《低功耗蓝牙开发权威指南》,我给出一个下载链接

链接:https://pan.baidu.com/s/1t62nJopPGBBSWS1r2yd8SA 
提取码:7bcu 
 

  每天进步一点点。

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沉夢志昂丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值