蓝牙经典课件第7章_蓝牙开发与测试技术

上传人:bin****86 文档编号:55138685 上传时间:2018-09-25 格式:PPT 页数:142 大小:1.93MB
返回 下载 相关 举报
蓝牙经典课件第7章_蓝牙开发与测试技术_第1页
第1页 / 共142页
蓝牙经典课件第7章_蓝牙开发与测试技术_第2页
第2页 / 共142页
蓝牙经典课件第7章_蓝牙开发与测试技术_第3页
第3页 / 共142页
蓝牙经典课件第7章_蓝牙开发与测试技术_第4页
第4页 / 共142页
蓝牙经典课件第7章_蓝牙开发与测试技术_第5页
第5页 / 共142页
点击查看更多>>
资源描述

《蓝牙经典课件第7章_蓝牙开发与测试技术》由会员分享,可在线阅读,更多相关《蓝牙经典课件第7章_蓝牙开发与测试技术(142页珍藏版)》请在金锄头文库上搜索。

1、普通高等教育规划教材 蓝牙技术基础,第7章 蓝牙开发与测试技术 本章介绍蓝牙开发与测试知识,本章内容,7.1 概述 7.1.1 什么是蓝牙开发 7.1.2 蓝牙开发过程 7.2 蓝牙开发 7.2.1 蓝牙硬件模块开发 7.2.2 中间协议层开发 7.2.3 蓝牙剖面开发 7.3 蓝牙协议测试 7.3.1 基带规范测试 7.3.2 测试接口 7.3.3 协议认证与实现 7.4 蓝牙开发中的几个问题 7.4.1 蓝牙产品特征 7.4.2 与蓝牙相关的技术 7.4.3 蓝牙发展趋势 7.5 小结,序言,蓝牙开发与测试技术重点研究的是如何将蓝牙作为通信模块集成到自己的产品中。不同的研究部门和不同的生产

2、厂家,有着不同的开发内涵,有的只需着力于应用部分,有的需要从底层到高层的全面开发。,7.1 概述,没有蓝牙开发,就不会有蓝牙产品;没有蓝牙测试,就不会有合适的蓝牙产品。研制符合蓝牙规范和蓝牙协议产品的过程,称为蓝牙认证和测试。,7.1.1 什么是蓝牙开发,蓝牙开发由硬件开发和软件开发两部分组成,如图7-1所示。硬件组成包括蓝牙协议栈的下三层,即无线收发、基带和链路管理层。软件组成包括蓝牙协议栈的上层:有L2CAP、RFCOMM、SDP、TCS和一些蓝牙应用层,上层由中间协议层和应用层构成。,图7-1 蓝牙开发,7.1.2 蓝牙开发过程(1),蓝牙开发过程步骤如下: (1)开发之前要先熟悉相关的

3、蓝牙规范和蓝牙协议,因为它们是进行认证的依据。需要说明的是,蓝牙规范的核心部分内容相当丰富,没有必要全部了解,但对于和自己研发产品相关的蓝牙协议和规范,必须认真研读。 (2)仔细研究开发的产品是否符合协议的要求,并调研同类产品的现状,查看每天网上公布的新产品,蓝牙网站有“通过认证的产品”专栏。,7.1.2 蓝牙开发过程(2),(3)制定开发规范,建立开发平台,创造开发环境,造好开发工具。由于产品开发涉及的范围广泛,需要事先规范,在时间上留有余地,在开发过程中对不确定因素要有应对措施。开发工具包括一个蓝牙硬件接口部件和一个软件部件,每一对节点将建立起一个链路。节点数量的多少由应用的复杂程度决定,

4、应用越广,节点数目越多。硬件部件有PC卡、USB接口、UART、开发工具等,按需要选用,也可以自己开发硬件部件。,7.1.2 蓝牙开发过程(3),(4)进一步考虑具体的技术细节。如硬件选择时需考虑开发后是用于计算机系统,还是用于嵌入式系统。若是前者则选用PC卡、USB等已够用,相应的开发工具也简单;若是后者,需选用较为复杂的开发工具。其次考虑的问题是应用中有无语音要求?有一些开发系统没有语音接口,对于需要语音应用功能的,就不能选择这一类开发系统。在数据传输的场合还要考虑数据传输速率,例如不足100k bit / s的传输,可选用UART连接器;而全速率的数据应用,需用USB接口。,7.1.2

