蓝牙简介:
“蓝牙”是一种大容量近距离无线 数字通信技术标准,其目标是实现最高数据传输速率1Mbps、最大传输距离为10厘米~10米,通过增加发射功率可达到100米。
蓝牙技术是 爱立信、IBM等5家公司在1998年联合推出的一项无线 网络技术。如今全世界已有1800多家公司加盟该组织。蓝牙的传输距离为10cm~10m,它使用2.4 GHz ISM频段和调频、跳频技术,速率为1 Mbps。蓝牙比802.11更具 移动性,802.11限制在办公室和 校园内,而蓝牙却能把一个设备连接到LAN( 局域网)和 WAN( 广域网),甚至支持全球漫游。此外,蓝牙成本低、体积小,可用于更多设备。“蓝牙”最大优势还在于更新网络骨干时,如果搭配“蓝牙”架构成本比铺设线缆低。
蓝牙协议工作在无需许可的ISM(Industrial Scientific Medical)频段的2.45 GHz。最高速度可达723.1kb/s。为了避免干扰可能使用2.45GHz的其它协议,蓝牙协议将该频段划分成79频道,(带宽为1MHZ)每秒的频道转换可达1600次。
蓝牙的应用:
1, 文件传输
蓝牙的无线文件传输支持特定格式如.xls,.doc,.jpg及文件的文件传输,此外还支持远端的文件夹浏览功能;
2, 拨号上网
通过蓝牙的无线调制解调器,可实现无线拨号上网及传真;
3, 头戴式耳机
这个是最初也是最为流程的蓝牙应用,通过蓝牙连接,实现无线音频的输入及输出;
4, 蓝牙手机
通过蓝牙的应用协议,实现无线通话和受话功能;
5, 局域网访问
通过特定的蓝牙应用协议,可以建立局域网并共享网络连接应用;
6, 个人资料管理
通过无线连接,管理电话本记录、查询,日历,日程及名片的传输和更新;
蓝牙协议栈体系结构:
如图所示,蓝牙的协议栈体系结构由底层硬件模块,中间层和高端应用层三大部分组成;
蓝牙底层硬件模块
底层模块是蓝牙技术的核心模块,主要由链路管理层(LMP Link Manager Protocol)、基带层(BB Base Band)和射频(RF Rodio Frequency)组成。
其中:
无线连接层(RF)通过2.4GHZ 的ISM频段,实现数据流的过滤和传输,它定义了对工作在此频段的蓝牙接收机应满足的基本要求;
基带层(BB)提供了两种不同的物理链路(同步面向连接链路SCO Synchronous Connection Oriented和异步无连接链路ACL Asynchronous Connection Less),负责跳频和蓝牙数据及信息帧的传输,且对所有类型的数据包提供了不同层次的前向纠错码(FEC Frequency Error Correction)或循环沉余度差错校验(CTC Cyclic Redundancy Check);
LMP层负责两个或多个设备链路的建立和拆除及链路的安全和控制,如鉴权和加密、控制和协商基带包的大小等,它为上层软件模块提供了不同的访问入口;
蓝牙主机控制器接口 HCI (Host Controller Interface)由基带控制器、连接管理器、控制和事件寄存器等组成。它是蓝牙协议中软硬件之间的接口,它提供了一个调用下层BB、LM、状态和控制寄存器等硬件的统一命令,上、下两个模块接口之间的消息和数据的传递必须通过HCI的解释才能进行。HCI层以上的协议软件实体运行在主机上,而HCI以下的功能由蓝牙设备来完成,二者之间通过传输层进行交互。
蓝牙中间协议层模块
中间协议层由逻辑链路控制与适配协议L2CAP (Logical Link Control and Adaptation Protocol)、服务发现协议 SDP (Service Discovery Protocol)、串口仿真协议或称线缆替换协议 RFCOMM 和二进制电话控制协议 TCS (Telephony
Control protocol Spectocol)组成。
L2CAP 是蓝牙协议栈的核心组成部分,也是其它协议实现的基础。它位于基带之上,向上层提供面向连接的和无连接的数据服务。它主要完成数据的拆装、服务质量控制,协议的复用、分组的分割和重组(Segmentation And Reassembly)及组提取等功能。L2CAP允许高达64KB的数据分组。
SDP是一个基于客户/服务器结构的协议。它工作在 L2CAP层之上,为上层应用程序提供一种机制来发现可用的服务及其属性,而服务的属性包括服务的类型及该服务所需的机制或协议信息。
RFCOMM 是一个仿真有线链路的无线数据仿真协议,符合ETSI 标准的 TS 07.10串口仿真协议。它在蓝牙基带上仿真RS-232的控制和数据信号,为原先使用串行连接的上层业务提供传送能力。
TCS是一个基于 ITU-T Q.931 建议的采用面向比特的协议,它定义了用于蓝牙设备之间建立语音和数据呼叫的控制信令(Call Control Signaling),并负责处理蓝牙设备组的移动管理过程。
蓝牙高端应用层模块
高端应用层就是由选用协议层组成。选用协议层中的 PPP (Point-to-Point Protocol)是点到点协议,它由封装、链路控制协议、网络控制协议组成,它定义了串行点到点链路应当如何传输因特网协议数据,它主要用于LAN接入、拨号网络及传真等应用规范;
TCP/IP(传输控制协议/网络层协议)、UDP(User Datagram Protocol 对象交换协议)是三种已有的协议,它定义了因特网与网络相关的通信及其他类型计算机设备和外围设备之间的通信。蓝牙采用或共享这些已有的协议去实现与连接因特网的设备的通信,这样,既可提高效率,又可在一定程度上保证蓝牙技术和其它通信技术的互操作性;
OBEX(Object Exchange Protocol)是对象交换协议,它支持设备间的数据交换,采用客户/服务器模式提供与 HTTP(超文本传输协议)相同的基本功能。该协议作为一个开放性标准还定义了可用于交换的电子商务卡、个人日程表、消息、和便条等格式;
WAP(Wireless Application Protocol)是无线应用协议,它的目的是要在数字蜂窝电话和其它小型无线设备上实现因特网业务。它支持移动电话浏览网页、收取电子邮件和其它基于因特网的协议。
WAE(Wireless Application Environment) 是无线应用环境,它提供用于 WAP 电话和个人数字助理PDA(Personal Digtital Assistant) 所需的各种应用软件。
常见的蓝牙配置文件(
Bluetooth profiles)
A2DP Advance Audio Distribution profile 高级音频分发配置文件
A2DP在我们公司产品的应用中,最常见于BT AUDIO功能。A2DP定义了ACL(Asynchronous Connectionless)信道上传输单声道或立体声等高质量音频信息的协议和过程。A2DP的应用,使得声音的传输可以达到44.1kHz的速率,而一般的传输速率只能达到8kHz.
使用A2DP协定传输的音频,我们称为高级音频,而一般所说的蓝牙音频,是指语音通话过程中的语音音频,其传输速率只是上面提到的8kHz.
AVRCP Audio/Video remote control profile
AVRCP协定为基于蓝牙的无线连接设备提供了标准接口以实现设备的远程控制。该profile规定了AV/C数字接口命令集,在AVRCP中,控制器将检测到的用户操作翻译为A/V控制信号,再将其传输到远程的蓝牙设备中实施控制。
DUN 拨号网络配置文件
DUN拨号网络配置文件允许用户通过手机作为无线拨号调制解调器连接到互联网;
FTP File Transfer profile
文件传输配置文件定义了客户端设备与服务器设备上的文件和文件夹交互方式。经由FTP协定,文件可以在客户端和服务器之间实现同步。
HFP Hand free profile和HSP Handset profile
HFP 免提配置文件定义了免提设备如何使用网关设备拨打和接听电话,而HSP 耳机配置文件定义了蓝牙耳机如何与电脑或者手机等设备进行通讯。
SPP Serial Port profile
串行端口配置文件定义了两个蓝牙设备间如果设置虚拟串口并进行虚拟串口的数据通信。
PBAP Phone Book Access Profile
顾名思义,PBAP配置文件是蓝牙设备间交换电话本的协定,通过PBAP协定,蓝牙设备可以访问电话本与相关的通话记录;
蓝牙系统有三种主要状态:
待机状态,连接状态和节能状态。从待机状态向连接状态转变的过程中,有7个子状态:
寻呼(page)、寻呼扫描(page scan)、查询(inquiry)、查询扫描(inquiry scan)、主单元响应(master response)、从单元响应(slave response)和查询响应(inquiryresponse)。
Page:传呼
Page Scan:传呼扫描
Page是指,发起连接的设备(主设备)知道要连接设备的地址。所以可以直接传呼。(想想传呼机,要知道号码才行)。
Page Scan是指该设备正处于等待传呼的状态中。通常是指和Page对应从设备(等待被连接的设备)。
Inquiry:查询(询呼)
Inquiry Scan:查询(询呼)扫描
Inquiry,是不知道周围有什么设备,要去查询(调查),类似于广播(吆喝)。处于Inquiry Scan的设备可以回应这个查询。再经过必要的协商之后,它们就可以进行连接了。
PS:Inquiry之后,不需要进入Page就可以连接上设备。
Page Scan:传呼扫描
Page是指,发起连接的设备(主设备)知道要连接设备的地址。所以可以直接传呼。(想想传呼机,要知道号码才行)。
Page Scan是指该设备正处于等待传呼的状态中。通常是指和Page对应从设备(等待被连接的设备)。
Inquiry:查询(询呼)
Inquiry Scan:查询(询呼)扫描
Inquiry,是不知道周围有什么设备,要去查询(调查),类似于广播(吆喝)。处于Inquiry Scan的设备可以回应这个查询。再经过必要的协商之后,它们就可以进行连接了。
PS:Inquiry之后,不需要进入Page就可以连接上设备。
微微网(Piconet)
微微网是由采用蓝牙技术的设备以特定方式组成的网络。 微微网的建立是由两台设备(如便携式电脑和蜂窝电话)的连接开始,最多由8台设备构成。所有的蓝牙设备都是对等的,以同样的方式工作。然而,当一个微微网建立时,只有一台为主设备,其他均为从设备,而且在一个微微网存在期间将一直维持这一状况。
蓝牙地址
为了识别众多的蓝牙设备,像对待存储器的存储单元一样,每个蓝牙设备都分配了一个48 位的地址,简称蓝牙地址(BT_ADDR),48 位蓝牙地址能寻址的蓝牙设备应当有248=256 T 个(1T=240),但事实上再大的散射网也用不完如此大的蓝牙设备空间。使用中把蓝牙地址分成了三段:低24 位地址段LAP;未定义8 位地址段NAP;高16 位地址段UAP。
UAP 和LAP 合在一起形成了蓝牙寻址空间240。NAP 和UAP 合在一起形成了24 位地址,用作生产厂商的唯一标识码,由蓝牙权威部门分配给不同的厂商。LAP 在各厂商内部分配。