新闻中心

EEPW首页 > 电源与新能源 > 设计应用 > 基于Android平台和蓝牙的太阳辐照度采集系统

基于Android平台和蓝牙的太阳辐照度采集系统

作者:刘敏 贺永亮时间:2015-04-29来源:电子产品世界收藏

  1 系统程序流程

本文引用地址:http://www.eepw.com.cn/article/273342.htm

  辐照度采集系统由标准测试,集成环境温度、电池板温度等测试功能,下位机通过模块连接具有接口的移动终端,以利用便携式设备来实时监控和记录系统采集数据。程序执行的流程图如图1所示。

  打开上位机软件,进入到配置界面,首先打开蓝牙,匹配蓝牙模块,然后搜索蓝牙设备并显示搜索到的蓝牙设备名称,点击需要匹配的蓝牙模块名称项目进行匹配,匹配成功即可点击按钮进入到采集数据界面,设置好测试间隔时间之后,按启动按钮进行,按停止按钮结束采集。选上记录复选框,自动保存采集数据结果至设备根文件目录下。

  2 Bluetooth模块匹配连接

  在采集系统中,下位机通过标准测得数据,其蓝牙接口与Android设备蓝牙模块匹配之后,建立连接,进行。蓝牙模块的匹配是的前提,下面简述匹配步骤。

  (1)开启蓝牙

  要使用蓝牙,必须取得蓝牙适配器,我们可以通过BluetoothAdapter的getDefaultAdapter()方法来取得本地蓝牙适配器:

  public BluetoothAdapter bluetooth= BluetoothAdapter.
  getDefaultAdapter();
  然后打开蓝牙:bluetooth.enable();

  (2) 搜索蓝牙模块

  在蓝牙打开之后,需要搜索蓝牙设备,然后才能进行匹配操作。搜索蓝牙设备需要使用BluetootDevice类,可以使用BluetoothAdapter类的getRemoteDevice方法来得到一个指定地址的BluetoothDevice。搜索蓝牙设备的具体流程如图2所示。

  根据图2,获得蓝牙设备需要分别注册搜索完成和发现设备两类广播消息,并调用startDiscovery()方法。每次系统广播事件发生后,系统就会创建对应的BroadcastReceiver实例,并自动触发它的onReceive()方法,onReceive()方法执行完后,BroadcastReceiver的实例就会被销毁。在该BroadcastReceiver实例的onReceive()方法中,我们处理注册的广播消息,将发现的蓝牙设备放在设备列表中进行显示。在点击蓝牙模块匹配按钮之后,调用startDiscovery()方法开始搜索。

  ( 3)蓝牙模块匹配

  在蓝牙设备搜索完成之后,采集系统下位机的蓝牙模块名称和MAC地址显示在蓝牙设备列表中,下面是Android蓝牙与下位机蓝牙模块实现连接的部分代码:

  通过蓝牙设备的MAC地址获取BluetoothDevice对象: device = bluetooth.
  getRemoteDevice(BlueToothAddress);
  BluetoothDevice对象通过UUID号创建一个Socket连:socket =
  device.createRfcommSocketToServiceRecord(UUID.
  fromString("00001101-0000-1000-8000-00805F9B34FB"));
  连接远程蓝牙适配器:socket.connect();

  至此,蓝牙模块匹配连接完成,将匹配的结果显示在蓝牙匹配信息列表中。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