5、蓝牙开发过程(4),(5)确定协议栈的开发层次,蓝牙模块的简单复杂程度,决定了提供接口的多少。最简单的模块只带一个基带控制器,仅提供无线接口。在决定使用一个协议栈以前,需要细心察看协议栈的提供能力,因为并不是所有的协议栈都具备规范中给出的所有功能。 (6)关于协议栈的硬、软件实现问题,最好能选用同一厂家的产品,这样兼容性能较好。,7.1.2 蓝牙开发过程(5),蓝牙认证和蓝牙测试是一种保护机制,它能保证蓝牙产品具备互操作性。不同的开发人员尽管对蓝牙协议的理解不同,开发的产品可能存在一些差别,但通过认证与测试,就能实现互操作,因此无论硬件还是软件,设计时都需要留出接口。,7.2 蓝牙开发,蓝牙开

6、发包括三方面内容:硬件模块开发、中间协议层开发、蓝牙剖面开发。蓝牙开发的主要目的,是为社会提供更多的符合规范的蓝牙产品。,7.2.1 蓝牙硬件模块开发(1),蓝牙硬件层次划分成无线层、基带层和链路管理层。每一层次有不同的职责和分工: 无线层用于完成频率合成、位(bit)到符号的转换、符号的收发; 基带层用于完成斑马鱼解码、加密与解密、分组处理和跳频频率的生成与选择; 链路管理层用于完成连接并管理链路,7.2.1 蓝牙硬件模块开发(2),蓝牙设计的基本要求是: 尽可能减少硬件模块的体积; 尽量小的功耗; 最小的生产成本; 在ISM频段上安全使用。,1单芯片蓝牙模块(1),把不同功能的模块集中到一

7、个芯片上的技术,称之为片上系统技术。片上系统通常包括蓝牙基带核心、微处理器、HCI、语言处理、测试等模块。片上系统既可以集成一片,也可以使用各模块组装实现,一个集成了的单芯片片上系统如图7-2所示。,图7-2 单芯片片上系统,2蓝牙基带核心模块(1),蓝牙基带核心模块的结构如图7-3所示,它由3部分组成: (1)片外接口部分:与模块外界完成信息交流,主要有三大接口: 比特流接口,分为输出Tx比特流、输入Rx比特流; 无线控制接口,用于无线信号传输; 可编程接口,用于与计算机三总线连接。,2蓝牙基带核心模块(2),(2)分组头部分:实现信息的处理,处理内容有: 对收到的位(dit)流定时提取或恢

8、复其符号; FEC处理; 白化和解析处理; CRC校验; 净荷处理; 加密和解密处理,2蓝牙基带核心模块(3),(3)数据路径部分:在数据传送路途上按协议要求实现对信息的整理或加工。它们包括: 共享RAM仲裁; 时钟发生器; 跳频频率发生器; 可编程序列发生器; 链路管理序列发生器。 蓝牙基带核心模块能实现蓝牙基带所有的实时处理功能,蓝牙规范的处理过程已制成固件,置于Flash中,运行时装入RAM。,图7-3 蓝牙基带核心模块,3无线收发模块,无线收发模块由锁相环PLL、发生器和接收器三部分组成,如图7-4所示。锁相环可由发送和接收共享。数据收发特征如下: 数据发送和接收在不同时刻进行; 分组

9、类型不同,发送、接收时刻不同; 在给定时间内,允许PLL在不同载波频率跳变。,图7-4 无线收发模块 (a) 无线收发 (6) 接收器发送器内有一个认可VCO调制的倍频器,在0 d Bm发送电平时不提供RSSI电路。接收器内含一个低噪声变换的混频器、一个中频放大器、一个高放大倍数的放大器和一个鉴频器,使用外差接收方式。,4其它功能模块(1),(1)存储器 存储器主要有Flash和SRAM,Flash Memory 中存放着基带层、链路管理层的所有软件程序,形成了物理模块与高层的通信通道。SRAM起Cache功能,运行时逐段接纳来自Flash的程序。,4其它功能模块(2),(2)CPU CPU负

10、责处理蓝牙比特流调制或解调后的所有位,同时还统一指挥协调收发器、语音编 / 解码的工作。可供选择的为处理器有8051、ARM处理器等,例如基于ARM的微处理器ARM7TDMI就是一片32位精简指令集计算型(RISC)微处理器,它有两个支持指令集供用户选择:一个是ARM32位操作码;另一个是压缩成16位的子集,执行时先解压再执行。,4其它功能模块(3),(3)USB接口和UART接口 USB和UART提供前往HCI传输层的物理接口。 (4)语音编码与解码CODEC 语音编码包括D/A转换、A/D转换、数字接口、编码模块和2个先入先出指令队列(FIFO),FIFO用于存放编码后的语音数据。 (5)

11、认证和测试模块 为了便于开发、认证和测试,有认证和测试模块提供接口十分方便。,7.2.2 中间协议层开发,蓝牙协议栈中间层由TCS(电话通信协议)、SDP(服务发现协议)、RECOMM(串口仿真协议)、L2CAP(逻辑链路控制和适配协议)等组成。,1. 开发要求(1),由于协议栈是一个用户见不到的软件,那么对中间协议层开发的基本要求是开发一个用户能看到的接口,通过这个接口让用户能使用协议资源,完成配置,实现通信。为了达到这一目的,这个接口的设计有如下一些基本要求:,1. 开发要求(2),(1) 支持不同的硬件平台; 中间协议层既然是以软件的成分出现在计算机系统中,那么在主机设备上运行的这个软件

