APP下载

蓝牙调试助手的开发与实现

2015-09-28曹慧

现代计算机 2015年34期
关键词:电子设备调用蓝牙

曹慧

(九江职业技术学院,九江 332007)

蓝牙调试助手的开发与实现

曹慧

(九江职业技术学院,九江332007)

0 引言

许多电子系列产品的控制系统都较为封闭,主要是借助于成熟的串口来实现系统内部与外界的数据交换。当系统出现问题时,只能通过系统报警信号来分析错误来源。如何快速地检测和维护系统,并实时地发送信息,是一项亟需解决的事情。随着近年来蓝牙技术的发展和广泛应用为这一问题的解决提供了新的思路。本次设计中我们采用近距离、高抗干扰的蓝牙技术通过手机模拟电子设备的运行对数据进行无线接收和提取,为实现技术的工业化应用奠定了理论性基础。

本次制作的软件名称为“蓝牙调试助手”,为手机端产品。主要通过欢迎界面、首屏界面、验证连接界面以及调试界面实时接收另一台手机模拟电子设备发出的实时电流以及电压。

软件系统分级图如图1所示。

1 蓝牙核心协议

本次实现模拟电子设备连接的蓝牙核心协议为RFCOMM协议。RFCOMM协议提供了基于L2CAP协议的串口仿真,基于ETSI07.10的版本。可支持在两个BT设备之间同时保持高达60路的通信连接。本系统为蓝牙与电子产品提供相同的128位UUID进行验证并建立通讯连接,通过彼此建立的特殊通道,实时信息将被手机端接收,并实时更新出另一台电子设备的实时电流、电压变化。协议栈线分层如图2所示。

图2 协议栈线分层图

2 实现与仿真

2.1系统实现

本系统的软件开发是借助于 Android系统的Eclipse开发工具和Java平台完成的。Java平台由Java虚拟机 (Java Virtual Machine)和Java应用编程接口(Application Programming Interface、简称API)构成,相比于其他语言平台更具健壮性、安全性和可移植性。而Eclipse是一个基于Java的可扩展开发工具,最大的特点是它能接受由Java开发者自己编写的开放源代码插件,是目前国内使用Java开发最多的开发工具,实用性不言而喻。

(1)环境配置

实施平台首先需要在PC机端对环境变量进行配置,配置方案如图3所示。

图3 配置方案截图

(2)软件程序

●程序系统流程图

在通过蓝牙通信时,服务端首先要进行UUID的输入然后搜索蓝牙设备进行连接。其建立连接主要有5个步骤:(1)UUID初始化Init Bluetooth();(2)打开蓝牙 bluetoothAdapter.enable();(3)设备搜索 bluetoothAdapter.startDiscovery();(4)建立通道accept()、获取数据流getInputStream ();(5)断开连接interrupt()sock,Close()。

初始化UUID主要是通过软件本身预带的128位UUID。当确认UUID无误后,进入到下一级搜索界面,这时程序会自动调用enable()方法,打开蓝牙。每次点击该界面下的搜索按钮就会调用startDiscovery()方法,搜索周边所有可见蓝牙设备以及读取搜索到的蓝牙设备地址,依次点击目标蓝牙地址进入次级界面:调试界面。该界面根据上级界面传递的UUID和蓝牙地址,调用accept()方法请求客户机的连接,当客户机响应后,即进行实时数据传送。要断开连接直接调用interrupt()方法断开线程里的通道即可。

程序流程图如下:

图4 系统流程图

●蓝牙接口函数

主要用到了BluetoothServerSocket与BluetoothSocket两个封装类分别调用了accept()、getInputStream()两个主要函数[2],首先建立起通道,然后取得输入流,最后进行读写。

●主控程序片段

以上为程序主要片段,主要调用了BluetoothServer Socket与BluetoothSocket两个封装类里的accept()、getInputStream()两个方法。另外对于获取到的输入流,用封装的downWrite()方法,进行流的读取和发送。通过Android中提供的一种异步回调机制Handler,使用它,我们可以在完成一个很长时间的任务后做出相应的通知,以此来达到界面数据的实时更新。

