
从协议的重要性上,蓝牙协议体系可以分为4个层次,即核心协议层、串口协议层、电话控制协议层和可选协议层。各个层还包含了各种具体的协议:
(1)核心协议层:逻辑链路控制和适配协议(L2CAP)、基带、链路管理协议(LMP)、服务发现协议(SDP);
(2)串口协议层:串口仿真协议(RFCOMM);
(3)电话控制协议层:电话控制二元协议(TCSBinary)与AT-Command规范;
(4)可选协议层:点到点协议(PPP)、对象交换协议(OBEX)、UDP/TCP/IP协议、无线应用环境(WAE)、无线应用协议(WAP)、红外移动通信(IrMC)、vCard、vCal。
2 蓝牙数据传输系统设计
2.1 蓝牙应用框架
在蓝牙协议体系结构的基础上,蓝牙规范还定义了通用的蓝牙应用框架。应用框架重点选择了标准蓝牙协议中的消息和操作,描述了完整的蓝牙应用操作过程。应用框架的提出大大提高了不同厂家蓝牙产品的互操作性,这给用户带来了便利。在蓝牙通用应用框架中,定义了4个通用框架,它们是实现具体的蓝牙应用的规范和基础。这4个应用框架是:通用访问框架(Generic Access Profile,GAP)、串口仿真框架(Ser ial Port Proflle,SPP)、服务发现应用框架(Service Discovery Application Profile,SDAP)、通用对象交换框架(Generic Object Exc hange Profile,GOEP)。这4个通用框架之间的关系如图2所示。

2.2 系统硬件设计
系统的硬件结构示意图如图3所示。主控制器采用了三星公司的一款S3C2440微处理器,基于ARM920T内核,采用0.18μm工艺制作CMOS宏单元和存储单元,同时采用AMBA(Advanced Microcontroller Bus Architecture)新型总线结构,具有低功耗、精简和出色的全静态设计,所以特别适合对成本和功耗敏感的应用。除此之外,他还特别为各种外设准备了丰富的中断控制能力,包括高达60个中断源(其中,5个定时器,9个UARTs,24个外部中断,1个看门狗定时器,4个DMA,2个ADC,1个LCD,1个电池故障,1个I2C,2个SPI,1个SDI,2个USB,1个NAND,2个Camera和1个AC97音频),可以使用电平/边沿触发模式进行触发的外部中断源,可编程决定的边沿/电平触发极性,这些功能为紧急中断请求提供了快速中断(FIQ)服务。

蓝牙模块采用了CSR公司的CSR8510,它是CSR8000系列的一款,是全面满足蓝牙v3.0标准的系统,并提供对最新蓝牙标准v4.0版本的支持。CSR8000在原CSR7000的架构上增加了蓝牙低功耗射频部分,专门为连接下一代10亿个蓝牙设备而设计的。另外,增加了数字信号处理器(DSP),为高清语音配备的专用数字音频信号处理器,可进行片上音频编码和噪声消除。同时对原蓝牙射频和FM部分进行了优化,使蓝牙射频的输出功率达到了10 dBm,在不需要外接任何PA的情况下,芯片已经可以达到classl的距离,即100~150 m的距离,灵敏度也从原-90 dBm改进到现在的-93 dBm。其FM无需接任何外接天线,仅基于DSP的降噪算法就能使FM接收器实现更好的接收效果。
2.3 系统软件设计
整个蓝牙数据传输系统的软件架构如图4所示,共分为4个大的模块:

(1)GUI模块。采用Qt库实现,完全面向对象设计,界面易扩展,各种功能使用插件的形式完成;主要负责界面各种按钮的消息捕获、处理,完成蓝牙数据传输系统中所有功能窗口的创建、销毁以及管理,当出现软件有错误发生时,向用户返回友好的错误提示。同时,在进行数据传输的时候,可以实时显示当前数据传输的状态信息。
(2)Adapter Layer,软件适配层。主要负责向GUI模块提供底层无关的数据传输API接口,与GUI交换数据信息,以及响应用户在GUI上的操作,控制下层模块进行实际的执行。
(3)SourceControl模块。主要负责通过SDAP(服务发现应用框架)发现SDP和连接其他蓝牙设备;通过GOBEX(通用对象交换框架)中的OBEX规范与其他的蓝牙设备进行信息交换,主要分为PUT和GET操作的控制,以及设备本身的文件操作控制;本模块还可以进行其他蓝牙设备的身份认证和鉴权。
(4)Core Module。主要负责蓝牙设备原始数据的缓存,以及调用蓝牙芯片进行加密数据的编解码,并保证实现蓝牙数据的实时通信。
3 结语
嵌入式移动设备的飞速发展,使得人们进行无线互联互通的愿望越发强烈。蓝牙4.0技术规范的提出,使其在更低功耗,更大覆盖范围,必将成为短距离无线通信的事实标准;相信不久的将来,基于蓝牙的无线应用会越来越多。