12、必然是主机运行的一个组成部件,事实上它常以主机栈(Host Stack)的名称出现。由于不具备高级语言程序才有的与计算机类型无关的特征,那么主机栈像汇编程序一样依赖操作系统和硬件资源,不同种类的计算机系统有不同的主机栈,这就要求中间协议层的用户接口必须适应不同品牌的计算机。,1. 开发要求(3),(2)确定目标的用户类型 如果目标不确定,用户模型无法建立,用户接口将无从谈起。 (3)照顾到传统应用,兼顾现有的协议 目前有很多定型的电子产品已经适应了非蓝牙的应用环境,对于这些传统应用,不能一味放弃,放弃了它也就意味着放弃了市场。但是,要把这些非蓝牙的传统应用统一到蓝牙应用环境中来,是极为困难、也

13、是风险很大的一件事,只能要求用户接口兼顾到传统应用和现有的协议。 (4)建立一些优化指标 优化指标主要包括源码数量要最小、可靠性高等等。,2开发过程中的有效措施(1),(1)维护操作系统的独立性 在操作系统和中间协议层之间设计虚拟操作系统接口,使用虚拟接口,能使蓝牙主机栈有更大的适应能力,并且使用和移植都不需要修改主机栈的源码。 主机栈也能直接用在诸如UNIX、Windows等通用操作系统中。主机栈还能移植到象单线程操作系统等一类最基本的操作系统中。,2开发过程中的有效措施(2),(2)保证硬件电路的独立性 为了保证各硬件电路相对独立,有效的做法之一是在中间协议层之下的HCI接口附加串行接口层

14、,以适应串、并行传输数据的需要。 (3)提供应用程序接口API(Application Program Interface) 中间协议层必须提供丰富的API接口,这样对于应用层设计人员来说,无须对蓝牙非常熟悉也能开发基于蓝牙的应用。API的功能性越强,协议栈的移植性能越好,越容易将蓝牙应用嫁接到传统的非蓝牙系统上。,2开发过程中的有效措施(3),(4)在协议栈软件中设置管理模块 有了管理模块,有利于管理和协调协议栈各层次的职能。按照上述开发要求所确定的中间协议层及其接口如图7-5所示。,图7-5蓝牙中间协议层及其接口,3中间协议层的模块组成,中间协议层按功能划分,可以分成必不可少的模块和带有附

15、加功能的模块,前者是实现蓝牙协议必不可少的,后者是为适应不同的应用环境而设置的。即为支持硬件模块、剖面模块和协议管理模块。如表7-1所示。,4应用程序接口API(1),蓝牙协议栈中各层之间的通信和一般协议中的通信过程相同,常常分成4步来完成:请求确认指示响应,4步中的每一步通称为原语,原语的通俗解释就是“步骤”。 以A、B两层的通信为例,当A层要求与B层通信时,首先要发出一个通信请求,这个请求通常被称为请求函数。不同的通信领域内,请求函数的表现形式有所不同。发出的请求函数在内存中将产生一个特定的请求消息,该消息注入了请求函数的输入参数。携带有输入参数信息的请求消息将发往B 层。,4应用程序接口

16、API(2),B层在接到请求消息后,并不会马上通信,还需要进行确认是否是A发出,B层确认过程和A层请求过程相类似 。一旦确认,双方之间的通信便立即开始。 请求和确认过程是API所承接的任务,其通信示意如图7-6所示。,图7-6 A、B层之间的通信,5传输协议SFCOMM及RS232串行接口(1),RFCOMM传输协议提供了一条完整的通信路径,在这条路径上,存在着两种不同的服务:一种为中间协议层的其他协议提供的服务,一种是为了终端用户提供的服务。RFCOMM最终能够为两个不同设备的通信路径设置一个通信段,它仅仅关心的是两个直接连接的设备之间如何接口,例如连接的两端分别是蓝牙模块和有线连接。,RFCOMM模块的功能是在两个蓝牙设备之间建立信息的传递通道,它至少有两个模块组成,一个是会话控制模块,另一个是DLC控制模块。会话控制模块的主要任务是管理蓝牙设备之间的会话。DLC模块的主要职责是建立数据链路连接(DLC),并发送数据。,5传输协议SFCOMM及RS232串行接口(2),RFCOMM接口至少应当具备以下功能: 在一定条件下功能启动; 完成接口两边的电平连接; 正确地实现数据交换; 串行发送或接收数据。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号