蓝牙技术及其协议栈  
        蓝牙 (Bluetooth) 计划是由 Ericsson 、 IBM 、 Intel 、 Nokia 和 Toshiba 等公司在 1998 年联合推出的一项先进的无线网络技术。遵循蓝牙协议的各类数据及语音设备将能够用微波取代传统网络中错综复杂的电缆,非常方便地实现快速、灵活、安全、低代价、低功耗的数据和语音通信。由于蓝牙技术将在人们的日常生活和工作中扮演重要角色,市场潜力巨大,因此,它将成为 21 世纪的投资热点。文章将重点介绍蓝牙技术的工作原理和蓝牙协议栈内容。分为四个部分:术语、 蓝牙技术工作原理、 蓝牙硬件模块的组成、蓝牙软件协议栈的介绍。
1. 术语
* 微微网( Piconet ):是由采用蓝牙技术的设备以特定方式组成的网络。 微微网的建立是由两台设备(如便携式电脑和蜂窝电话)的连接开始,最多由 8 台设备构成。所有的蓝牙设备都是对等的,以同样的方式工作。然而,当一个微微网建立时,只有一台为主设备,其他均为从设备,而且在一个微微网存在期间将一直维持这一状况。
* 分布式网络( Scatternet ):是由多个独立、非同步的微微网形成的。
* 主设备( Master unit ) : 在微微网中,如果某台设备的时钟和跳频序列用于同步其他设备,则称它为主设备。
* 从设备( Slave unit ):非主设备的设备均为从设备。
* MAC 地址 (MAC address) :用 3 比特表示的地址,用于区分微微网中的设备。
* 休眠设备( Parked units ):在微微网中只参与同步,但没有 MAC 地址的设备。
* 监听及保持方式( Sniff and Hold mode ):指微微网中从设备的两种低功耗工作方式。
  2. 蓝牙技术工作原理
    其基本实现原理为蓝牙设备依靠专用的蓝牙微芯片能使设备在短距离范围内发送无线电信号,来寻找另一个蓝芽设备。一旦找到,相互之间便开始通信,交换信息。
 1) 蓝牙的无线通信技术特征
蓝牙的无线通信技术采用每秒 1600 次的快跳频和短分组技术,减少干扰和信号衰落,保证传输的可靠性; 以时分方式进行全双工通信,传输速率设计为 1MHz ; 采用前向纠错 (FEC) 编码技术,减少远距离传输时的随机噪声影响; 其工作频段为非授权的工业、医学、科学频段( 2.4GHz 的 ISM 频段),保证能在全球范围内使用这种无线通用接口和通信技术; 话音采用抗衰落能力很强的连续可变斜率调制 (CVSD) 编码方式以提高话音质量; 采用频率调制方式,降低设备的复杂性。
2 )拓扑结构
蓝牙系统支持点对点以及点对多点通信。几个相互独立、以特定方式连接在一起的微微网构成分布式网络,各微微网由不同的跳频序列来区分。在同一微微网中,所有的用户均用同一跳频序列同步。拓扑结构如图 1 所示。
  图 1 分布式网络

3 )连接建立的过程及其工作状态的转换
在微微网建立之前,所有设备都处于就绪 (STANDBY) 状态。在该状态下,未连接的设备每隔 1.28 秒监听一次消息,设备一旦被唤醒,就在预先设定的 32 个跳频频率上监听信息。跳频数目因地区而异,但 32 个跳频频率为绝大多数国家所采用。 连接进程由主设备初始化。如果一个设备的地址已知,就采用寻呼消息 (Page message) 建立连接;如果地址未知,就采用紧随寻呼消息的查询消息 (Inquiry message) 建立连接。查询消息主要用来查询地址未知的设备 ( 如公用打印机、传真机等 ) ,它与寻呼消息类似,但需要附加一个周期来收集所有的应答。在寻呼状态 (PAGE state) ,主设备在 16 个跳频频率上发送一串相同的页信息给从设备,如果没有收到应答,主设备就在另外的 16 个跳频频率上发送寻呼消息。主设备到从设备的最大时延为两个唤醒周期( 2.56 秒),平均时延为半个唤醒周期( 0.64 秒)。
  在微微网中,无数据传输的设备转入节能工作状态。主设备可将从设备设置为保持方式 (HOLD mode) ,此时,只有内部定时器工作;从设备也可以要求转入保持方式。设备由保持方式转出后,可以立即恢复数据传输。连接几个微微网或管理低功耗器件(如温度传感器)时,常使用保持方式。监听方式 (SNIFF mode) 和休眠方式( PARK mode )是另外两种低功耗工作方式。在监听方式下,从设备监听网络的时间间隔增大,其间隔大小视应用情况由编程确定;在休眠方式下,设备放弃了 MAC 地址,仅偶尔监听网络同步信息和检查广播信息。各节能方式依电源效率高低排列为:休眠方式→保持方式→监听方式。