(3)手机界面截屏

以下图5中集中展示了“蓝牙调试助手”中的欢迎界面、首屏界面、验证连接界面以及调试界面。

图5 欢迎界面、首屏界面、验证连接界面以及调试界面

2.2功能仿真

两终端设备进行连接之后,模拟设备端进行模拟数据发送,服务器端即刻将数据接收并打印在调试界面,通过实时接收来实现客户端设备状态的读取与反馈。通过加载程序使得软件支持后续的升级,可以通过Wi-Fi或者移动网络进行实时软件更新,该更新过程以PC作为服务器,软件端使用PC机的IP地址访问电脑上的Tomcat服务器,并与webapps文件夹下的服务端软件进行校验下载最新版本的软件自动进行安装[3]。为提高软件健壮性,本系统采用了防反编译技术杜绝了软件被窃取的可能性,连接仿真测试如图6所示:

图6 连接仿真测试图

3 结语

随着电子设备技术的不断发展,蓝牙技术与电子设备相结合构建出的实时数据采集,蓝牙无线传输系统将具有性能高、体积小、功耗低、抗干扰能力强、数据传输速度快、安装维护方便适用于移动设备和便携设备等优点。本次所设计的“蓝牙调试助手”,有效的实现了对模拟电子设备的数据采集和短距离内数据的无线传输,对于类似的数据采集系统的设计具有很好的借鉴意义。

[1]Brent A.Miller,chatschik Bisdikian.蓝牙核心技术.北京机械工业出版社,2012.04.

[2]严紫建,刘元安.现代移动通信应用技术丛书.蓝牙技术.北京邮电大学出版社,2009.12.

[3]鲍三泉.如何将蓝牙技术嵌入到终端产品.电子质量,2011.12.

Bluetooth;Bluetooth Debugging Assistant

Development and Implementation of Bluetooth Debugging Assistant

CAO Hui

(Jiujiang Vocational and Technical College,Jiujinag 332007)

1007-1423(2015)34-0060-04

10.3969/j.issn.1007-1423.2015.34.016

曹慧(1981-),女,江苏东台人,工程师,本科,研究生,研究方向为计算机软件技术

2015-11-20

2015-12-01

蓝牙,作为一种短距离通信的无线电技术,被广泛的应用在包括移动电话、PDA、无线耳机、笔记本电脑等众多设备之间进行无线信息交换。随着蓝牙技术的发展与优化越来越多应用开发都将倾向于这种便捷且低功耗的无线传输。但目前市场上有关蓝牙的手机应用软件大多数都停留在手机传输文件为主的功能上,这使得该项技术变得过于单调和贫乏。基于此,就如何将此技术在Android系统开发平台上创建无线蓝牙多元素对接进行研究,并通过仿真实现验证此项研究的可行性。

蓝牙;蓝牙调试助手

Bluetooth,as a radio technology for short distance communication,is widely used in the wireless information exchange between the mobile phone,PDA,wireless headphones,notebook computer,peripherals and other equipment.With the development of Bluetooth technology and optimization more and more application development will tend to the wireless transmission of this convenience and low power consumption.But most of the current market for Bluetooth mobile phone application software are mainly focused on mobile phone file transfer function,which makes the technology becoming too monotonous and poor.Based on this,carries out on how to use this technology in the Android system development platform to create a wireless Bluetooth multi element docking study,and the simulation verifies the feasibility study.

猜你喜欢

电子设备调用蓝牙
有机硅灌封材料对计控电子设备的保护应用
蓝牙音箱的直线之美
某型机载敏感电子设备电磁干扰抑制技术研究
核电项目物项调用管理的应用研究
LabWindows/CVI下基于ActiveX技术的Excel调用
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
探析现代医用电子设备的维修
紧急:蓝牙指尖陀螺自燃!安全隐患频出
基于系统调用的恶意软件检测技术研究