基于单片机控制的蓝牙无线通信系统.docx

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于单片机控制的蓝牙数据传输系统的设计

1引言

蓝牙作为一种支持设备短距离通信的无线电技术,可以在众多设备之间进行无线信息交换。蓝牙技术设计一系列软硬件技术、方法和理论,包括:无线通信与网络技术,软件工程及软件可靠性理论,协议测试技术,规范描述语言,嵌入式实时操作系统,跨平台开发和用户界面图形化技术,软硬件接口技术,高集成芯片技术等。由于蓝牙体积小,功耗低,其应用已经不再局限于计算机外设,几乎可以被集成在任何型号的数字设备中,特别是在那些对传输速率要求不高的小型移动设备和便携设备中应用广泛。随着现代化数字技术的发展,我们的生活中,各种设备与计算机之间的无线数据交换已经非常频繁,特别在工业现场控制和数据采集场合中,单片机与计算机的无线通信尤为突出。本文基于这一问题,提出了一种由单片机控制的蓝牙无线通信系统方案,主要是实现了由单片机控制蓝牙系统,与接入蓝牙网络的其他设备,如:移动电话、PDA、以及其他具有蓝牙功能的无线通信设备进行通信。

2蓝牙协议栈概述

2.1蓝牙技术的协议标准和协议规范

蓝牙无线通信的协议标准是由SIG制定的,它规定了蓝牙应用产品应遵循的标准和需要达到的要求。目前颁布的蓝牙规范有1.0、1.1、2.0、2.1等几个版本。

蓝牙技术规范包括信息一和应用框架两个部分。协议规范部分定义了蓝牙的各层通信,应用框架指出了如何采用这些协议实现具体的应用产品。

协议栈由上至下可分为3个部分:传输协议、中介协议和应用协议。传输协议负责蓝牙设备间的相互位置确认,以及建立和管理蓝牙设备间的物理和逻辑链路,包括LMP、L2CAP、HCI;中介协议为高层应用协议或程序在蓝牙逻辑链路上工作提供了支持,为应用层提供了各种标准接口,包括:RFCOMM、SDP、IrDA、PPP、TCP/IP、UDP、TSC和AT指令集等;应用协议是指那些位于蓝牙协议栈之上的应用软件和其中涉及的协议,包括开发驱动和其他蓝牙应用程序等。

2.2蓝牙技术的核心协议

蓝牙技术的核心协议分为四个部分,如下:

(1)基带协议(Baseband)

基带和链路控制层确保网络内部蓝牙设备单元之间由射频构成的物理连接。

(2)连接管理协议(LMP)

负责蓝牙网络内各设备之间连接的建立。

(3)逻辑链路控制和适配协议(L2CAP)

是一个为高层传输层和应用层协议屏蔽基带协议的适配协议,为高层应用传输提供了更加有效和更有利于实现的数据分组格式。

(4)服务发现协议(SDP)

发现服务在蓝牙技术框架中起到了至关重要的作用,它是所有用户模式的基础,是为实现网络中蓝牙设备之间相互查询及访问提供的服务。在蓝牙系统中,客户只有通过服务发现协议,才能获得设备信息、服务信息以及服务特征,从而在设备单元之间建立不同的SDP 层连接。

2.3HCI协议

HCI(Host Controller Interface)协议,即主机控制接口协议,属于蓝牙协议栈的

一部分,是蓝牙规范定义的一个符合标准的接口,它适用于蓝牙通讯模块的硬件部分。此定义描述了位于HCI驱动程序(主机的一部分,也即蓝牙通讯模块的使用者)和主机控制器固件(蓝牙通讯模块本身的一部分)之间的接口。HCI固件通过访问基带命令、硬件状态寄存器、控制寄存器以及时间寄存器实现对蓝牙硬件的HCI指令。

HCI传输层是蓝牙主机与蓝牙主控制器之间的物理接口。目前,蓝牙HCI传输层的物理接口由通用串行总线(USB)、串行端口(RS232)、通用异步收发器(UART)和个人计算机存储卡。

本系统采用UART方式在蓝牙设备和主控制器之间传输数据。UART传输层发目标在于可以在同一PCB电路板上两UART之间的串行接口上使用蓝牙HCI协议。UART 传输层假定UART通信不存在线路故障,图1为UART传输层。

图1UART传输层

UART传输层采用了RS232的接口参数配置,如表1:

波特率厂商指定信息

数据位数8

奇偶校验位无奇偶校验位

终止位1终止位

流控制RTS/CTS

流完成响应时间3ms

表1RS232接口参数配置

其中,RTS/CTS(Request to send/Clear to send)流控制用于防止临时UART缓冲区溢出,当CTS为1时,允许蓝牙主机/主机控制器发送,当CTS为0时,禁止蓝牙主机/主机控制器发送。流完成响应时间则定义了从设置RTS为0到字节流真正结束时的最大时间。

UART信号线采取置空调制解调器模式,RS232信号处于连接状态,即本地TXD连接到远端RXD,本地RTS连接到远端CTS,反之亦然。

UART传输层同时具备纠错功能。如果当蓝牙主机与主机控制器在RS232通信上失去同步,则必须复位。RS232通信失去同步意味着已检测到HCI分组指示器或者HCI分组长度超出了范围。如果蓝牙主机与主机控制器在UART通信失去同步,那么主控制器将发送硬件故障时间,以将同步错误告诉蓝牙主机。主控制器需要从蓝牙主机接受一个RESET指令以执行抚慰,从而实现重新同步。

3系统设计方案

通过对蓝牙协议的研究,采用蓝牙模块与主控制器(单片机)相连接的模式,向单片机写入AT指令,通过UART传输层控制蓝牙模块,从而达到自动连接以及自动收发数据功能,如图2所示。

图2硬件系统设计方案

该方案主要完成以下几个指标:

(1)自动完成处在蓝牙网络中的蓝牙设备的连接。该模式针对事先配对好的两个不同地址,但硬件完全相同的蓝牙-单片机设备。一旦该配对设备进入到可通信距离,可通过事先写进单片机的程序,由单片机控制蓝牙模块,完成配对设备的自动连接。

(2)在单片机上加载外挂FLASH,可将欲传文件或者数据通过单片机下载存储在FLASH 当中,当蓝牙设备连接后进行自动传输,不重复发送。

(3)可搜索在可通信范围内所有同型设备或者其他具备蓝牙功能的通信设备。搜索模式可分为自动搜索和手动搜索。搜索结果以“设备地址+设备类型+信号强度”方式显示,搜索后,可选择具体设备进行连接、通信。

(4)可实现两种接收方式:一种是蓝牙设备与PC机等智能终端相连,由智能终端完成

接收数据的工作;另一种模式是蓝牙设备无需连接任何终端或接收机,直接将接收到的数据保存在外设FLASH当中,这种模式省去了接收终端部分,使设备简洁,便携,可在任意时刻无需通知和触发任何按键,完成自动接收。

系统由两部分构成:一部分是嵌入了蓝牙HCI协议的蓝牙模块,另一部分是由单片机加载FLASH芯片的控制/存储模块。

4系统的硬件构成

系统由单片机通过串口对蓝牙模块进行控制,完成对蓝牙模块的指令配置和数据的收发处理,如图3所示。

相关文档
最新文档