(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf_第1页
(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf_第2页
(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf_第3页
(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf_第4页
(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(通信与信息系统专业论文)windows+ce下基于蓝牙协议的免提应用实现.pdf.pdf 免费下载

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

文档简介

中文摘要 摘要:蓝牙技术是可以同时进行语音和数据传输的短距离无线通信技术,其目的 主要是取代目前的各种电缆连接。蓝牙设备工作在2 4 g h z 的i s m 频段,在v 1 2 版本中,蓝牙基带数据速率为1 m b s ,通信距离一般为1 0 米左右。微型化、低成 本、低功耗、使用方便快捷是蓝牙技术最显著的特点。蓝牙特别兴趣小组( s i g ) 制 定的蓝牙技术规范中规定了蓝牙应用应遵循的标准和需要达到的要求,包括了蓝 牙协议和基本应用框架。其中的免提应用框架实现了蓝牙免提设备与音频网关之 间的无线连接,使得司机在驾车的同时可以方便地拨打和接听电话,避免了由于 操作不便造成的交通事故。 本文通过分析蓝牙核心协议,结合蓝牙免提应用框架,利用c s r 公司的b c 3 系列蓝牙芯片开发了w i n d o w sc e 嵌入式操作系统下基于蓝牙协议的蓝牙免提应 用程序。论文主要包括以下几个方面的内容:首先通过分析蓝牙技术的特点以及 研究现状,总结出本文基于蓝牙核心协议开发蓝牙免提应用程序的意义。然后详 细地分析蓝牙免提框架中涉及到的四个蓝牙核心协议:h c i 、l 2 c a p 、s d p 和 r f c o m m 。各层协议中的帧结构分析、数据以及事件处理流程是开发蓝牙协议的 关键。在蓝牙协议理论分析的基础上,设计蓝牙核心协议的软件开发流程及具体 实现方法,对软件设计中一些重要的数据结构和功能函数作了详细的介绍,完成 了蓝牙核心协议的软件设计,并向应用层提供函数接口。上层利用下层蓝牙协议 栈提供的接口函数并通过蓝牙仿真串口发送a t 控制命令完成了蓝牙免提框架应 用层的软件设计,实现了设备搜索、音量控制、匹配设备、接听来电、拨号等蓝 牙通信功能。 整个应用程序的开发是在w i n d o w sc e5 0 操作系统下的集成开发环境 m i c r o s o f te m b e d d e dv i s u a lc + + 4 0 进行的。对代码进行编辑、编译和调试后,生 成w i n d o w sc e 操作系统下的应用程序,并将该应用程序以及程序中用到的资源文 件移植到车载导航系统的n a n d f l a s h 中。经过反复测试,本文设计的蓝牙协议及应 用程序可以稳定地实现通信双方的语音和数据传输。 本论文用图4 1 幅,表1 7 个,参考文献3 3 篇。 关键词:蓝牙;协议栈:免提框架;w i n d o w sc e 分类号:t n 9 2 9 5 a b s t r a c t 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 so n eo ft h es h o r t - r a n g ew i r e l e s sc o m m u n i c a t i o n t e c h n o l o g i e sw h i c hc a l lt r a n s m i tv o i c ea n dd a t aa tt h es a m et i m e t h em a i np u r p o s eo f b l u e t o o t ht e c h n o l o g yi st or e p l a c et h ec u r r e n tc a b l ec o n n e c t i o n b l u e t o o t hd e v i c ew o r k s i nt h ei s mb a n d ( 2 4 g h z ) i nb l u e t o o t hs p e c i f i c a t i o nv e r s i o n1 2 ,t h eb a s e b a n dd a t a r a t ei s1m b s t h em o s ts i g n i f i c a n tc h a r a c t e r i s t i c so fb l u e t o o t ht e c h n o l o g ya r e m i n i a t u r i z a t i o n , l o wc o s t , l o wp o w e rc o n s u m p t i o na n dc o n v e n i e n c e t h eb l u e t o o t h s p e c i f i c a t i o n sm a d eb yb l u e t o o t hs p e c i a li n t e r e s tg r o u p ( s i g ) p r o v i d et e c h n i c a l s t a n d a r d sa n dr e q u i r e m e n t sw h i c hs h o u l db em e t t h es p e c i f i c a t i o n si n c l u d eb l u e t o o t h p r o t o c o l sa n db l u e t o o t hp r o f i l e s t h eh a n d s - f r e ep r o f i l e ,w h i c hh a sr e a l i z e dt h e w i r e l e s sc o n n e c t i o nb e t w e e nb l u e t o o t hh a n d s f r e eu n i ta n da u d i og a t e w a y , a l l o w s d r i v e r st om a k ea n dr e c e i v ep h o n ec a l l sw h i l ed r i v i n g i tw i l la v o i dt h et r a f f i ca c c i d e n t c a u s e db yi n c o n v e n i e n c e t h i sa r t i c l ea n a l y z e sb l u e t o o t hc o r ep r o t o c o l sa n db l u e t o o t hh a n d s - f r e ep r o f l ea t t h eb e g i n n i n g t h e n ,t h ea r t i c l eh a su s e dc s r sb l u e t o o t hc h i p s ( b e 3 ) t od e v e l o p b l u e t o o t hh a n d s - f r e e a p p l i c a t i o np r o g r a m t h ea p p l i c a t i o np r o g r a m i sb a s e do n b l u e t o o t hp r o t o c o l sd e v e l o p i n gu n d e rw i n d o w sc ee m b e d d e do p e r a t i n gs y s t e m t h e p a p e ri n c l u d e st h ef o l l o w i n gc o n t e n t s :f i r s t l y , i ta n a l y s e st h ec h a r a c t e r i s t i c sa n d d e v e l o p i n gs i t u a t i o no fb l u e t o o t ht e c h n o l o g y a sab a s i sf o rt h i s ,t h ea r t i c l es u m m a r i z e s t h es i g n i f i c a n c eo fd e v e l o p i n gb l u e t o o t hh a n d s f r e ea p p l i c a t i o np r o g r a mb a s e do n b l u e t o o t hp r o t o c o l sd e v e l o p i n g t h e n ,i tm a k e sd e t a i l e da n a l y s i so ft h ef o u rc o r e p r o t o c o l s ( h c i ,l 2 c a p , s d pa n dr f c o m m ) o f b l u e t o o t hi nh a n d s f r e ep r o f i l e t h e a n a l y s i so ff r a m es t r u c t u r e , t h ed a t aa n de v e n tp r o c e s s i n ga t et h ek e y so ft h eb l u e t o o t h p r o t o c o ld e v e l o p i n g o nt h eb a s i so ft h eb l u e t o o t hp r o t o c o lt h e o r y , t h ea r t i c l eh a s d e s i g n e ds o f t w a r ed e v e l o p m e n tp r o c e s sa n dt h ed e t a i l e dm e t h o d so fb l u e t o o t hc o r e p r o t o c o l s t h e ni th a sd e s c r i b e dt h ei m p o r t a n td a t as t r u c t u r e sa n df u n c t i o n so ft h e a p p l i c a t i o np r o g r a mi nd e t a i l t h eu p p e rl a y e rh a sr e a l i z e db l u e t o o t hh a n d s - f r e e a p p l i c a t i o np r o g r a mu s i n gt h ei n t e r f a c ef u n c t i o n sp r o v i d e db yb l u e t o o t hp r o t o c o ls t a c k t h ea p p l i c a t i o np r o g r a mc a l lr e a l i z ec o m m u n i c a t i o nf u n c t i o n so fd e v i c e ss e a r c h i n g , c o n t r o l i n gv o l u m e ,p a i r i n gd e v i c e s ,a n s w e r i n gp h o n e s ,d i a l i n g , e t c t h ea r t i c l eu s e sm i c r o s o f te m b e d d e dv i s u a lc + + 4 0t od e v e l o ph a n d s - f r e e a p p l i c a t i o np r o g r a mu n d e rw i n d o w sc e5 0 t h ea p p l i c a t i o np r o g r a mb a s e do n w i n d o w sc ei sg e n e r a t e da f t e re d i t i n gc o d e ,c o m p i l i n ga n dd e b u g g i n g t h e ni tw i l lb e p l a c e di n t ot h en a n d f l a s ho ft h ev e h i c l en a v i g a t i o ns y s t e mt o g e t h e rw i t hr e s o u r c ef i l e s u s e db yt h ep r o g r a m a f t e rr e p e a t e dt e s t i n g ,t h ep r o t o c o lp r o g r a ma n dt h ea p p l i c a t i o n p r o g r a md e s i g n e db yt h i sa r t i c l ec a nr e a l i z eas t a b l ev o i c ea n dd a t at r a n s m i s s i o n b e t w e e nb l u e t o o t hd e v i c e s k e y w o i m s :b l u e t o o t h ;p r o t o c o ls t a c k ;h a n d s - f r e ep r o f i l e ;w i n d o w sc e c 1 a s s n o :t n 9 2 9 5 v 图 图1 1 蓝牙系统组成2 图2 1 蓝牙协议栈6 图2 2 蓝牙软件层次结构9 图2 3 蓝牙数据收发过程1 0 图2 - 4l 2 c a p 结构框图1 3 图2 5s d p 结构框图1 7 图2 - 6 服务记录表1 8 图2 7s d pp d u 格式2 0 图2 8r f c o m m 参考模型2 l 图2 - 9 蓝牙应用框架2 5 图3 1h f p 协议栈2 6 图3 2 车载导航系统框图2 7 图3 3h c i 软件设计流程2 8 图3 4h c i 层事件处理过程3 0 图3 5l 2 c a p 接收数据处理流程3 3 图3 - 6l 2 c a p 层连接建立过程3 4 图3 7s d p 层连接建立过程3 7 图3 8l 心c o m m 通信流程。3 9 图3 - 9i 强c o m m 层软件设计流程。4 0 图4 _ l 免提应用的通信流程4 3 图4 2 免提软件实体的状态转换流程4 4 图4 3 初始化阶段消息处理流程4 5 图4 _ 4 匹配阶段消息处理流程4 6 图4 5 连接建立流程4 7 图4 6 应答呼叫请求过程。5 0 图4 7 拒绝和终止呼叫过程。5 1 图4 8 拨号过程5 2 图4 9 音量控制过程5 3 图5 1e v c 操作环境5 4 图5 2 程序的运行与下载5 5 图5 3 应用程序存储路径5 6 图5 4 应用程序用到的位图资源5 7 图5 5 蓝牙免提主菜单( 匹配前) 5 7 图5 - 6 蓝牙免提主菜单( 匹配后) 5 7 图5 7 设置p i n 码5 8 图5 8 匹配5 8 图5 - 9 正在拨号5 8 图5 1 0 正在通话5 8 图5 1 l 来电。5 8 图5 1 2 匹配记录。5 9 图5 13 通话记录5 9 表 表2 1h c i 指令分组格式1 0 表2 2h c i 事件分组格式1 1 表2 3h c ia c l 数据分组格式1 1 表2 4h c is c o 数据分组格式1 l 表2 5h c i 命令分组1 2 表2 - 6 用于c o 信道的分组格式1 4 表2 7 用于c l 信道的分组格式1 4 表2 8 信令指令分组格式l5 表2 - 9 指令格式。l5 表2 1 0 配置选项格式一1 5 表2 11m t u 选项格式1 6 表2 一1 2 刷新超时一1 6 表2 1 3 典型服务属性实例1 9 表2 1 4s d pp d u 类型2 0 表2 15r f c o m m 数据帧格式2 2 表2 1 6r f c o m m 帧类型2 3 表2 17r f c o m m 控制命令类型2 4 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研 究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或 撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示了谢意。 学位论文作者签名:绊相湖 签字日期:加。罗年 历1 1 日 学位论文版权使用授权书 本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特 授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索, 并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国 家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:牛相诩 签字日期:w 习年月日 导师签名: 签字吼叫年6 月,6 日 致谢 本论文的工作是在我的导师李兴华老师的悉心指导下完成的,李兴华老师严 谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢三年来 李兴华老师对我的关心和指导。 荆涛教授悉心指导我们完成了实验室的科研工作,并对我的科研工作和论文 都提出了许多的宝贵意见,在学习上和生活上也给予了我很大的关心和帮助,在 此向荆涛老师表示衷心的谢意。 在实验室工作及撰写论文期间,李云强、张耀兰、胡卓等同学对我论文中的 蓝牙协议开发方面的研究工作给予了热情帮助,田明星、夏州、孙静、王芳等同 学在生活和学习方面也给了我很大的支持,在此向他们表达我的感激之情。 另外也感谢我的父母和朋友,他们的理解和支持使我能够在学校专心完成我 的学业。 1 引言 1 1蓝牙技术概述 1 1 1蓝牙技术的产生与发展 随着移动通信技术的迅猛发展,人们对通信设备的要求也越来越高。传统的 电缆传输方式似乎已不能再满足我们的需求,急需一种无线通信技术来替代现有 的电缆传输。蓝牙作为一种低功耗、短距离无线通信技术,其设计意图是取代现 有的个人计算机、打印机、传真机和移动电话等设备接口的有线电缆。1 9 9 8 年5 月,由爱立信、m m 、英特尔、诺基亚和东芝等5 家公司成立了蓝牙特别兴趣小组 ( b l u e t o o t hs p e c i a li n t e r e s tg r o u p ,s i g ) ,负责联合制定蓝牙规范。蓝牙工作在向全 球统一开放的2 4 g h zi s m ( - v 业、科学、医学) 频段,可以同时传输数据和语音, 最多可以有8 个活动的蓝牙设备共享信道带宽,形成微微网【1 ( p i c o n e t ) 。在每一个 微微网中,有1 个为蓝牙主设备,其余7 个为从设备,同时可容许有更多的从设 备以暂停的方式锁定到主设备。多个微微网可以相互重叠,形成散射网【2 1 。 蓝牙技术发展很快,蓝牙技术协议本身也在不断地完善。蓝牙目前暂时共有 v 1 1 、v 1 2 、v 2 0 、v 2 1 等4 个版本,另外还有v 1 0 协议及其之前的一些草案。 v 1 1 协议是最早成熟的协议,对蓝牙早期的产品统一起到很大的作用,v 1 2 是 最成熟的蓝牙应用协议,目前大部分设备还采用这种协议,本论文也以v 1 2 版为 标准,v 2 0 在v 1 2 的基础上增加了e d r ( 扩展数据速率) ,v 2 1 是最新提出的版 本,各芯片厂家都在产品研发测试中,还未进入实用领域,所有的蓝牙协议都向 下兼容,不同版本的协议可以互联互通【3 】【4 】【5 1 。 一项新技术的出现,人们对它的期望值往往很高,短期内无法令人满意,这 是因为任何新技术的发现都需要有一个过程,蓝牙技术也不例外。目前蓝牙应用 存在的最大问题是蓝牙芯片价格偏高;底层协议开发复杂,能够独立开发底层软 件的厂家很少;定义的应用很多,真正实现的较少等等。 从长远来看,蓝牙的技术标准统一,知识产权共享的优势明显,再加上新版 本标准的不断完善,应用的逐渐成熟,蓝牙未来的发展是不可限量的。 1 1 2蓝牙系统结构 蓝牙系统按功能可分成四个部分:无线射频单元( r a d i of r e q u e n c y ,r e ) 、链路 控制单元( l i n kc o n t r o l ,l c ) 、链路管理单元( l i n km a n a g e m e n t ,l m ) 和主机控制器 接口单元( h o s tc o n t r o l l e ri n t e r f a c e ,h c i ) 。除此之外还包括天线和基带控制器、微 处理器、存储器等模块。蓝牙系统的组成框图如图1 1 所示【6 】。 图1 1 蓝牙系统组成 f i g 1 - 1c o m p o s i t i o no f b l u e t o o t hs y s t e m 无线射频单元:无线射频单元主要规定硬件设备的功能,负责射频处理和基 带调制。天线采用微带天线,体积小,重量轻。无线射频单元是一个跳频扩频 ( f r e q u e n c y - h o p p i n gs p r e a ds p e c t r u m ,f h s s ) 的无线系统,工作在无需申请的 2 4 g h zi s m ( - v 业、科学、医疗) 频段,该频段范围为:2 4 0 0 - - 2 4 8 3 5 m h z 。蓝牙技 术使用间隔i m 的7 9 个射频信道,低端和高端的保护频带分别为2 m h z 和3 5 m h z , 即蓝牙射频信道为: f = 2 4 0 2 + km h z ,k - - o ,l ,7 8 蓝牙的跳频速率为1 6 0 0 次s ,每时隙宽度为6 2 5l as 。无线射频采用的调制方 式是高斯滤波的二进制频移键控( g f s k ) ,码元带宽积b t = 0 5 ,调制系数h 位于 0 2 8 0 3 5 之间。蓝牙射频数据速率为1 m b p s ,最小频偏不小于11 5 k h z ,过零误 差小于1 8 码元周期。 根据蓝牙r f 单元发射功率电平大小,蓝牙设备有3 个功率级别。c l a s s l 等级 的蓝牙设备最大发射功率为l o o m w ( 2 0 d a m ) ,通信距离为l o o m ;c l a s s 2 等级的蓝 牙设备最大发射功率为2 5 r o w ( 约4 c l b m ) ,通信距离为l o m ;c l a s s 3 等级的蓝牙设 备最大发射功率为l m w ( 0 d b m ) ,通信距离为l m 7 1 。常用的设备比如蓝牙耳机、蓝 牙鼠标等设备由于通信距离较短,只需c l a s s 2 功率水平。不同功率等级的蓝牙设 备之间通信可能出现无法预料的问题。 链路控制单元:链路控制单元描述了硬件即基带链路控制器的数字信号处理 规范。它包含了3 个集成的芯片:链路控制器、基带处理器和射频接收器,负责 2 处理基带协议和其它一些低层常规协议,执行建立物理链路、差错控制、验证和 加密等功能。基带提供两种物理连接方式:同步面向连接链路( s c o ) 和异步无连接 链路( a c l ) 【8 1 。s c o 链路属于电路交换,主要携带话音信息;a c l 提供与任何从节 点进行异步或同步数据交换的机制。 链路管理单元:l m 主要负责基带链路的建立和硬件配置。它的软件模块设计 了链路的数据设置、鉴权、链路硬件配置和其它一些协议。l m 能够发现其它蓝牙 设备的l m ,并通过链路管理协议( l m p ) 建立通信联系。l m 提供的服务项目包括: 发送和接收数据、设备号请求( l m 能够有效地查询和报告名称或者长度最大可达 1 6 位的设备i d ) 、链路地址查询、建立连接、验证、协商并建立连接方式、确定分 组类型、设置保持方式及休眠方式。 主机控制器接口单元:h c i 是蓝牙主机主机控制器应用模式中蓝牙模块 和主机间的软硬件接口,它提供了蓝牙协议栈与基带与链路控制器、链路管理器、 状态寄存器等硬件功能接口、指令分组格式( 包括响应事件分组格式) 以及进行数据 通信的数据分组格式。 1 2 蓝牙技术特点 蓝牙的实质是建立通用的低功耗、低成本无线空中接口及其控制软件的公开 标准,使通信和计算机进一步结合,使不同厂家生产的便携式设备在没有电线或 电缆相互连接的情况下,能在近距离范围具有互用、互相操作的性能。它旨在推 动和扩大无线通信的应用范围,使网络中各种数据和语音设备能互连互通,实现 个人区域内快速灵活的数据和语音通信【9 】。蓝牙技术的特点可归纳如下: 1 蓝牙模块体积小、功耗低。可以方便地嵌入到各种设备中。同时由于蓝牙 通信距离较短( 一般为1 0 米) ,因此功率消耗很低。 2 可同时传输语音和数据。蓝牙采用电路交换和分组交换相结合的交换技 术,可以支持异步数据信道、三路语音信道以及异步数据与同步语音数据同时传 输的信道。 3 可以建立临时性的对等连接。根据蓝牙设备在网络中的角色可分为主设备 和从设备,几个蓝牙设备可连接成为一个微微网。 4 抗干扰能力强。蓝牙系统采用g f s k 调制,同时采用快跳频和短包技术, 抗信号衰落性能很好,还可以减少同频干扰,保证传输的可靠性。 5 开放的接口标准。s i g 制定的蓝牙通信规范完全公开。 6 全球范围适用。蓝牙工作在2 4 g h z 的i s m 频段,使用该频段无需向各国 的无线电资源管理部门申请许可证。 3 1 3蓝牙技术的研究现状 随着蓝牙标准的不断成熟,各生产和科研单位、高等院校以及政府主管部门 都纷纷组织起来,对蓝牙技术的发展动态进行了跟踪和蓝牙产品的开发。 蓝牙技术的研究和开发主要集中在两部分,一部分是蓝牙芯片的开发。目前, 蓝牙芯片主要有蓝牙芯片组和蓝牙模块两种形式:蓝牙芯片组通常包含蓝牙射频 单元、蓝牙带控制器及存固件的闪存三块独立的芯片;蓝牙模块就是将射频单元 和蓝牙基带控制器及一些外围器件封装到一块芯片中。另一部分是蓝牙协议和应 用的开发。目前大部分生产厂家都在利用底层的协议栈做应用开发,开发人员不 需要了解详细的蓝牙技术,进行蓝牙软、硬件开发时只需提出自身产品要求的电 路接口、数据格式、通讯对象即可,这样可以节省技术投入成本,缩短产品上市 时间。而真正做协议开发的厂家较少,协议栈开发难度很大,一般都是以开发包 的形式进行出售,而且价格比较昂贵。 1 4课题来源及研究意义 本课题是在g p s 车载导航技术研究的基础上展开的。g p s 车载导航技术研究 是北京交通大学现代通信网实验室的研究项目。g p s 车载导航技术的作用是使车 载设备能够完成路径导航、提供实时路况数据、匹配地图等功能。本课题研究的 蓝牙免提应用框架是将免提功能集成到g p s 车载导航设备中,使该设备同时具有 导航与蓝牙免提功能。 蓝牙免提框架一般应用于车载设备当中,它的作用是使司机在驾车的同时可 以方便地拨打、接听电话。蓝牙免提应用框架定义了蓝牙免提设备的协议堆栈和 实现要求,免提设备可以和音频网关实现拨打与接听电话的功能。其中音频网关 一般为蓝牙手机,作为音频的输入输出设备,免提设备作为遥控音频网关的设备。 目前国内蓝牙技术的开发主要是基于应用层的软件开发,这种开发屏蔽了底 层的协议结构,即不考虑底层蓝牙模块的内部通信流程,仅仅通过调用接口函数 来完成应用程序的开发。这种意义上的蓝牙开发同一般的软件开发已经没有什么 不同了,但却有一个很大的缺点就是成本非常高。蓝牙芯片的价格且不考虑,一 套完整的底层协议栈可以卖到几万元人民币,而且有很好的加密封装机制,让你 即使花了钱也买不到真正的核心技术。 本课题通过借鉴以往的蓝牙协议研究成果,在蓝牙协议v 1 2 的基础上,基于 英国c s r ( c a m b r i d g es i l i c o nr a d i o ) 公司的蓝牙芯片b l u e e o r e 3 e x t e r n a l 提供的底层 协议接口开发了蓝牙中间层协议,并完成了蓝牙免提框架的软件实现。最后将免 4 提程序以应用软件的形式嵌入到g p s 车载导航仪当中。 1 5 论文结构安排 本论文共分为六章,具体安排如下: 第一章简述蓝牙技术的概况、课题的研究背景及研究意义,介绍了本文的结 构安排。 第二章简要概述了蓝牙协议栈的体系结构及功能,详细分析了蓝牙免提框架 应用中所涉及到的核心协议h c i 、l 2 c a p 、s d p 、r f c o m m 的数据分组形式、帧 结构、数据以及事件处理流程等技术,为下文的蓝牙核心协议开发奠定理论基础。 第三章是蓝牙免提框架的核心协议软件设计。文章首先简要介绍了蓝牙免提 框架的协议栈及硬件结构,然后重点描述了蓝牙核心协议h c i 、l 2 c a p 、s d p 、 r f c o m m 的软件设计流程及具体的实现方法,并对软件设计中一些重要的数据结 构和功能函数作了详细的介绍。 第四章是蓝牙免提框架的应用层软件设计。文章首先给出了整个蓝牙免提系 统的工作流程,在详细分析了应用层软件设计流程的基础上,分四个阶段对免提 应用程序的初始化、匹配、建立连接及a t 命令响应过程进行了软件设计,实现了 蓝牙免提应用的拨号、接听电话、拒绝和终止电话请求、音量调节等功能。 第五章主要介绍了蓝牙免提框架应用程序的实现及结果分析。应用程序的开 发环境是w i n d o w sc e5 0 操作系统下的集成开发环境m i c r o s o f te m b e d d e dv i s u a l c + + 4 0 ( e v c ) ,论文这部分主要对e v c 开发环境及程序实现过程中用到的类进行 介绍,并展示和分析程序运行的结果。 第六章总结全文。 5 2 蓝牙技术体系结构 蓝牙特别兴趣小组负责制定蓝牙技术标准,该标准规定了蓝牙应用应遵循的 标准和需要达到的要求,包括两部分:一是核心协议,规定蓝牙从无线层到最高 应用层的具体要求和内容;二是应用框架( p r o f i l e ) ,规定某一具体应用在每个协议 层次使用的具体功能和过程。 2 1蓝牙协议栈 蓝牙协议规范的目的是允许遵循规范的应用进行互操作。本地设备和远端设 备上的对应应用程序必须运行在相同的协议栈上。不同的应用运行于不同的协议 栈。并不是所有的应用程序都使用全部的协议,应用程序一般只使用协议栈中的 某些部分。然而所有的应用都要用到蓝牙技术规范中的数据链路层和物理层。完 整的蓝牙协议栈f l o 】的体系结构如图2 1 所示: 服务fi 电话fa t 指fi 对象交换fi ! 竺竺! 发现ii 控制;i 令集i 协议1 p 协议li 协议i 1 。厂一 点对点协议 音频视频控i l 音频视频分 制 输协议ll 发传输协议 串口仿真协议i 网络封装协议 逻辑链路控制与适配协议 主机控制器接口 链路管理协议 语音 基带与链路控制 射频 图2 - 1 蓝牙协议栈 f i g 2 1b l u e t o o t hp r o t o c o ls t a c k 如图2 1 所示,整个蓝牙协议栈包括了蓝牙专用协议( 如l m p 、l 2 c a p ) 和非蓝 牙专用协议( 如对象交换协议o b e x 和用户数据报协议u d p ) 。设计协议和协议栈 的主要原则是尽可能利用现有的各种高层协议,保证现有协议与蓝牙技术的融合 以及各种应用之间的互通性,充分利用兼容蓝牙技术规范的软硬件系统。蓝牙技 术规范的开放性保证了设备制造商可自由地选用其它专利协议或常用的公共协 6 议,以便在蓝牙技术规范的基础上开发新的应用。 蓝牙协议栈有两种不同的分类方式。一是按逻辑功能由下至上可以分为传输 协议层、中间协议层和应用协议层三大部分【i l 】;二是按协议类型可分为蓝牙核心 协议( 基带、l m p 、l 2 c a p 、s d p ) 、串1 3 仿真协议( r f c o m m ) 、电话控制协议( t c s 二进制、a t 命令集) 和可选协议( p p p 、u d p t c p i p 、o e b x 、w a p 、v c a r d 、v c a l 、 i r m c 、w a e ) 。除此之外还定义了主机控制器接口( h c d 。上述两种方式中第一种 分类方式系统性较强,下面给予详细介绍。 2 1 1传输层协议 蓝牙协议栈中的传输层是所有蓝牙应用模型和产品的通用部分,通常被集成 在蓝牙芯片中,向所有蓝牙产品的开发者提供底层的硬件支持。 传输协议包括射频( b l u e t o o t hr a d i o ) 、基带与链路控制协议( b a s e b a n d & l i n k c o n t r o l l e rp r o t o c 0 1 ) 、链路管理协议( l i n km a n a g e rp r o t o c o l ,l m p ) 。传输协议负责 蓝牙设备间相互确认对方的位置,建立和管理蓝牙设备间的物理和逻辑链路。 1 射频和基带特性 射频部分是通信系统的空中接口,蓝牙射频规范规定了蓝牙射频频段、调制 方式、跳频频率、发射功率、接收机灵敏度等参数。基带就是蓝牙的物理层,负 责管理物理信道和链路中的跳频选择、地址编码、链路类型确定、信道编码、收 发规则确定、信道控制、音频规范和安全设置等功能。 2 链路管理协议 链路管理协议( l m p ) 是蓝牙协议栈中一个重要组成部分。它主要完成三个方面 的工作:处理、控制和协商发送数据所使用的分组的大小;管理蓝牙单元的功率 模式和在微微网中的状态;处理链路和密钥的生成、交换与控制。 2 1 2 中间层协议 中间层协议为高层应用协议或程序在蓝牙逻辑链路上工作提供了必要的支 持,为应用层提供了各种不同的标准接口。这部分协议包括逻辑链路控制与适配 协议( l o g i c a ll i n kc o n t r o la n da d a p t a t i o np r o t o c o l ,l 2 c a p ) 、服务发现协议( s e r v i c e d i s c o v e r yp r o t o c o l ,s d p ) 、串口仿真协议( r f c o m m ) 和电话控制协议( t c s ) 。 1 逻辑链路控制与适配协议( l 2 c a p ) l 2 c a p 属于数据链路层的一部分,位于基带协议之上。它与l m p 并行工作, 它和l m p 的区别在于当业务数据不经过l m p 时,l 2 c a p 为上层提供服务。l 2 c a p 7 协议主要为上层协议提供数据服务,它通过控制逻辑链路来支持多种上层协议的 复用,提供分段和重组操作,并且提供对组的管理功能。l 2 c a p 允许高层协议以 6 4 k 字节收发数据分组。虽然基带协议提供了s c o 和a c l 两种连接类型,但 l 2 c a p 仅支持a c l 数据包。l 2 c a p 是利用基带的a r q 机制来确保连接的可靠性。 l m p 与l 2 c a p 都是在基带之上的两个链路级协议,但链路管理信息比用户信息具 有更高的优先级。 2 服务发现协议( s d p ) s d p 的功能是为实现蓝牙设备之间相互查询及访问对方提供的服务。它是一 个基于客户服务器结构的协议,由两大部分组成:服务信息记录数据库和发现浏 览服务功能。s d p 为客户应用提供了一种发现服务器所提供的服务和服务属性的 机制,从而在蓝牙设备间建立相应的连接。 3 串口仿真协议( r f c o m m ) r f c o m m 协议层位于l 2 c a p 协议层和应用层协议之间。它基于欧洲电信标 准化协会的t s 0 7 1 0 标准制定,提供基于l 2 c a p 协议层之上的模拟串口,仿真 r s 2 3 2 的控制和数据信号。r f c o m m 使得基于串口的传统应用仅作少量修改或者 不作任何修改就可以直接在该层上运行。 4 电话控制协议( t c s ) 该协议包括t c sb i n 、a t 指令集和音频。t c sb i n 是基于i t u t r 的q 9 3 1 标准制定的,定义了蓝牙设备间建立语音和数据呼叫的控制信令以及处理蓝牙 t c s 设备群的移动管理进程,用于支持电话功能。a t 指令集基于i t u - t v 2 5 0 和 e t s 3 0 09 1 6 标准,用于实现多用户模式下对移动电话和调制解调器的控制,具体 的a t 指令将在第3 章中介绍。蓝牙直接在基带上处理音频信号,采用s c o 链路 传输语音,可以实现头戴式耳机和蓝牙免提等应用。 2 1 3应用层协议 应用协议位于蓝牙协议栈之上。应用协议中的p p p 是点到点协议,它主要用 于l a n 接入、拨号网络及传真等应用规范;u d p t c p i p 协议定义了因特网中与 网络相关的通信及其他类型计算机设备和外围设备之间的通信;o b e x 是对象交 换协议,它支持设备间的数据交换;w a p 是无线应用协议,它的目的是要在数字 蜂窝电话和其它小型无线设备上实现因特网业务;电子名片交换格式v c a r d 和电 子日历及日程交换格式v c a l 都是开放性规范,它们都没有定义传输机制,而只是 定义了数据传输模式,s i g 采用v c a r d v c a l 规范是为了进一步促进个人信息交换; k m c 是红外移动设备通讯规范,用于无线红外设备的信息传输。w a e 是无线应用 8 环境,它提供用于w a p 电话和个人数字助理p d a 所需的各种应用软件。 蓝牙采用或共享这些已有的协议去实现与连接因特网的设备的通信,既可提 高效率,又可在一定程度上保证蓝牙技术和其它通信技术的互操作性。 2 2主机控制器接口h c i 2 2 1h c i 概述 习惯上,将蓝牙模块内部嵌入的微处理器称为主机控制器,将高层传输协议 和用户应用程序在写入的个人计算机或嵌入的单片机、d s p 等上运行称为主机。 主机控制器接口h c i 就是蓝牙模块和主机间的软硬件接口,它提供访问蓝牙硬件 的能力f 1 5 1 ,如图2 2 所示。h c i 固件通过访问基带命令、链路管理器命令、硬件状 态寄存器、控制寄存器以及事件寄存器实现对蓝牙硬件的h c i 命令。 蓝牙主机 高层应用程序 h c i 驱动程序 物理总线驱动( u s b 。串口等) 广 物理总线 弓 物理总线( u s b ,串口等) 硬件 彳f jl , h c i 固件 了e 链路管理器固件 e3 基带控制器 蓝牙控制器 图2 - 2 蓝牙软件层次结构 f i g 2 - 2b l u e t o o t hs o t h v a r eh i e r a r c h y 当主机和主机控制器通信时,h c i 层以上的协议在主机上运行,h c i 层以下 9 的协议由蓝牙主机控制器的硬件实现,它们之间通过h c i 传输层进行通信。主机 和主机控制器中的h c i 使用相同的接口标准。蓝牙设备通过h c i 传输层进行数据 收发的过程【1 4 l 如图2 3 所示。 主机l 用户数据 主机2 蓝牙主机 其他高层驱动 程序

温馨提示

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

最新文档

评论

0/150

提交评论