4 )蓝牙对语音和数据的支持
  为了保证各种使用场合的应用,蓝牙的基带协议是电路交换和分组交换的组合,可以同时支持语音和数据的传输。该技术支持两种连接方式:面向连接( SCO )方式,主要用于话音传输;无连接 (ACL) 方式,主要用于分组数据传输。

在同一微微网中,不同的主从设备可以采用不同的连接方式,在一次通信中,连接方式可以任意改变。每一连接方式可支持 16 种不同的分组类型,其中控制分组有 4 种,是 SCO 和 ACL 通用的分组,两种连接方式均采用时分双工 ( TDD )通信。 SCO 为对称连接,每一个话音通道支持 64kbps 的同步话音,支持限时话音传送,主从设备无需轮询即可发送数据。 SCO 的分组既可以是话音又可以是数据,当发生中断时,只有数据部分需要重传。 ACL 是面向分组的连接,它支持对称和非对称两种传输流量: ACL 的非对称连接支持正向速率 721kbps 、反向应答速率为 57.6kbps 的;对称连接速率为 432.6kbps 。 ACL 也支持通过广播方式发送信息。在 ACL 方式下,主设备控制链路带宽,负责从设备带宽的分配;从设备依轮询发送数据。
        3 、蓝牙硬件模块的组成

蓝牙模块包括以下两个部分:

1. 无线射频( RF )单元
           蓝牙系统的天线发射功率符合 FCC 关于 ISM 波段的要求。系统的最大跳频速率为 1600 跳 / 秒,在 2.402GHz 到 2.480GHz 之间,采用 79 个 1MHz 带宽的频点。系统设计的通信距离为 10 米( 0db ),如果增加发射功率( 20db ),这一距离也可以达到 100 米。
2. 基带( Baseband,BB )和链路管理( LinkManager,LM )单元
BB 负责跳频和蓝芽数据及信息帧的传输。 LM 负责连接的建立和拆除。它们实现的功能包括:对 SCO 和 ACL 连接方式的支持;差错控制,可以采用多种检纠错方式,其中包括前向纠错编码 (FEC) ;物理层的认证与加密;链路管理。
4. 蓝牙软件协议栈的介绍
1 )协议栈结构
底部协议层包括链路管理协议( Link Manager Protocol, LMP )和基带( Baseband )控制部分。链路管理协议实现链路的建立、认证及链路配置等。其中的服务项目包括:接收和发送数据、设备号请求、链路地址查询、建立连接、认证与加密、协商并建立连接方式、确定分组的帧类型、设置监听方式、设置保持方式以及设置休眠方式等。基带( Baseband )控制部分负责跳频和蓝芽数据及信息帧的传输,包括对纠错编码的支持,对 SCO 和 ACL 包的组织,流控等。
中间协议层包括逻辑链路控制和适应协议( Logical Link Control and Adaptation Protocol,L2CAP )、服务发现协议( Service Discovery Protocol,SDP )、串口仿真协议 RFCOMM 和电话通信协议( Telephony Control Protocol,TCS ),对象交换协议( Object Exchange , OBEX) 。 L2CAP 完成数据的拆装、服务质量和协议复用等功能,是其他上层协议实现的基础。 SDP 为上层应用程序提供一种机制来发现网络中可用的服务及其特性。 RFCOMM 基于 ETSI 标准 TS07.10 在 L2CAP 上仿真 9 针 RS232 串口的功能。 TCS 提供蓝芽设备间话音和数据的呼叫控制信令。对象交换协议( Object Exchange , OBEX) 是 Extended Systems 公司为红外通信的高层应用开发的协议,现在已成功的应用于蓝牙协议栈中。
在 BB 和 LM 上与 L2CAP 之间还有一个主机控制接口层( Host Controller Interface,HCI )。 HCI 是蓝芽协议中软硬件之间的接口,它提供了一个调用下层 BB 、 LM 、状态和控制寄存器等硬件的统一命令接口。 HCI 协议以上的协议软件实体运行在主机上,而 HCI 以下的功能由蓝牙模块来完成,二者之间通过一个对两端透明的传输层进行交互。

吸收现成的协议有 PPP 、 TCP/IP 、 OBEX 、 WAP…

转载于:https://blog.51cto.com/buaadallas/80970

