freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計-基于android平臺的心電圖儀設(shè)計-資料下載頁

2025-01-16 22:06本頁面
  

【正文】 ted method stub ()。 } }).create().show()。 26 菜單欄 詳細(xì)設(shè)計 設(shè)計菜單項 XML 配置文件,有連采樣盒,重登陸,記錄心電,新任務(wù),上傳,取報告,回放,退出共 8 項。 menu xmlns:android= item android:id=@+id/connect android:title=連采樣盒 / item android:id=@+id/reLogin android:title=重登陸 / item android:id=@+id/record android:title=記錄心電 / item android:id=@+id/newWork android:title=新任務(wù) / item android:id=@+id/upload android:title=上傳 / item android:id=@+id/get android:title=取報告 / item android:id=@+id/playBack android:title=回放 / item android:id=@+id/exit android:title=退出 / /menu 重寫 Activity 的 onOptionsItemSelected方法, 將菜單配置文件添加到界面中: public boolean onCreateOptionsMenu(Menu menu) { // TODO Autogenerated method stub MenuInflater mi = getMenuInflater()。 (, menu)。 return true。 } 27 數(shù)據(jù)采集設(shè)計 設(shè)置藍(lán)牙通信 使用藍(lán)牙進(jìn)行通信之前,你需要確認(rèn)你的設(shè)備支持藍(lán)牙,啟動藍(lán)牙需要兩個步驟,并且需要 BluetoothAdapter 類。 1. 獲得 BluetoothAdapter 類 任何藍(lán)牙 activity 都需要 BluetoothAdapter 類。使用靜態(tài)方法getDefaultAdapter()獲得一個 BluetoothAdapter 的實例,這代表了設(shè)備本身的藍(lán)牙適配器 (the Bluetooth radio)。整個系統(tǒng)只 有一個藍(lán)牙適配器,你的程序可以通過獲取到 BluetoothAdapter 實例與之交互。如果 getDefaultAdapter()方法返回null 則說明你的設(shè)備不支持藍(lán)牙。 BluetoothAdapter btAdapt = ()。 If(btAdapt == null) { (this, “沒有提供藍(lán)牙設(shè)備 ”, ).show()。 Finish()。 return。 } 2. 啟動藍(lán)牙 接下來,你必須確保用戶啟動了藍(lán)牙。調(diào)用 isEnabled()方法來檢查當(dāng)前藍(lán)牙是否啟動。如果該方法返回 false,那么說明藍(lán)牙沒有啟動。這時需要使用“ACTION_REQUEST_ENABLE”action Intent 作為參數(shù),調(diào)用startActivityForResult()方法來請求啟動藍(lán)牙。這將通過系統(tǒng)設(shè)備來發(fā)出啟動藍(lán)牙的請求 (不會停止你的程序 )。例如: if (!()) { Intent enableBtIntent = new Intent()。 startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT)。 } 發(fā)現(xiàn)藍(lán)牙設(shè)備 發(fā)現(xiàn)藍(lán)牙設(shè)備列表是一連串的掃描過程,可以查詢到本地已啟動的藍(lán)牙設(shè)28 備,然后請求一些信息。已啟動的藍(lán)牙設(shè)備會提供一些信息,比如設(shè)備名稱、 MAC地址、類和互連狀態(tài)。使用這些信息可以和遠(yuǎn)程藍(lán)牙設(shè)備建立一個連接。 1. 查詢配對設(shè)備 在執(zhí)行 device discovery 之前,最好在已配對的設(shè)備列表中查看所要發(fā)現(xiàn)的設(shè)備是否已經(jīng)存在。通過調(diào)用 getBondedDevices()函數(shù)可以獲得代表已經(jīng)配對的設(shè)備的 BluetoothDevice 集合。 例如,你可以查詢所有已經(jīng)配對的設(shè)備,然后通過一個 ArrayAdapter 添加和顯示每個設(shè)備的名字給用戶 : SetBluetoothDevice pairedDevices = ()。 //If there are paired devices if (() 0) { // Loop through paired devices for (BluetoothDevice device : pairedDevices) { //Add the name and address to an array adapter to show in a ListView (() + /n + ())。 } } 2. 發(fā)現(xiàn)設(shè)備 調(diào)用 startDiscovery() 開始設(shè)備發(fā)現(xiàn)的過程,這個過程是異步的,startDiscovery()方法會立即返回一個 boolean 的值表示啟動是否成功。這個發(fā)現(xiàn)過程通常包括大約 12 秒的查詢掃描,之后是在發(fā)現(xiàn)的設(shè)備中查詢其藍(lán)牙名稱。 你的應(yīng)用程序中必須注冊一個 ACTION_FOUND Intent 的 BroadcastReceiver,用于接收發(fā)現(xiàn)一個藍(lán)牙設(shè)備時發(fā)出的信息。對于每一個設(shè)備,系統(tǒng)將廣播ACTION_FOUND 的 Intent。這個 Intent 包含了一些附加數(shù)據(jù)域 —EXTRA_DEVICE和 EXTRA_CLASS,分別包含 BluetoothDevice 類和 BluetoothClass 類的實例。 //Create a BroadcastReceiver for ACTION_FOUND private final BroadcastReceiver mReceiver = new BroadcastReceiver() { public void onReceive(Context context, Intent intent) { String action = ()。 // When discovery finds a device 29 if ((action)) { // Get the BluetoothDevice object from the Intent BluetoothDevice device = ()。 // Add the name and address to an array adapter to show in a ListView (() + /n + ())。 } } }。 // Register the BroadcastReceiverIntentFilter filter = new IntentFilter()。 registerReceiver(mReceiver, filter)。 // Don39。t fet to unregister during onDestroy 3. 啟動發(fā)現(xiàn)功能 如果你想要你的設(shè)備能被其他設(shè)備發(fā)現(xiàn),調(diào)用startActivityForResult(Intent,int),傳遞一個 ACTION_REQUEST_DISCOVERABLE action Intent 給它。這將發(fā)送一個請求給系統(tǒng)設(shè)置以啟動可被發(fā)現(xiàn)模式。可被發(fā)現(xiàn)模式一般默認(rèn)持續(xù) 120 秒,你可以通過給 Intent 添加一個EXTRA_DISCOVERABLE_DURATION Intent extra 來更改可被發(fā)現(xiàn)模式的持續(xù)時間,這個時間最大是 300 秒。 Intent discoverableIntent = new Intent()。 (BluetoothAdapter. EXTRA_DISCOVERABLE_DURATION, 300)。 startActivity(discoverableIntent)。 連接藍(lán)牙設(shè)備 為了在兩個藍(lán)牙設(shè)備之間建立一條應(yīng)用程序的連接,你必須建立一個服務(wù)器和一個客戶端的機制,其中服務(wù)端要打開藍(lán)牙套接字接口,而客戶端使用服務(wù)器端得 MAC 地址來啟動一條連接。當(dāng)服務(wù)端和客戶端彼此之間都認(rèn)為是連接上了,他們在 RFCOMM 協(xié)議管道上都會有一個藍(lán)牙套接字接口 BluetoothSocket。每一個藍(lán)牙設(shè)備都 會收到輸入數(shù)據(jù)流和發(fā)出輸出數(shù)據(jù)流,可以開始互相傳遞數(shù)據(jù)。 30 1. 服務(wù)端連接 當(dāng)要連接兩個藍(lán)牙設(shè)備時,其中一個藍(lán)牙設(shè)備必須是已經(jīng)打開BluetoothServerSocket 的服務(wù)端,同時開始監(jiān)聽請求連接的信息,當(dāng)一個藍(lán)牙設(shè)備被接受時,會提供一個連接 BluetoothSocket。當(dāng)一個連接 BluetoothSocket 已被 BluetoothServerSocket 接受后, BluetoothServerSocket 可以丟棄,除非你希望接受多個連接。 建立服務(wù)端的藍(lán)牙套接字接口和接受一個連接的基本步驟: 調(diào)用 listenUsingRfmWithServiceRecord(String, UUID)方法來取得BluetoothServerSocket 。 調(diào)用 accept( )方法請求開始監(jiān)聽服務(wù)端的藍(lán)牙套接字; 可以調(diào)用 close() 方法釋放服務(wù)端的藍(lán)牙套接字,除非你希望接受更多其它連接; 2. 客戶端連接 為了要和遠(yuǎn)程藍(lán)牙設(shè)備啟動一個連接,這個設(shè)備要擁有一個公開的服務(wù)端的藍(lán)牙套接字。首先你必須獲得一個 BluetoothDevice 對象代表遠(yuǎn)程藍(lán)牙設(shè)備。你必須使用這個 BluetoothDevice 來獲取 BluetoothSocket 并啟動連接。 啟動客戶端的藍(lán)牙通信連接的基本步驟: 步驟 1 使用這個 BluetoothDevice,調(diào)用createRfmSocketToServiceRecord(UUID) 方法來取得 BluetoothSocket。 步驟 2 調(diào)用 connect()方法來啟動藍(lán)牙通信連接。 管理藍(lán)牙連接 當(dāng)你成功連接一個或多個藍(lán)牙設(shè)備時,每一個藍(lán)牙設(shè)備都有一條連接BluetoothSocket,此時藍(lán)牙設(shè)備彼此間可以傳遞數(shù)據(jù)。使用 BluetoothSocket,傳遞任何數(shù)據(jù)的過程都很 簡單,其步驟如下所示: 步驟 1 通過 InputStream 和 OutputStream 接口來傳遞數(shù)據(jù),分別調(diào)用 getInputStream() 和 getOutputStream()方法來實現(xiàn)。 步驟 2 調(diào)用 read( byte[]) 和 write( byte[] )方法來讀寫數(shù)據(jù)流。最后可以31 使用 canncel()方法來結(jié)束連接,關(guān)閉 BluetoothSocket。 [7] 數(shù)據(jù)轉(zhuǎn)化設(shè)計 導(dǎo)聯(lián)數(shù)據(jù)的幀格式: 一幀數(shù)據(jù)中含有各路數(shù)據(jù)的一次采樣值,每個值的寬度為 12 bit,量化單位為( 16 2400)247。 8388607 mV 一幀數(shù)據(jù)含 16 個字節(jié),意義如下表。 字節(jié)序號 數(shù)據(jù)名稱 AAH 第 1 引導(dǎo)符 幀起始標(biāo)志 55H 第 2 引導(dǎo)符 S1 狀態(tài)字節(jié) 1,包含導(dǎo)聯(lián)脫落、心跳等信息 附加信息暫不用 S2 狀態(tài)字節(jié) 1,包含其他信息 [VLVR]H 導(dǎo)聯(lián)Ⅰ的高 8 位 8 路有效數(shù)據(jù) ,每路12bits [VFVR]H 導(dǎo)聯(lián)Ⅱ的高 8 位 [VLVR]L , [VFVR]H 導(dǎo)聯(lián)Ⅰ的低 4 位與導(dǎo)聯(lián)Ⅱ的低 4 位拼合成 1 字節(jié)。 [VC1]H 導(dǎo)聯(lián) C1 的高 8 位 [VC2]H 導(dǎo)聯(lián) C2 的高 8 位 [VC1]L, [VC2]L 導(dǎo)聯(lián) C1 的低 4 位與導(dǎo)聯(lián) C2 的低 4 位拼合成 1 字節(jié)。 [VC3]H 導(dǎo)聯(lián) C3 的高 8 位 [VC4]H 導(dǎo)聯(lián) C4 的高 8 位 [VC3]L, [VC4]L 導(dǎo)聯(lián) C3 的低 4 位與導(dǎo)聯(lián) C4 的低 4 位拼合成 1 字節(jié)。 [VC5]H 導(dǎo)聯(lián) C5 的高 8 位 [VC6]H 導(dǎo)聯(lián) C6 的高 8 位 [VC5]L, [VC6]L 導(dǎo)聯(lián) C5 的低 4 位與導(dǎo)聯(lián) C6 的低 4 位拼合成 1 字節(jié)。 public void processData(byte[] byteBuf) { mShortBuffer = new short[12]。 byte[] temp = new byte[2]。 int j = 2。 for (int i = 0。 i 8。) { temp[0] = byteBuf[j + 2]。 temp[1] = byteBuf[j]。 temp[0] = (byte) (temp[0] 4)。 32 mShortBuffer[i
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1