(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf_第1页
(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf_第2页
(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf_第3页
(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf_第4页
(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf_第5页
已阅读5页,还剩81页未读 继续免费阅读

(无线电物理专业论文)基于pc端的蓝牙核心协议l2cap、sdp及hci实现.pdf.pdf 免费下载

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

文档简介

简要 基于p c 端的蓝牙核心协议l 2 c a p 、s d p 及h c i 实 现 专业:无线电物理 姓名:彭文娟 导师:黄晓副教授 摘要 监牙( b i u e t o o t h ) 技术是一种低成本、低功耗、近距离的无线连接技术标准, 使用2 4 g h z s m 频段的无线通信技术。目前支持数据与语音业务传输距离为 l m 0 0 m ,可支持最高3 m b p s 的数据速率。以p c 机为中心的个人局域网是蓝牙 技术的一个重要应用。研究和实现基于p c 端的蓝牙核心协议,有助于深入理解 蓝牙协议和规范,并为进 步开发高层应用打下基础。 论文在蓝牙技术规范的框架下,结合蓝牙协议的体系结构,深入研究和分忻 了逻辑链路控制和适配协议l 2 c a p 和服务发现协议s d p 以及蓝牙软硬件接e l h c i 并在w i n d o w s 平台的v i s u a lc + + 开发软件用c c + + 语言开发实现这几个咖 议,可完成蓝牙改备的奇询、涟接、数据传送、服务发现等功能,并通过实验测 试, 关键词:监牙,h c l 2 c a p ,s d p a b s t r a c t i m p l e m e n t a t i o no fb l u e t o o t hp r o t o c o l sl 2 c a p 、s d pa n d h c io np cp l a t f o r m m a j o r : n a m e: s u p e r v i s o r : r a d i op h y s i c s p e n gw e n j u a n h u a n gx i a o a b s t r a c t b l u e t o o t ht e c h n o l o g yi saw i r l e s st e c h n o l o g ys t a n d a r d w h i c hi sl o wc o s t ,l o w p o w e ra n ds h o r t d i s t a n c e 【c u s e sf r e q u e n c yo f2 4 g h zi s mb a n df o rw i r e l e s s c o m m u n i c a t i o n a tp r e s e n ti tc a r ls u p p o r tt h et r a n s m i s s i o ns p e e do f3 m b p sa tt h em a x , f o rb o t hd a t aa n dv o i c e i t st r a n s m i s s i o nd i s t a n c ei sf r o mlm e t r et ot o om e t r e s o n e o ft h em o s ti m p o r t a n ti m p l e m e n t a t i o n si sp e r s o n a ll a nc e n t r e do np c r e s e a r c ha n d i m p l e m e n t a t i o n so nb l u e t o o t hc o r ep r o t o c o l sb a s e do np cp l a t f o r m ,n o to n l yh e t p st o c o m p r e h e n d b l u e t o o t hp r o t o c o l sa n ds p e c i f i c a t i o n s t h o r o u g h l y ,b u ta l s o s e ta f o u n d a t i o nf o rf u r t h e rd e v e l o p m e n ti nh i g h e rl a y e ra n da p p l i c a t i o n s u n d e rt h eb l u e t o o t hs p e c i f i c a t i o nf r a m e w o r k ,s t r i c t l yc o n f o r m e dt h eb l u e t o o t h p r o t o c o ls t a c ka r c h i t e c t u r e ,t h i st h e s i s m a d ead e t a i l e da n a l y s i sa n dr e s e a r c ho n l o g i c a l l i n kc o n t r o la n d a d a p t i v e p t o c o i f l 2 c a p l s e r v i c e d i s c o v e r y p r o t o c o l ( s d p ) ,a n dt h eh a r d w a r ec o n t r o l i n t e r f a c e ( h c l ) t h et h e s i si m p l e m e n t st h e p r o t o c o l so nw i n d o w sp l a t f o r mi nc c + + u s i n gv i s u a lc 十+ a st h ed e v e l o p i n gt 0 0 1 b a s e do nt h a t ,t h et h e s i s i m p l e m e n t st h e f u n c t i o no f r e q u e s t ,c o n n e c t i o n t h e t r a n s m i s s i o no fd a t ap a c k a g ea n ds e r v i c ed i s c o v e r ye t c a l lo ft h ea b o v eh a v eb e e n t e s t e di nl a b ,u s i n gb l u e t o o t hd e v e l o p m e n tb o a r d k e yw o r d s : b l u e t o o t h ,h c ,l 2 c a p , s d p v 引言 第一章引言 1 1 蓝牙技术介绍 近年来,随着计算技术、通信技术的飞速发展,特别是互联网的迅速普及和 3 c ( i t - 算机、通信、消费电子) 合一的加速,无线通讯技术己愈来愈受到重视。发 展无线通信技术,将人们从有线连接的束缚中解放出来,这己成为一种必然趋势。 多年来,许多公司和标准化组织在不断探寻不同领域的无线连接技术,开发出一 系列技术标准,其中蓝牙( b t u e t o o t h ) ;无线技术以提供低价位、低功率消耗,并可 同时提供语音数据传输而吸引众多目光。 蓝牙技术是爱立信公司在t 9 9 4 年提出的一种最新的短距离无线通信技术标 准,“蓝牙”一词取自一位在公元l o 世纪统一丹麦的国王一一哈拉德二世 ( a r a i _ d ) 的绰号,即蓝牙( b u e t o o t h ) 。爱立信在此领域的研究引起了i 队、 英特尔、诺基亚、东芝公司的兴趣。这五家公司于1 9 9 8 年2 月倡议组成了监牙 特殊利益小组( s 【g ) ,致力于监牙技术标准的制定、蓝牙产品的测试以及协调各 国蓝牙使用频段的一致性。t 9 9 8 年5 月,s 【g 正式成立。随后又有四家公司 3 c o m 、朗讯、微软和摩托罗拉加入了s g ,共同构成了s 1 6 的九个创始公司和领 导成员。自s g 成立以来,加盟的公司越来越多,其中包括诸如a m d 、康柏、戴 尔、惠普、德州仪器、高通以及 西欧、飞利浦、三星、夏普等许多世界著名的 计算机、通信以及消费电子产品领域的企业,共至还有汽车与照相机的制造商和 生产厂家。一项公开的全球统一的技术规范得到工业界如此广泛的关注和支持是 以往所罕见的。这说明蓝牙技术具有广阔的应用前景和巨大的潜在市场。 蓝牙不是用于二远距离通信的技术,它是短距离的无线个人刚络传输 ( w i r e t e s sp e r s o n a a r e an e t w o r k ) 应用其主要目标是提供一个全世界通行 的无线传输环境,通过无线电波来实现所有移动设备之间的信启、传输服务,它是 便携式电子设备和固定式电子设备之问代替电缆连接的短距离无线通信的标准, 将各种数字信息的外部设备用无线方式连接起来,进而形成一种个人周围领域的 网络,使得在其范围之内各种信息化的移动便携设备都能实现无缝的资源共享, 而移动便携设备包括手机、笔记本电脑、p d a 、数字相机、打印机等等,具体地 中山大学商! 七学 立论文 说,蓝牙的目标是提供一种通用的无线接口标准,用微波取代传统网络中错综复 杂的电缆,在蓝牙设备间实现方便快捷、灵活安全、低成本低功耗的数据和话音 通信。监牙通过无线的方式将它们连成一个围绕个人的网络,省去了用户接线的 烦恼,在各种便携设备之间实现无缝的资源共享,因此,其载频选用在全球都可 用的2 4 5 g h z 工业、科学、医学( i s m ) 频带。 蓝牙技术的特点包括: i 、使用2 4 g h z i s m 频段,无须中请许可汪: 2 、可同时支持数据、音频、视频信号: 3 、采用跳频技术,数据包短抗信号衰减能力强: 4 、采用快速跳频和前向纠错方案以保让链路稳定,减少同频干扰和远距离传输 时的随机噪声影响。 5 、技术的开放性:蓝牙足一个由厂商们自己发起的技术协议,完全公开,而并 非某一家独有和保密。只要是s i g 的成员,都有权无偿使用蓝牙的新技术, 而且蓝牙技术标准制订后,任何厂商都可以无偿地拿来生产产品,只要产品 通过s i g 组织的测试并符合蓝牙标准后,品牌即可投入市场。 6 、蓝牙产品的互操作性和兼容性:蓝牙产品在满足蓝牙规范的前提下,还必须 通过s i g 的认证程序( q u a l i f i c a t i o np r o g r a m ) 。通过了认汪程序才能走向 市场。这就保证了即使是不同公司的蓝牙产品,电可实现互操作和数据共享, 达到完全兼容的目的。 1 2 蓝牙技术发展状况及其前景 监牙技术特殊兴趣组织( s g ) 只负责蓝牙技术的开发和技术叻、议的白皮 c 制定,这既给众蓝牙研究机构和开发厂商一个严灌的框架和格式又提供了一个 广阔的设计空间。目前在国外,只有少数几个厂家能够自行研制蓝牙开发平台, 譬如爱立信( e r i c s s o n ) 、英国剑桥硅无线电单j = :片公亓jc a m b r i d g es i l i c o n r a d i o ( c s r ) r j 美国鳟通公司f b m a d c o mj 。这些著名厂商均有开发各式平台的1 溢牙 芯片组及核心咖议栈,但是都封装成套,。品大批量丈给各个监牙产品厂寰,既是 只提供给买家某种特定应用的最上层一些接口函数,犀不公斤陔一i l 、功、议栈的代 码。国内各个研究机构和厂商主要是购炎国外的芯片组或成套的圩发平台或者 自行开发核心防议栈及应用上层:或者直接在生产厂商提供的协议栈上加盖应用 上层研发产品,但此方法纯粹发开产品而无法进行蓝牙技术的研究,而且技术水 平与国外相比还有很大的差距。东南大学已自行开发了一套蓝牙开发平台,采用 了e r i c s s o n 公司的蓝牙基带射频芯片,成为中国第一个拥有蓝牙开发平台自主 权的机构。现在随着蓝牙技术在全球的兴起,我国从事该研究的人员也逐渐增多。 1 9 9 7 年7 月蓝牙s i g 正式推出了蓝牙标准v 1 0 ,到2 0 0 4 年底,s i g 发布了 蓝牙2 o + 增强数据率( e d r ) 规范1 3 1 。改进版蓝牙技术最大特点是速率,从以前 的【m b p s 提升到现在的3 m b p s ,同时它完整地考虑了后向规范的兼容性,更适 于高速蜂窝网络业务。据悉,蓝牙技术的下一个版本预计今年年底前推出,主要 解决功率消耗问题,目标是保证蓝牙发备使用单一电池供电连续工作更长时间。 蓝牙技术特殊兴趣组织( s 【g ) 在2 0 0 5 年底宣布,蓝牙产品每周的发货量己达 到9 5 0 万,刨下里程碑式的重要纪录,据 m sr e s e a r c h 数据显示,2 0 0 5 年5 月 的发货量为4 7 5 万,至9 月时已经取得双倍增长,远超于分析员的乐观预测。监 牙技术联盟执行董事麦弗利博士( d r m c h a elf o l e y ) 表示:“蓝牙产品发货量 于四个月内倍增,再一次证明蓝牙是架没个人局域网络的最佳无线技术。面对市 场的急剧增长,蓝牙技术联盟关注市场所需,能进一步提升用户的优质体验。我 的全新消费者项目鼓励不同产品类别做出相类的实施,方便用户了解产品的预 期效能。”h 1 蓝牙技术的应用十分广泛目前主要的应用有:蓝_ 牙与计算机相连,蓝牙嵌 入无绳电话,办公环境的数据共享i n t e r n e t 接入,无线免提,资料同步,影 像传递,监牙技术还可以应用于键盘、鼠标、家庭网络、高速无线内部网络、电 子名片等方面。在未来的生活和工作环境中,基于蓝牙技术的产品将会无处不在, 蓝牙技术的应用范围是如此之广,人们i 良难准确地晓出它到底能有多少应用。l e 是因为如此,瓶牙技术己成为当今世界上的投资热点。据统计,己有数以百亿美 元的资金投向了蓝牙芯片及产品开发,敦以千汁的厂家在全力以赴地开发基于蓝 牙技术的产品,数以万计的工程师和技术人员热衷于蓝牙技术的研究和发展。因 此,我们可以说,监牙技术前途无量。当然,目前还不可以说此项技术已是十全 十美了它仍然存在这样或那样的问题和缺陷,例如实用产品的面市肯所延迟等, 厘是,怍为一个新的短距离无线通信技术的标准,特别是全球统的、公开的技 p 山大学硕士学应论文 术标准,能得到如此众多厂商,有如此众多的人力物力的投入,充分说明其市场 潜力之巨大。技术本身也会得到不断的完善,从而又将开拓更加广阔的应用市场。 现代信息社会的高级阶段,必将是处处有嵌入式系统的智能化数字化的信息设 备,社会的每一个成员、每一件智能化的设备都能时时刻刻、随时随地、很方便 地连在网络上,这样全球信息一体化就会跃升到一个新的水平,劂络经济就会释 放出更加巨大的能量。而蓝牙技术就正在试图将人们的这一梦想变成现实。蓝牙 技术的定位就是现代通信网络的最好 0 m ,它将会象一种无处不在、数字化的神 经末梢一样,把现有的各种网络终端设备各种信息化的设备在近距离内都能连 接起来。 5 1 1 3 蓝牙与其它无线技术的比较 1 3 1 蓝牙与红外的比较” 对于红外和蓝牙产品而言,数据交换都是它们的一项基本功能。事实上, 两种技术都能够支持很多相同的应用。咀是这两种技术又各有所长,而且红外和 蓝牙之间正好还可以取长补短。 红外要求短距离和小角度( 不超过3 0 度) ,而且设备之间不能肯阻隔物:而 蓝牙没有这样的要求。蓝牙无线通信可以穿透物体并能在微微网中实现多个设 备间相互通信,为交换数据提供了广泛的应用,而这些在红外看来是非常困难甚 至是不可能的。另外,采用红外技术实现数据同步时,则要求丽个设备都要保持 静l e ,这电给用户带来不便,监牙则无这方面限制。 对f 传送数据而言,红外在速率上略胜过蓝牙,目前最广泛使用的监牙l l 规范里,监牙只能支持7 2 l k b i t s 的数据速率( 注:在监牙2 o + 增强数据率( e d r ) 舰范可以达到3 l f b i t s ) ,而红外最高可以达到4 m b i t s , 1 3 2 蓝牙和i e e e 一8 0 2 1 l 的比较7 l 【8 e e e8 0 2 1 1 是应用于高端的无线局域网技术兵传输距离可达5 0 m 到数百 米传输速度为i m b i t s 。而监牙则主要用于短距离传输( 一投为l 0 m ,功率放 大可以达到l o o m 毖至以上) 【而且功牦非常低,尽管监牙t 怍在全球通用的 2 4 g h z 的 s 艟( 即3 21 k 、科学、医学) 频段, e e e 一8 0 2 1 _ 了菹牙技术可以共存, 引言 这主要是因为蓝牙特别设计了快速跳频及前向纠错方案以保证链路稳定和传输 可靠,有很强的抗二f 扰能力。 l3 3 蓝牙与u w b 和z i g b e e 的比较川 u w b 能实现多模式8 0 2 1 l a b g 操作,功耗低,且有内置天线差异处理。它 主要应用在小范围、高分辨率、能够穿透墙壁、地面和身体的雷达和图像系统中。 除此之外,这种新技术适用于对速率要求非常高( 大于1 0 0 t b s ) 的l , 州n s 或p a n s 。 相比之下蓝牙的速率比它慢,u w b 更适合传输视频数据。u w b 吸引了众多开发商, 并表现出极大的兴趣,但由于技术刚开始起步,对于u w b 的市场前景,许多人士 持观望态度。 而z g b e e 与蓝牙一样是主要应用在短距离范围之内的各种电子设备之间, 但它并不要求数率很高。z g b e e 可以晓是蓝牙的同族兄弟,它使用2 4g h z 波 段,采用跳频技术。与蓝牙相比,z i g b e e 更简单、速率更慢、功率及费用也更 低。它的基本速率是2 5 0 k b s ,当降低到2 8 k b s 时,传输范围可扩大到1 3 4 m , 并获得更高的可靠性。 总结:通过比较分析可以看出,各种标准部是根据不同的使用场合,不同的 用户需求而制定的。有的是为了增加带宽和传输距离,有的则是考虑移动性和经 济性,局部最优不等于全局最优。因此,用户应视实际需求选择自己的标准。 1 4论文的内容及意义 由于蓝牙芯片出厂时已烧入底层硬件中的无线跳频、基带和链路管理层侨议, 这三层只要了解其功能特性与中间层核心协议的接口即可。本论文的重点放在中 间层核心仂议逻辑链路控制和适应胁议l 2 c a p 、服务发现肋、议s d p 以及主机控 制器接 _ _ | h c 在p c 端的开发, 监牙技术的设计初衷就是将台式机或笔记本电脑与掌上电脑、移动电话以及 子种数字信息的外部设备用无线方式连接起来,进而肜成一种个人周围领域的网 络,使得在其范围之内各种信色化的移动便携设备都能实现无缝的资源共事。随 着监牙技术的逐渐成熟与发展,它的触角已经深入到了众多领域,篮牙产品电是 p 山大学颐十学位沦文 层出不穷。在蓝牙技术众多应用中尤其是个人局域网中,其中心是p c 机,它 通常为一个微墩网的主节点,既可作为s e r v e r 端( p t p 、网络接入点、信息家电 等) ,也可作为c l i e n t 端( 打印机等) 。因此,研究蓝牙核心协议以及h c i 接口在 p c 端的开发是非常有意义的。 本文分以下几部分:第一章介绍蓝牙技术的发展状况及应用前景以及与其 他无线技术的比较:第二章完整介绍蓝牙技术的基础内容:第三章分析蓝牙= 主机 控制器接口( h c i ) 以及在p c 端的实现 协议( l 2 c a p ) 以及在p c 端的实现方法 第四章分析监牙逻辑链路控制与适配层 第五章分析蓝牙服务发现协议( s d p ) 以及在p c 端的实现方法:第八章为测试结果及分析:第七章为结束语,总结论 文工作成果并指明存在的不足以及下一步发展的方向。 蓝牙溉述 第二章蓝牙概述 蓝牙技术系统结构 4 1 分为三大部分:底层硬件模块、中间协议层和高层应用。 如图2 一t 所示。 图2l 监矛协议栈 底层硬件包括无线跳频( r f ) 、基带( b b ) 和链路管理( l m ) 。无线跳频 屡通过2 4 g h z 的 s m 频段的微波,实现数据位流的过滤和传输,本层协议主 要定义了蓝牙收发器在此频带l e 常工作所需要满足的条件。基带负责跳频以及蓝 牙数据和信息帧的传输。涟路管理负责连接、建立和拆除链路并进行安令控制。 主机控制接l j 层( h c ) 足蓝牙肌议中软硬件之间的接口+ 它提供了一个唰 州基带、链路管理、状态和控制寄存器等硬件的统一命令接口。 中间协议层包括逻辑链路控制和适应协议( l 2 c a p ) 、服务发现肋、议( s d p ) 、 串口仿真咖议( r f c o m m ) 和电话通信协议( t c s ) ,逻辑链路控制和适应协 议具有完成数据拆装、控制服务质黾和复用协议的功能,是其它各层踟议实现的 基础。服务发现协议层为上层应用程序提供一种机制来发现网络中可用的服务及 山大学顺十学位论文 其特性。串口仿真协议层具有仿真9 针r s 2 3 2 串口的功能。电话通信阱议层提 供蓝牙设备间舌音和数据的呼叫控制指令。 住蓝牙胁议栈的最上面是各种高层应用框架,其中较典型的有拨号网络、耳 机、局域网访问、文件传输等,它们分别对应一种应用模式。各种应用程序可以 通过各自对应的应用模式实现无线通信。 2 1蓝牙底层硬件模块 蓝牙底层硬件模块是蓝牙技术的核心模块,是蓝牙芯片上必不可少的部分。 它包括射频( r f ) 、基带层( b b :b a s eb a n d ) 和链路管理层( l m p :l i n km a n a g e r p r o t o c 0 1 ) 三个部分。 2 1 1 射频( r f ) 层 射频( r f ) 层通过2 4 g h z 无需授权的i s m 频段的微波,实现数据位流的过滤 和传输,本层协议主要定义了蓝牙收发器在此频带正常工作所需要满足的条件。 2 1 2 基带协议( b a s eb a n d ) 监牙的网络拓扑结构如图2 2 所示。它由一个个微微网( p i c o n e t ) 构成。一 个微微网中只有一个蓝牙设备是主设备( m a s t e r ) 可以有7 个从设备( sl a v e ) , 它们是由3 位的m a c 地址区分的。主设备的时钟和跳频序列用于同步同一个微微 网中的从设备。多个独立的非同步的微微网可以肜成分布式网络( s c a t t e f n e t ) 一个微微网中的主,7 从设备可以是另外一个微微网中的主从设备,但是各个微微 网通过使用不同的跳频序列来加以区分, 蓝爿二概述 图2 - 2 组建监牙微微网 基带协 义就是确保各个监牙设备之间的物理射频连接,以形成微微网。蓝牙 的射频系统是一个跳频系统,其任一分组在指定时隙、指定频率h 发送。它使用 查询( i n q u t r y ) 和寻呼( p a g e ) 进程同步不同设备间的发送频率和时钟,可为 基带数据分组提供两种物理连接方式:同步面向连接( s c o ) 和异步非连接( a c l ) , s c o 既能传输语音分组( 采用c v s d 编码) ,1 1 能传输数据分组:而a c l 只能传 输数据分组。所有的语音和数据分组都附有不同级别的前向纠错( f e c ) 或循环 冗余校验( c r c ) 编码,并可进行加密,以保正传输可靠。此外,对于不同的数 据类型部会分配一个特殊的信道,可以传递连接管理信息和控制信息等。 2 1 3 连接管理协议( l m p ) 连接管理胁议负责蓝牙各设备间链路的建立和控制,还用于安全方面的鉴权 和加密,还可以控制无线部分的能龟模式和工作周朗、微微网内的子殴各的连接 :i 犬态。首先,它通过连接的发起、交换、陔实,以进行身份认证和加密等安全措 施;其次它通过设备间协商以确定基带数据分组的大小:此外它还可以控制无线 部分的电源模式和: 作周期,以及微傲网内各设备的连接:i 犬态。 每个蹬备上的链路管理器( l m ) 利用l m p 阱商彼此之r 司的蓝牙空中接口的特 性,其中包括带宽的分配、设备问的协商确定基带数据分组的大小、通过支持适 配协议数据业务所需要的服务级来支持话音通信业务。l m p 利用“竞争一啊应” i 山大学钡七学位论文 的方式对发备进行鉴权,产生、交换、核实链路和加密连接密钥,进行身份认证 和加密等安全措施。在必要时对l m 监控设备的配对和对殴各之间空中接口上的 数据流加密,其中配对是通过产生和存储连接密钥来建立起设备之间的相互信任 关系,为以后的设备鉴权做准备。如果鉴权失败,l m 将切断设备间的链路,以 禁止设备间的任何通信。l m 还支持能量控制,通过交换彼此间的参数信息来协 商低活动性基带运行方式从而控制功耗。 接收端的链路管理器对l m p 消息进行过滤和解释,从而它们不会向上层传 递。因为l m p 消息的优先权大于用户数据,所以如果一个链路管理器需要发送一 条消息,不会被l 2 c a p 任务延迟。 2 2 蓝牙主机控制接口层( h c i ) 在蓝牙底层硬件模块与中间协议层间的消息和数据传递必须通过主机控制 器接口h e 的解释才能进行,也就是说h c 是蓝牙协议中软硬件之间的接口。 它提供了一个调用下层b i b 、l m 、状态和控制寄存器等硬件的统一命令接口。 h c 协议以上的协议实体运行在主机上,而h c 以下的功能由监牙底层模块来 完成,两者间通过传输层进行交互。监牙体系结构图如图23 所示。 图2 3溘牙体系结构图 p c 几或嵌 入式系统 h c i 接口 监牙芯片 2 3 蓝牙中间协议层 中间协议层由逻辑链路控制与适配协泌l 2 c a p ( l o g i c a lll n kc o n t t o a n d a d a p t i o np r o t o c ol ) 、服务发现协议s d p ( s er v i c ed i s c o v e r yp r o t o c ol ) 、串口 蓝爿二溉述 仿真协议( r f c o m m ) 和电话控制协议t c s ( t e l e p h o n yc o n t r o lp r o t o c o l s p e c i f c a t i o n ) 组成。 2 3 1 逻辑链路控制与适配协议( l 2 c a p ) 逻辑链路控制和适配协议( l 2 c a p ) 是基带的上层协议,可以认为它与l m p 并行工作,它们的区别在于当业务数据不经过l m p 时,l 2 c a p 为上层提供服 务。l 2 c a p 向上层提供面向连接和无连接的数据服务,采用多路技术、分割和重 组技术、群提取技术。l 2 c a p 允许高层协议以6 4 k 字节收发数据分组。 2 3 2 服务发现协议( s o p ) 服务发现协议( s d p ) 是一个基于客户服务器结构的协议,是所有用户模式 的基础。使用s d p 可以查询到蓝牙设备信息和服务类型,从而在蓝牙设备间建立 相应的连接。它工作在l 2 c a p 层之上,为上层应用程序提供一种机制来发现可用 的服务及其属性,而服务属性包括服务的类型及该服务所需的机制或协议信息。 2 3 3 电缆替换协议( r f c o m m ) r f c o m m 是一个仿真有线链路的无线数据仿真协议,符合e t s 【标准的t s7 【o 串口仿真协议,它在蓝牙基带上仿真r s 一2 3 2 的控制和数据信号,为使用串行线 传送机制的上层仂议( 如0 b e x ) 提供服务。 2 3 4 电话控制协议( t c s ) 电话控制协议t c s 是一个基于h u 一,i 1 q 9 3 【建议的采用面向比特的胁议,它 定义r 用于蓝牙设备之间建立浯音和数据呼叫的控制信令,并负责处理蓝牙设备 组的移动管理过程。 电话控制| 力议又分为二进制电话控制协议( t c sb n a r v ) 与 t 命令集电话 控制协议( a rc o m m a n d s ) ,_ 二进制电话控制协议是面向比特的协议,定义了蓝 牙设备间建立晤音和数据呼叫的控制倩令,和处理蓝牙t c s 设备群的移动管理进 程。盯命令集电话控制协议则定义了在 t u tv 2 5 0 和e t s 3 0 09 t 6 ( g s m0 7 0 7 ) 的基础上,s g 定义的控制多用户馍式下,移动电话、调制解凋器和i 叮用于传真 业务的a t 命令集。 2 4 蓝牙用户应用框架 蓝牙用户应用框架是位于蓝牙核心肋、议栈之上的软件。蓝牙应用规范定义 了四个通用的应用模型,为实现其他蓝牙应用模型奠定了基础。这四个应用模型 是:通用访问模型、串口仿真模型、服务发现应用模型和通用对象交换模型。图 2 4 是这四个应用模型与其它应用模型的依赖从属关系。它们是由各制造商、独 立软件开发商或其研究机构实现具体功能的应用软件。 图2 4 监牙用户应用框架 2 4 1 通用访问模型( g a p ) 【l “ 通用访问模型( o a p ) 定义了两个蓝牙单元如何发现对寺并建立连接,保征两 个监牙单元,无沦其生产厂商及进行的应用,可以通过监牙交换信息从而发现各 蓝牙单元支持f a 种应用。所有监牙单元部必须至少支持g a p 以保让基本的互操作 性和共存。胜, 2 4 2 服务发现应用模型( s d a p ) 蓝牙概述 服务发现应用模型( s d a p ) 定义如何发现蓝牙单元支持的业务,可以用来搜 索己知的特定业务,也可以用来进行普遍业务浏览搜索。 2 4 3 串口仿真模型( s p p ) 串口仿真模型( s p p ) 定义如何在两个设备之间建立虚拟串行端口,并用蓝牙 将其连接。采用s p p 可在蓝牙单元上仿真基于r s 一2 3 2 控制信令的串行线缆。 2 4 4 通用对象交换模型( g o e p ) 通用对象交换模型( g o e p ) 定义处理对象交换的应用需采用的协议和程序,基 于g o e p 的应用模型( 如文件传输、同步等) 假定链路和信道己经建立如g a p 所述, g o e p 描述从一个蓝牙设备p u s h 数据到另一个蓝牙设备的程序,还规定如何在两 个单元之间p u 儿数据。 监牙用户应用框架中最引人注目的是实例化蓝牙协议子集的应用,即在一个 设备中安装上蓝牙协议栈后,还需要编写应用程序来驱动协l 义栈来完成诸如文件 传输、语音传输以及头戴式耳机通信等功能,s g 只定义了防议栈的中间件协议 和传输叻、议,并没有定义应用协议和应用协议编程接 :_ | 。所以要实现蓝牙无线通 信设想的各种应用方案,还需要增加利用下层协议栈的应用层代码,以便给终端 用户提供结果。由于s g 己经定义了协议栈的各层来支持传统软件,所以那些己 有的应用几乎可以不做任何改动就宜接用于蓝牙通信。 _ e 机控制器接 jh c 第三章主机控制器接口( h c i ) 及实现 3 1h c i 概述 蓝牙主机 其他高层驱动程序 h c i 驱动程序 物理总线( u s b 、p c 卡或其他) 驱动程序 彳下 物理总线 j 与 物理总线( u s b 、p c 卡或其他) 硬件 丁丁 7 h c i 固件 l m 固件 整带控制器 蓝牙硬件 图3lh c i 接口示意图 二e 机控制器接口( h c i ) 提供了一种访问蓝牙硬件能力的通用接口,主要提 盐对基带控制器和涟路管理控制器的命令接口,以及对硬件的状态和控制的访 问。图3 一i 是h c i 接口的示意图。h c 【及运行于h c 之上的协议栈部分称为主机, h c 【以下部分称为主机控制器。 h c i 固件通过访问基带命令、琏路管理器命令、硬件状态寄存器、控制寄存 器以及事件寄存器实现软件对监牙硬件的接口,在主机系统的h c 驱动程序和监 牙硬件h c 【固件之间存在几个层次,这些中间层次和主机控制器传输层提供了在 没有数据描述信息的情况下传输数据的能力。主机h c 【驱动程序在蓝牙硬件卜与 h c i 固件交换数据和命令,主机控制器传输层的驱动程序为h c 两层提供互相交 l 山大学硕七学位论文 换信息的能力。h c 事件用于在事件发生时通知主机。当主机发现某事件已经发 生,它就会分析接收的事件分组以确定发生的是哪个事件。 3 2h c i 软硬件 前面已经提到过,h c 是软硬件的接口。所以这里将h c 划分为硬件和软件 两部分分析。 3 2 1h c i 硬件 主机与主机控制器之f 司共有3 类数据转移的方式:u a r t ,r s 2 3 2 和u s b 。r s 2 3 2 与u a r t 传输层都是利用u a r t 进行串行通信,但是二者应用环境有所不同。 u a r t 应用在蓝牙主机控制器与主机位于同一电路板的情况。虽然u a r t 没有 规范电气特征,但在信号电平兼容的情况下可以实现主机与主机控制器的无缝连 接,简化了硬件电路。r s 2 3 2 应用在主机控制器与主机位于不同的印刷电路板的 情况。r s 2 3 2 规定了详尽的电气特征和链路协议,这有利于r s 2 3 2 信号在远距离 传输情况下处理高的线路误码率:如果使用r s 2 3 2 传输方式,主机与子系统之间 需要完成2 个功能:一是协商波特率、奇偶校验、停i e 位比特数和协议模式:一 是向发送端通知线路错误。u s b 与r s 2 3 2 、u a r t 不同,提供了一种简单的传输方 式,不需要额外的开销来标识话务类型,这种传输方式主要是描述蓝牙数据如何 映射至u s b 端点。 1 3 1 由于它的简易性和通用性,本论文采用了u s b 传输方式。 3 2 2 h c 软件 h c 【软件结构可以分为两大平面结构:控制平面与数据平面。控制平面负责 链路的管理与控制,数据平面负责数据通过链路的传输。从控制平面来看,主机 端的h c 【驱动程序与主机控制器的嵌入式h c i 驱动程序是1 j 完全对称的。丰机端 的h c r 驱动程序一方面通过接口陂h c 【上层的程序悯用,实现对上层应用的承哉: 另一方面实现协议中的h c i 功能集使主机可以向主机控制器发送t t c i 命令,或 接收返同的h c i 事件,主机控制器的嵌入式h c 驱动程序同样完成两个功能: 足实现了协议中的h c i 命令功能集,从而可以接收主目l 端h c 驱动程序发送的命 令,或是向主机返同相应的h c i 书件:二是对肇带和链路管理器进行控制,实现 机控制器接 | h c 物理链路的建立。数据平面的实现功能和方式与控制平面类似,只不过主机端发 送的是数据,而非h c i 命令,而且数据的传送必须在链路建立之后才能进行。 3 3h c i 命令 蓝牙规范定义了h c i 命令l 格式,如图3 2 所示。h c i 命令分组用于主机发 送命令到主机控制器。主机控制器在完成多数命令后发给主机一个命令完成事 件,如果命令的参数有错,或者当前状态不允许执行该命令,主机控制器就在返 回的命令状态事件的状态参数中带上错误码。如果状态参数后有连接句柄或蓝牙 地址之类的参数也要返回,这样主机可以知道错误的命令对应于那一个实体。坦 有少数命令并不产生命令完成事件,这种情况下主机控制器在收到命令开始执行 时发给主机一个命令状态事件当执行完后发给主机一个与这条命令相关的事 件,此事件中的参数的有效性要依据状态参数中的错误原因来判断。命令完成事 件和命令状态事件都有一个h c i 命令分组数,它指出丁当前主机可以发往主机控 制器的命令分组的数目,主机控制器可以将一个或几个命令缓冲,但是必须依照 收到的顺序执行这些命令,主机控制器在前一条命令完成之前可以开始执行新的 命令,所以命令的完成的顺序并不完全等同于它们开始的顺序。 0 p c o d e参数总长 参数0 0 c fo g f 参数t参数z 参数n 一1 参数n 图3 2h c i 命令分组格式 o p c o d e :操作码,占两字节,以唯一确定不同类型的命令:操作码分为两个 字段操作码组字段( o g f :o p c o d eg r o u pf i e 【d ) 和操作吗命令字段( 0 0 f :0 p c o d e c o m m a n df i e i d ) ,0 g f 士操作码高六比持,其余【o 比特为o c f 。蓝牙 力i 议规定 o c f 和0 g f 的范围分圳是0 x 0 0 0 0 - - 0 x 0 3 f f 和0 ) ( 0 0 0 j ( 3 f 。o g f 的o x 3 f 保留用于 厂1 商测试,o x 3 e 保留用于蓝牙际志测试, 参数总k 度表示该指令所带参数的长度( 以字节为单位) ,占一字节,所带参 数的列表取决于各个指令的内容。 ”山大学硕士学垃硷芷 以查询指令为例来看h c i 命令分组的组成格式。查询指令包括o g f 、0 c f 值 以及指令参数有查询接入码( l a p ) 、查询持续时间氏度值( i n q u i r y l e n g t h ) 以及 指令结束前最大响应设备数( n u m r e s p o n s e ) 。其中l a p 占3 个字节,取值范围为 o x 9 e 8 b o o o x 9 e 8 8 3 f , n q uir y l e n g t h 与n u m r e s p o n s e 各占用1 个字节。查询 指令的0 g f 为o x o t ,o c f 为o x 0 0 0 1 ,则操作码( o p c o d e ) 为0 x 0 1 0 4 :取l a p = 0 x 9 e 8 8 3 3 :i n q u i r y l e n g t h = o x o a ,表示持续查询时i 司为1 2 8 秒:n u mr e s p o n s e = o x 0 0 ,表示不限制响应设备个数。参数总的长度为o x 0 5 ,当通过u s b 接口发 送指令时,查询指令的分组类型代码就为o x 0 1 0 4 0 5 3 3 8 b g e o a 0 0 。 h c i 提供各种各样的命令用以访问蓝牙硬件资源。主机控制器传输层提供 h c i 信息的透明交换,这使得主机可以发送h c i 命令、a c l 和s c o 数据到主机控 制器,主机也可以收到主机控制器发送的事件、a c l 和$ c 0 数据。 3 3 1 链路控制命令 链路控制命令允许主控制器到其他蓝牙设备的连接,其o g f 值为o x 0 1 。链 路管理器负责控制如何建立和保持蓝牙微微网和散射网。使用链路控制命令时, 这些命令指示l m 创建和修改与蓝牙远程发备的链路层连接,执行对范围内其他 监牙设备和l m 命令的查向。 3 3 2 链路策略命令 链路策略命令提供了主控制器影响微微网链路管理器消息的方式,其o g f 值 为o x 0 2 。当使用链路策略命令时,这些命令修改l m 的状态,而且能使1 鹾牙远程 设备链路连接发生变化。监牙主机控制器提供策略调整机制来支持多种策略,它 允许用一种蓝牙模型来支持多种不同模型, 3 3 3 主机控制器与基带命令 主机控制器与基带命令提供对蓝牙设备的各种能力的访问和控制,这些参数 提供对篮牙设备的主帆控制器、链路控制器和基带的控制。其0 g f 值为0 j ( 0 3 。 3 3 4 信息参数 肌控制器接口h c i 信息参数是由蓝牙硬件厂商固定的,这些参数给出了蓝牙没备的信息和主机 控制器、链路管理器和基带的功能。主机无法修改这些参数,其0 g f 值为0 x 0 4 。 3 3 5 状态参数 主机控制器修改所有的状态参数,这些参数提供了主机控制器、硅路管理器 和基带的当前状态信息。主机除了复位某些参数外无法修改,其0 g f 值为o x 0 5 。 3 3 6 测试命令 测试命令用于提供测试蓝牙硬件各种的性能,这些命令提供准各各种测试条 件的能力。其o g f 值为0 x 0 6 。 3 4h c i 事件 完成不同h c l 指令花费的时f 司是不同的,必须以事件的形式向主机报告指令 运行的结果。前面曾提到,对于大多数h cl 指令,主机控制器在指令完成时将生 成一个指令完成事件,说明指令分组的执行情况。该事件包含完成的h c 指令的 返回参数。为了使主机能够检测在h c i 传输层的错误,1 生主机发送指令和主机控 制器的响应之f 司必须设定超时时限,其缺省值为【秒。 h c 【事件分组的格式如图33 所示,它由事件类型码( e v e n tc o d e ) 、参数总 氏和参数列表三部分组成。其中事件类型码的大小为l 字节,用于唯一地标识事 件的类型,0 x f e 为监牙l o g o 测试事件,0 x f f 预留制造商凋试时使用。咖议目前 支持的部分事件妇表3l 所示。 o 4 8【2l 63 事件类型码参数总长事件参数0 事件参数l事件参数2 事件参数n l事件参数n 图3 3h c 事件分组格式 表3 一【事件列表 堡竺望竺垡竺 p 山大学硕七学位沧文 n q u ir yc o m p l e t ee v e n t该事件指示查询已经完成 n q u r yr e s u l te v e n t浚事件指示侄当前的查询过程中已经有一个或多 个监牙设各对查向进行了响应 c o n n e r t i o nc o m p l e t ee v e n t 陔事件向连接两端的主机指示新的连接已经建立 c o n n e r t i o nr e q u e s te v e n t 该事件崩于指不匹端歧备正请求建立连接 d i s c o n n e c t i o nc o m p l e t ee v e n t 当一个连接断开时,葭事件发牛 a u t h e n t i c a t i o nc o m p l e t ee v e n t 当指定链接鉴权完成时陔事件发生 r e m o t en a m er e q u e s te v e n t 该事件用于表不还程命名淆求已完成 e n c r y p t i o nc h a n g ee v e n t该事件用十表示对十由c o n n e r t o n h a n d t e 事件参 数指定的链

温馨提示

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

评论

0/150

提交评论