蓝牙协议栈ppt课件.ppt_第1页
蓝牙协议栈ppt课件.ppt_第2页
蓝牙协议栈ppt课件.ppt_第3页
蓝牙协议栈ppt课件.ppt_第4页
蓝牙协议栈ppt课件.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

低功耗蓝牙BLE协议栈 1 蓝牙版本的发展 2 低功耗蓝牙与传统蓝牙技术规范比较 3 1 低功耗蓝牙BLE体系结构概述1 1体系结构 协议栈的最上层是应用层 它定义了许多不同种类的应用业务 Host层规范了低功耗蓝牙中许多数据包的格式 低功耗蓝牙系统所采用的安全模式和一些不可缺少协议的规范 HCI层是Host层和Radio层之间的桥梁 它的作用是为BLE系统的Radio层功能提供同一的访问接口 链路层的基本功能是将物理层提供的原始传送比特流可能出错的物理连接改造成为逻辑上无差错的数据链路 同时执行一些基带协议 物理层的工作频率为ISM2 4GHz 物理层速率IMb s 连接距离为5m 10m 釆用调频技术来减少干扰和降低信号的衰减 图1 1低功耗蓝牙系统的体系结构 4 1 2拓扑结构 低功耗蓝牙是采用星形 Star 拓扑结构 A被称作为可以和多个外围设备进行通信的主设备 B C和D被称作为在同一时间只能和一个主设备进行通信的从设备 在主从设备之间的通信中的数据包是在链路层的连接中被交换的 一个从设备和链路层的连接每次最多只能有一个 且每个链路层的连接只能由一个主设备和从设备组成 低功耗蓝牙可以1个主设备和无数个从设备之间通信 图1 2星形拓扑结构 5 1 3工作状态和工作角色 在同一时间内蓝牙设备只允许处于5种状态中的一种 同时这5中状态不是每个蓝牙设备都要使用的 其中广播状态和扫描状态是不可或缺的 待机状态不能接受和传送任何数据包 且当处于其他状态时都能回到此状态 广播状态有在广播信道发送广播包和监听响应包两种作用 扫描状态是用来监听广播信道中的数据包 初始化状态有监听从特定设备发出的广播包和发起链接请求作为响应两种作用 扫描状态 广播状态和初始化状态只能由待机状态进入 在连接状态下又把设备分为主从两种角色 其中当Radio层从初始化状态进入连接状态并发起连接请求时 该设备被称为主设备 当Radio层从广播状态进入连接状态时 该设备被称为从设备 图1 3链路层状态图 6 表1 1Radio层的工作状态 广播者角色和扫描者角色可以处于空闲状态或连接状态中 主从角色的只能处于在连接状态中 只有当链路层在创建连接时 Radio层才能使用发起者角色去执行主角色 主角色每次可以有多个链路层的连接 从角色每次只能有1个链路层的连接 7 表1 2Radio层工作角色的联合 一个角色可以同时承担其他角色的工作 例如 主角色可以同时执行广播者角色 或者扫描者角色 亦或发起者角色的工作 从角色可以同时执行广播者角色 但是不能同时执行广播者角和扫描者角色 主从角色不能同时执行 8 1 4设备分类 低功耗蓝牙设备可被分为4类 广播设备 扫描设备 外围设备和中央设备 广播设备只能以广播者的角色去运行 并且只能使用非连接的广播事件去广播数据 通常这样的设备没有蓝牙接收器 只有一个发送器来完成广播数据的目的 扫描设备只能以扫描者的角色去运行 并且使用被动的扫描模式从广播设备那里获取数据 这样的设备与广播设备恰好相反 没有发送器 只有一个接收器来完成被动的扫描 外围设备和中央设备是一种低功耗蓝牙设备 在链路层的连接中 外围设备以从角色运行 因此 这样设备也需要以广播者的角色去运行 并且使用可连接的广播事件去建立链路层的连接 中央设备是以主角色运行 它需要以扫描者的角色去运行 从而建立链路层的连接 9 2 物理层PHY规范 2 1频带和信道的分配低功耗蓝牙系统在ISM频段工作 该频段属于工业 科学 医学等领域的工作频段 世界上绝大多数国家将该频段的带宽规定在2400MHz 2483 5MHz 然而有些国家对该频段做了一些改动 我国采用通用频带范围 2400 2483 5 MHz 射频信道为 2402 K 2 MHz K 0 1 39 这是把这频带均匀分为40个信道 每个信道宽2MHz 其中有3个固定的广播信道 广播信道中的数据用于建立连接和发现设备 采取这种方式可是大大缩短建立连接的时间 从而提高了建立连接的效率 另外剩余的37个数据信道釆用自适应调频技术来发送数据 从而来减少干扰和福射 系统在该频段中留有保护带 下保护带留了2MHz 上保护带留了3 5MHz 10 2 2发射器和接收器的特性 1 发射器的特性 发射机釆用高斯频移键控GFSK调制 BT 0 5 调制指数在0 45 0 55之间 正的频率偏移用二进制1表示 负的频率偏移用二进制0表示 对每个发送信道 对应于序列1010的最小频偏 Fmin min Frnin Fmin 将不小于对应于序列00001111的频率偏移 的 80 另外 最小的频率偏移将不会小于185KHZ 将被发送的数据的符号率为每秒一百万个符号 并且每个符号的时间精确性应该小于 5 0 xl0 5 理想信号正交与0点时 应是无误差的 正交清晰 无扩散 在测量的交叉时间和理想符号区间之间的时间差称为过0误差 它为小于 1 8的符号区间 图2 1GFSK参数的定义 11 表2 1传输频谱框架 在相邻信道上的相邻信道功率不同于2个或2个以上相邻信道数定义的相邻信道功率 该相邻信道功率定义为1MHz信道内功率测量的总和 发射机功率以最大保持为100KHz带宽来测量 如发射机在M信道上发射 而相邻信道功率在信道N上测量 发射机使用发射一个伪随机数据顿通过测试 除允许增加到3个1MHz宽的频带以外 中心频率是一个1MHz的若干整数倍 而且必须符合 20dBm的绝对值 12 2 接收器的特性 实际的灵敏度水平 接收机的实际的灵敏度水平应该不大于 70dBm 带外阻塞 带外阻塞被应用到了带宽为2400MHz 2483 5MHz之外旳干扰信号上 应该采用比参考灵敏度电平高3dB的有效信号去测试 互调特性 在BER 0 1 时 频率灵敏度会出现几种情况 期望信号应该处在频率f0 此频率的功率的功率比参考灵敏度电平高6dB 期望信号应该是一个参考信号 一个静态的正弦波信号应该处在频率f1 此频率的功率电平为 50dBm 一个干扰信号应该处在频率f2 此频率的功率电平为 50dBm 干扰信号应该是一个参考信号 系统必须至少满足这三个数字中的一个 期望信号的中心频率应为2440MHz 最大有效电平 接收机运行的最大有效输入电平是高于 10dBm的 并且在 10dBm输入功率时 BER应该不大于输入功率的0 1 输入信号应该为参考信号 13 3 链路层LL规范 3 1空中接口协议 1 设备地址表3 1设备地址 LAP字段低地址部分 24位 UAP字段高地址部分 8位 NAP字段非有效地址部分 16位 14 静态地址遵循的规则是 最高两位为1 随机部分不能全为1 随机部分不能全为0 图3 1静态地址格式 不可分割设备地址遵循的规则是 最高两位为0 随机部分不能全为0 随机部分不能全为1 地址不能和静态地址一样 地址不能和公共地址一样 图3 2不能分割私有地址格式 图3 3可分割私有地址格式 可分割设备地址遵循的规则是 最高位为1和0 随机部分不能全为1 随机部分不能全为0 15 2 多址方案和帧间距 低功耗蓝牙使用频分多址FDMA和时分多址TDMA 在FDMA方案中 40个物理信道被划分为广播信道和数据信道 在链路层的连接中使用基于轮询的TDMA方案 在这个方案中 主设备总是发起一个包的交换序列 从设备只有在收到主设备发送过来的数据包后才能发送数据 FDMA应该用于连接的建立和在相同区域内共存的多个链路层的连接中 如表所示 每一个数据信道或每一个广播信道都有一个唯一的索引去标识它 在包交换序列中 2个连续包之间的时间间隔被称为顿间距 IFS 这段时隔具体指从一个包的结束到下一个包的幵始之间的时间间隔 他被定义为T IFS 该值为150us 表3 2低功耗蓝牙的物理信道分布 16 3 设备发现 设备发现需要有一个广播者设备和一个扫描者设备 广播者设备在广播信道上以广播事件的形式周期性地发送广播包 广播事件被及时分割 目的就是为了减少在广播信道上的干扰 扫描者设备也许会请求更多的关于广播者设备的信息 并将这些信息作为一个扫描报告传送给Host层 17 3 2链路层的操作 链路层主要有两种重要的事件操作 扫描和建立链接 设备扫描又分为被动扫描和主动扫描两种 图3 4被动扫描过程 图3 5主动扫描 在被动扫描模式中 扫描者设备仅仅监听广播包 而不向广播者设备发送任何数据 事件既可以使用可连接广播事件 也可以使用不可连接广播事件 扫描这设备应该应用设备过滤规则 扫描的结果是以HCI Adv Packet Report事件的形式提供给Host层 在主动扫描模式中 扫描者设备会要求广播者设备发送比广播包更多的信息 扫描者在没有收到ADV DIRECT IND或者ADV NONCONN IND数据包时 它不会对广播者发送SCAN REQ数据包 扫描者设备应该使用backoff count计数器去运行补偿过程 以减小多个扫描这设备间的碰撞 发起SCAN REQ数据包的扫描者设备应该使用下面的等式将它的backoff count设置为一个随机的时间计数值 即 backoff count Random 其中Random 为伪随机的整数 这个整数在时间间隔 1 upper limit 上服从均匀分布 upper limit为一个整数 范围为1 256 18 3 3空中接口包的格式 图3 6广播信道包的结构 图3 7数据信道包的结构 低功耗蓝牙只有一种包的类型 这种包被用在广播信道包中和数据信道包中 每个包包含四部分 前导 同步字 协议数据包 ProtocolDataUnit PDU 和CRC 19 3 4信道PDU 1 广播信道PDU 图3 8广播存道PDU 表3 3PDU头的类型域编码 20 2 数据信道PDU 图3 9数据信道的PDU 图3 10数据信道PDU的头域 数据信道的PDU是由16位的头 可变长度的载荷所组成的 16位的头域又被分为5个部分 LLID表明此这包是链路数据包还是链路控制包 NESN表明了在链路层的链接中下一个来自与同等低功耗蓝牙设备的被期望的包的序号 SN表明了包的序号 MD是按照 连接时间的发送 中被定义的规则而设计的 RFU是保留位 21 4 HCI规范 4 1HCI的流控制流控制的使用是从Host层到Radio层 避免造成Radio层数据缓冲区的溢出 在Radio层到Host层方向上 没有直接的流控制 在初始化时 Host层Read Buffer Size指令 其中一个返回值定义了从Host层到Radio层的最大数据单元的大小 另外一个返回值指定了Radio层所拥有的数据包的数量 这些数据包都在Radio层的缓冲区中等待被发送 当至少有1个链路层的连接时 Radio层会使用 被完成的包的数量 这个事件去控制来自于Host层的数据流 这个事件包含了许多HCI数据包 从上一次该事件被返回以来 或者从链路层连接以来 这些数据包已经在链路层的连接中传送过 Host层会基于Radio层缓冲区状态的信息作出决定 是否想向Radio层提交新的数据 或者是否等待 22 4 2HCI的数据格式 1 HCI命令分组 HCI命令分组用来从Host层向Radio层发送命令 HCI命令分组的格式如右图所示 每一个命令被分配2B的标识符 Opcode 这个标识符对不同类型的命令进行标识 OpCode分为2个不同的域 分别称为OpCode组域 OpCodeGroupField OGF 和OpCode命令域 OpCodeCommandField OCF OGF占OpCode的高6位 在低功耗蓝牙命令中被设置为0 x07 OCF占据OpCode的剩余10个数据位 并且由它来决定蓝牙的HCI命令 Opcode后面是占据1B的参数总长度域 这个参数表明了命令中所有参数的长度 这个长度是以8位字节为单位的 图4 1HCI命令分组 23 2 HCI数据分组 这个数据组的前12个数据位 连接ID 确定了包所属的链路层的连接 当一个新的连接被创建时 连接ID的值由Radio层进行分配 且取值范围是0 x000 0 xEFF 余下的0 xF00到0 xFF的数值做保留用 PB总是设置为00 BC总是设置为00 之后的16个数据位 数据总长度 表明了包中数据的总长度 这个长度是以8B为单位的 数据域是以升序字节顺序进行排序的 图4 2HCI数据分组 24 3 HCI事件分组 当有事件发生时 Radio层使用HCI事件分组向Host层做出通知 每一个事件被分配1B的事件标识码 事件码 这个事件码被用来确定事件的类型 参数总长度表明了包中的所有参数的长度 每一个参数都有许多参数 这些参数和参数的大小都是为每一个事件定义的 每一个参数的长度都是8位字节的整数倍 图4 3HCI事件分组 25 4 3HCI事件和命令 总的来说 HCI有两种等级的命令 局部命令和系统命令 局部命令会对某些Radio层中的行为作出要求 但是它和其他低功耗蓝牙设备的行为或者低功耗蓝牙包的接受行为是无关的 当命令完成时 产生的HCI Command Complete事件是对这些命令的唯一响应 对于局部命令来说 并没有定义命令超时 26 5 主机规范 5 1低功耗蓝牙传输分组在每个分组中 分组头总是首先发送 分组头的功能是描述分组的类型 以及包含了更多的特定信息 一般有3中类型的分组 面向连接数据分组 属性协议分组 应用适配层PAL ProfileAdaptionLayer 协议分组 表5 2分组头分配表5 1PAL分组格式 27 5 2面向连接数据分组 1 通用格式表5 3面向连接数据包格式表5 4面向连接数据包中信道编码的格式 2 SAR分组格式表5 5SAR的幵始分组格式表5 6SAR连续分组格式 28 5 3PAL协议分组 表5 7PAL命令 协议的设计目标是利用非常有限的计算机资源来执行各种命令 在命令分组的传输中 设别必须在接收到响应后才可以进行命令的发送 如果该命令是无效的 那么接收方应该以应答的方式发送协议错误响应 这样才能使发送方继续下一个命令的发送 PAL命令如上表所示 29 5 4通用访问应用 通用访问应用描述的是低功耗蓝牙设备访问进程的定义和需求 这包括低功耗蓝牙设备如何发送和建立与其他设备的连接 如何扮演广播 扫描和连接的角色模式 图5 1给出了建立连接的流程 可选的操作模块用虚线表示 在LL连接处于激活模式下 协议属性消息可以在任意时间发送 图5 1连接过程 30 5 5建立连接 1 创建连接 在创建连接之前 必须进行设备的查找和收集相关的信息 图5 1给出了创建连接的流程 在建立连

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论