蓝牙协议栈
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图1.3 链路层状态图
表1.1 Radio层的工作状态
广播者角色和扫描者角色可以处于空闲状态或连接 状态中。主从角色的只能处于在连接状态中。只有当链路 层在创建连接时,Radio层才能使用发起者角色去执行主角 色。主角色每次可以有多个链路层的连接。从角色每次只 能有1个链路层的连接。
表1.2 Radio层工作角色的联合
3、链路层LL规范
3.1 空中接口协议
(1)设备地址
表3.1 设备地址
LAP字段低地址部分,24位;
UAP字段高地址部分,8位;
NAP字段非有效地址部分,16位。
图3.1 静态地址格式
静态地址遵循的规则是①最高两位为1;②随机部分不能全为1;③随机部分不能全为0。
图3.2 不能分割私有地址格式
图3.8 广播存道PDU
表3.3 PDU头的类型域编码
(2)数据信道PDU
数据信道的PDU是由16位的头, 可变长度的载荷所组成的。 16位的头域又被分为5个部分, LLID表明此这包是链路数据包还是 链路控制包。NESN表明了在链路 层的链接中下一个来自与同等低功 耗蓝牙设备的被期望的包的序号。 SN表明了包的序号。MD是按照 “连接时间的发送”中被定义的规 则而设计的。RFU是保留位。
图1.1 低功耗蓝牙系统的体系结构
1.2 拓扑结构
低功耗蓝牙是采用星形(Star)拓扑 结构。A被称作为可以和多个外围 设备进行通信的主设备;B、C和D 被称作为在同一时间只能和一个主 设备进行通信的从设备。 在主从设备之间的通信中的数据包 是在链路层的连接中被交换的。一 个从设备和链路层的连接每次最多 只能有一个;且每个链路层的连接只 能由一个主设备和从设备组成。 低功耗蓝牙可以1个主设备和无数 个从设备之间通信。
图3.9 数据信道的PDU
图3.10 数据信道PDU的头域
4、HCI规范
4.1 HCI的流控制
流控制的使用是从Host层到Radio层,避免造成Radio层数据缓 冲区的溢出。在Radio层到Host层方向上,没有直接的流控制。在 初始化时,Host层Read_Buffer_Size指令。其中一个返回值定义了 从Host层到Radio层的最大数据单元的大小。另外一个返回值指定 了 Radio层所拥有的数据包的数量,这些数据包都在Radio层的缓冲 区中等待被发送。当至少有1个链路层的连接时,Radio层会使用 “被 完成的包的数量”这个事件去控制来自于Host层的数据流,这个事 件 包含了许多HCI数据包。从上一次该事件被返回以来,或者从链路 层连接以来,这些数据包已经在链路层的连接中传送过。Host层会 基于Radio层缓冲区状态的信息作出决定,是否想向Radio层提交新 的数据,或者是否等待。
图2.1 GFSK参数的定义
表2.1 传输频谱框架
在相邻信道上的相邻信道功率不同于2个或2个以上相 邻信道数定义的相邻信道功率。该相邻信道功率定义为 1MHz信道内功率测量的总和。发射机功率以最大保持为 100KHz带宽来测量。如发射机在M信道上发射,而相邻信道 功率在信道N上测量。发射机使用发射一个伪随机数据顿通 过测试。除允许增加到3个1MHz宽的频带以外,中心频率是 一个1MHz的若干整数倍,而且必须符合-20dBm的绝对值。
3.3 空中接口包的格式
图3.6 广播信道包的结构
低功耗蓝牙只有一 种包的类型,这种包被用 在广播信道包中和数据 信道包中。每个包包含 四部分:前导、同步字、 协议数据包(Protocol Data Unit, PDU)和CRC。
图3.7 数据信道包的结构
3.4 信道 PDU
(1)广播信道PDU
2.2 发射器和接收器的特性
(1)发射器的特性
发射机釆用高斯频移键控GFSK调制,BT=0.5,调 制指数在0.45—0.55之间,正的频率偏移用二进制1 表示,负的频率偏移用二进制0表示。 对每个发送信道,对应于序列1010的最小频偏 (Fmin=min(Frnin+,Fmin-))将不小于对应于序列 00001111的频率偏移(的±80%,另外,最小的频率偏 移将不会小于185KHZ。将被发送的数据的符号率 为每秒一百万个符号,并且每个符号的时间精确性应 该小于±5.0xl0-5。理想信号正交与0点时,应是无误 差的(正交清晰,无扩散)。在测量的交叉时间和理想 符号区间之间的时间差称为过0误差,它为小于±1/8 的符号区间。
(2)接收器的特性
实际的灵敏度水平:接收机的实际的灵敏度水平应该不大于-70dBm。 带外阻塞:带外阻塞被应用到了带宽为2400MHz-2483.5MHz之外旳 干扰信号上,应该采用比参考灵敏度电平高3dB的有效信号去测试。 互调特性:在BER=0.1%时,频率灵敏度会出现几种情况:①期望信号应 该处在频率f0,此频率的功率的功率比参考灵敏度电平高6dB,期望信号 应该是一个参考信号。②一个静态的正弦波信号应该处在频率f1,此频 率的功率电平为-50dBm。③一个干扰信号应该处在频率f2,此频率的功 率电平为-50dBm,干扰信号应该是一个参考信号。系统必须至少满足 这三个数字中的一个。期望信号的中心频率应为2440MHz。 最大有效电平:接收机运行的最大有效输入电平是高于-10dBm的,并且 在-10dBm输入功率时,BER应该不大于输入功率的0.1%,输入信号应该 为参考信号。
Fra Baidu bibliotek
1、低功耗蓝牙BLE体系结构概述
1.1 体系结构
协议栈的最上层是应用层,它定义了 许多不同种类的应用业务。 Host层规范了低功耗蓝牙中许多数 据包的格式、低功耗蓝牙系统所采 用的安全模式和一些不可缺少协议 的规范。 HCI层是Host层和Radio层之间的 桥梁,它的作用是为BLE系统的 Radio层功能提供同一的访问接口。 链路层的基本功能是将物理层提供 的原始传送比特流可能出错的物理 连接改造成为逻辑上无差错的数据 链路,同时执行一些基带协议。 物理层的工作频率为ISM 2.4GHz, 物理层速率IMb/s,连接距离为5m10m,釆用调频技术来减少干扰和降 低信号的衰减。
链路层主要有两种重要的事件操作:扫描和建立链接。设备扫描又分为被动扫 描和主动扫描两种。
图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。
低功耗蓝牙BLE协议栈
蓝牙版本的发展
低功耗蓝牙与传统蓝牙技术规范比较
技术规范 距离/范围(米) 典型蓝牙 10~100 低功耗蓝牙 50~100
空中数据速率
应用吞吐量 发送数据的总时间 语音能力
1~3Mbit/s
0.7~2.1Mbit/s 100ms 有
13Mbit/s
0.2Mbit/s ﹤6ms 没有
(3)设备发现
设备发现需要有一个广播者设备和一个扫描者设备。广播者设 备在广播信道上以广播事件的形式周期性地发送广播包。广播事件 被及时分割,目的就是为了减少在广播信道上的干扰。扫描者设备也 许会请求更多的关于广播者设备的信息,并将这些信息作为一个扫描 报告传送给Host层。
3.2 链路层的操作
不可分割设备地址遵循的规则是①最高两位为0;②随机部分不能全为0;③随机部分 不能全为1;④地址不能和静态地址一样;⑤地址不能和公共地址一样。
图3.3 可分割私有地址格式
可分割设备地址遵循的规则是①最高位为1和0②随机部分不能全为1;③随机部分不 能全为0。
(2)多址方案和帧间距
表3.2 低功耗蓝牙的物理信道分布 低功耗蓝牙使用频分多址FDMA和时分多 址TDMA。在FDMA方案中,40个物理信道被划 分为广播信道和数据信道。在链路层的连接中 使用基于轮询的TDMA方案。在这个方案中, 主设备总是发起一个包的交换序列,从设备只 有在收到主设备发送过来的数据包后才能发送 数据。FDMA应该用于连接的建立和在相同区 域内共存的多个链路层的连接中。如表所示, 每一个数据信道或每一个广播信道都有一个唯 一的索引去标识它。 在包交换序列中,2个连续包之间的时间间 隔被称为顿间距(IFS)。这段时隔具体指从一 个包的结束到下一个包的幵始之间的时间间隔 ,他被定义为T_IFS,该值为 150us。
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。
网络拓扑
耗电量 最大操作电流 休眠电流损耗 主要用途
分散网
1(作为参考) ﹤30mA 10uA 手机,游戏机,耳机,立体声 音频流,汽车和PC等
星型
0.01至0.5(视使用情况) ﹤15mA(最高运行时为15mA) 4uA 手机,游戏机,PC,表,体育和健身,医疗保 健,汽车,家用电子,自动化和工业等
一个角色可以同时承担其他角色的工作。例如:主角色可以 同时执行广播者角色、或者扫描者角色,亦或发起者角色的工作。 从角色可以同时执行广播者角色,但是不能同时执行广播者角和 扫描者角色。主从角色不能同时执行。
1.4 设备分类
低功耗蓝牙设备可被分为4类:广播设备、扫描设备、外围 设备和中央设备。 广播设备只能以广播者的角色去运行,并且只能使用非连接 的广播事件去广播数据,通常这样的设备没有蓝牙接收器, 只有一个发送器来完成广播数据的目的。 扫描设备只能以扫描者的角色去运行,并且使用被动的扫描 模式从广播设备那里获取数据,这样的设备与广播设备恰好 相反,没有发送器,只有一个接收器来完成被动的扫描。 外围设备和中央设备是一种低功耗蓝牙设备,在链路层的连 接中,外围设备以从角色运行。因此,这样设备也需要以广 播者的角色去运行,并且使用可连接的广播事件去建立链路 层的连接。 中央设备是以主角色运行,它需要以扫描者的角色去运行, 从而建立链路层的连接。
图1.2 星形拓扑结构
1.3 工作状态和工作角色
在同一时间内蓝牙设备只允许处于5种状态中 的一种。同时这5中状态不是每个蓝牙设备都要使 用的,其中广播状态和扫描状态是不可或缺的。 待机状态不能接受和传送任何数据包,且当处 于其他状态时都能回到此状态。 广播状态有在广播信道发送广播包和监听响 应包两种作用。 扫描状态是用来监听广播信道中的数据包。 初始化状态有监听从特定设备发出的广播包 和发起链接请求作为响应两种作用。 扫描状态、广播状态和初始化状态只能由待 机状态进入。 在连接状态下又把设备分为主从两种角色。其 中当Radio层从初始化状态进入连接状态并发起连 接请求时,该设备被称为主设备,当Radio层从广播状 态进入连接状态时,该设备被称为从设备。