【摘】蓝牙技术及其协议栈相关推荐

  1. Android 蓝牙技术 实现终端间数据传输

    蓝牙技术在智能硬件方面有很多用武之地,今天我就为大家分享一下蓝牙技术在Android系统下的使用方法技巧.蓝牙是一种短距离的无线通信技术标准,蓝牙协议分为4层,即核心协议层.电缆替代协议层.电话控制协 ...

  2. 蓝牙技术|蓝牙Mesh照明技术照亮世界

    作为万物互联的无线连接方式,蓝牙是蓝牙技术联盟设计和销售的一种个人局域网络技术,旨在用于医疗保健.运动健身.信标(Beacon).安防.家庭娱乐等领域的新兴应用.相较经典蓝牙,蓝牙低功耗技术旨在保持同 ...

  3. 蓝牙技术|蓝牙标准将迈向 6GHz 频段,蓝牙技术迈向新台阶

    蓝牙特别兴趣小组(SIG)今天宣布了新的规范开发项目,以定义蓝牙低功耗(LE)在额外的非授权中频段的操作,包括 6GHz 的频段.蓝牙技术是世界上部署最广泛的无线标准,每年有超过 50 亿件产品出货. ...

  4. 蓝牙技术|智能蓝牙芯片助力元宇宙发展

    早在今年7月份,Facebook CEO扎克伯格就宣布了他的虚拟世界愿景,不久之后公布了Facebook的第一个"元宇宙"产品--一个数字会议App,该App可以让用户在VR环境中 ...

  5. 蓝牙技术|蓝牙(BLE)低功耗你所不了解的特性

    蓝牙是蓝牙技术联盟设计和销售的一种个人局域网络技术,旨在用于医疗保健.运动健身.信标(Beacon).安防.家庭娱乐等领域的新兴应用.相较经典蓝牙,蓝牙低功耗技术旨在保持同等通信范围的同时显著降低功耗 ...

  6. 纵论物联网(十一):蓝牙技术的发展

    导语 在我们之前的文章<未来3到5年,互联网巨头淡出后的智能硬件产业会如何发展?>曾经提到过,智能硬件的发展离不开蓝牙BLE标准.智能手机对低功耗蓝牙BLE标准的支持,尤其是苹果公司对BL ...

  7. 蓝牙技术基础知识总结笔记1 - 蓝牙版本及 4.0 和 BLE 的关系等

    1.蓝牙技术的起源 蓝牙的创始人是瑞典爱立信公司. 爱立信早在 1994 年就已进行研发. 1997 年,爱立信与其他设备生产商联系,并激发了他们对该项技术的浓厚兴趣. 1998 年 2 月,5 个跨 ...

  8. 使用低功耗蓝牙技术将可穿戴无线传感器连接到物联网---凯利讯半导体

    工业物联网 (IIoT) 在很大程度上要依赖传感器从便携式可穿戴系统收集数据,以便监控运动.压力.湿度和其他众多特征,然后将这些数据馈送至云进行处理. 通过模块方式,我们可以快速轻松地将传感器添加到设 ...

  9. 蓝牙技术|伦茨科技带你了解蓝牙智能门禁

    以往无论去哪一座高档大厦办事或者办公都要通过人工登记和审核等不同的手续环节,但现在科技创新发展,很多大厦和小区都采用最新的智能门禁,如今门禁系统种类很多,IC卡开门,人脸,蓝牙,刷卡,虹膜等等. 手机 ...

最新文章

  1. dmalloc 原文 翻译整理
  2. Peter Cnudde谈雅虎如何使用Hadoop、深度学习和大数据平台
  3. 今日arXiv精选 | 21篇EMNLP 2021最新论文
  4. .NET Core 1.0发布:微软开源跨平台大布局序幕
  5. Redis(十四):Jedis
  6. Rust : 泛型与trait限定
  7. 基于Springboot的爬虫项目
  8. SPSS入门教程——方差齐性检验的方法有哪些
  9. 房产中介管理系统php,房屋中介管理系统简易源代码.doc
  10. 缓存算法篇其一-----FIFO(先入先出)
  11. 随机访问介质访问控制 —— ALOHA协议
  12. 王之泰201771010131《面向对象程序设计(java)》第三周学习总结
  13. 成立一年,手游交叉推广交易社区Chartboost已有8000款游戏加入
  14. postgresql: the application server could not be contacted --2020-11-17
  15. Android Scroll实现弹性滑动 一 列表下拉弹性滑动
  16. MAVEN-POM.XML配置解读
  17. java remove removeat_Java PriorityQueue删除任意元素的性能
  18. 错位解读:细节的反义词不是粗心,…
  19. 2022“杭电杯”中国大学生算法设计超级联赛(8)
  20. 如何设计出色的网站后台原型

热门文章

  1. 《快乐编程大本营》java语言训练班 1课:第一个java程序:你好,范冰冰;
  2. JavaScript错误信息
  3. 数据库查询索引(sql单个索引和复合索引)
  4. Android性能优化:手把手带你全面实现内存优化
  5. 创业公司如何切入巨头垄断的芯片市场?
  6. STM32定时器T2纯软件仿真时间准确,JTAG在线调试查看时间不准的问题
  7. 【Maven】Maven下载源码和Javadoc的方法
  8. 一些编译php时的configure 参数
  9. oracle删除数据库表空间
  10. 【ASP.NET Web API教程】2 创建各种Web API