• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 電源與新能源 > 設計應用 > 基于Android平臺和藍牙的太陽輻照度采集系統

    基于Android平臺和藍牙的太陽輻照度采集系統

    作者:劉敏 賀永亮 時間:2015-04-29 來源:電子產品世界 收藏

      1 系統程序流程

    本文引用地址:http://www.czjhyjcfj.com/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 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 通海县| 股票| 佛教| 无锡市| 安庆市| 桂阳县| 晴隆县| 民和| 家居| 赤水市| 监利县| 宁国市| 平湖市| 日照市| 沁阳市| 于都县| 天祝| 宁德市| 鄂伦春自治旗| 淮阳县| 沙河市| 达孜县| 蓝田县| 宜君县| SHOW| 高邑县| 广西| 晋州市| 都兰县| 江永县| 尉氏县| 新巴尔虎左旗| 即墨市| 富蕴县| 鄯善县| 宁国市| 安乡县| 平乡县| 克什克腾旗| 托克逊县| 道孚县|