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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于android平臺(tái)的心電圖儀設(shè)計(jì)-閱讀頁

2025-06-24 01:17本頁面
  

【正文】 于產(chǎn)品的方便和舒適程度也提出了更高的要求。 Android 是 Google 開發(fā)的基于Linux 平臺(tái)的開源手機(jī)操作系統(tǒng),正占據(jù)著越來越多的市場(chǎng)份額。 開發(fā)目的 傳統(tǒng)的心電圖儀由于技術(shù)的限制,只能對(duì)模擬心電信號(hào)進(jìn)行顯示、報(bào)警和記錄,功能比較單一,實(shí)用性較差。 系統(tǒng)需求分析 系統(tǒng)支持: Android 以上版本 分辨率: 1024*600 以上分辨率 主頻: 500MHz 以上 內(nèi)存: 256M 以上 帶藍(lán)牙和 Wifi 模塊 功能需求分析 1. 實(shí)現(xiàn)管理員權(quán)限操作,添加系統(tǒng)登錄功能。 3. 對(duì)接收到的數(shù)據(jù)進(jìn)行轉(zhuǎn)化,按比例縮 放,便于在顯示屏上顯示。 14 5. 添加數(shù)據(jù)庫,記錄病人信息,任務(wù)信息等。 7. 添加上傳數(shù)據(jù)功能,能通過無線網(wǎng)將記錄的數(shù)據(jù)上傳到服務(wù)器。 9. 對(duì)接收到的數(shù)據(jù)進(jìn)行儲(chǔ)存。 功能模塊需求分析 管理員登陸功能 要實(shí)現(xiàn)這一功能,需要添加管理員數(shù)據(jù)庫,打開軟件的時(shí)候,需要鍵入用戶名和密碼,點(diǎn)擊登陸后在數(shù)據(jù)庫中查找用戶名是否存在 ,且密碼正確,若正確,則進(jìn)入系統(tǒng),否則退到管理員登陸界面。 數(shù)據(jù)庫管理功能 涉及到對(duì)病人信息的儲(chǔ)存,任務(wù)的下達(dá),病人心電數(shù)據(jù)的記錄,管理員信息記錄,用數(shù)據(jù)庫可以很方便的對(duì)這些信息進(jìn)行儲(chǔ)存和管理。 15 數(shù)據(jù)上傳下載功能 病人信息,下達(dá)的任務(wù),記錄的數(shù)據(jù),處理后的數(shù)據(jù),都要保存到服務(wù)器,以免數(shù)據(jù)丟失;同時(shí),如果數(shù)據(jù)丟失或數(shù)據(jù)經(jīng)過修改后想復(fù)原,就可以通過下載功能,將服務(wù)器上的數(shù)據(jù)下載到本地。 數(shù)據(jù)需求分析 需要記錄病人信息(病人姓名,性別,年齡等),病人心電數(shù)據(jù)信息(數(shù)據(jù)量大),任務(wù)信息(任務(wù)的名稱,任務(wù)的 采集時(shí)間,是否完成等),任務(wù)下達(dá)信息(任務(wù)的下達(dá)時(shí)間,解決方案等),報(bào)表信息(檢測(cè)日期,數(shù)據(jù)標(biāo)示等),管理員信息(用戶名,密碼)。 界面需求分析 登陸界面:界面用對(duì)話框的形式,要在主頁面顯示前顯示,登陸后再從其他頁面跳轉(zhuǎn)主頁面時(shí)不再顯示登陸頁面。 心電數(shù)據(jù)的顯示:由于心電數(shù)據(jù)需要實(shí)時(shí)的接收,數(shù)據(jù)量比較大,要用動(dòng)態(tài)的波形顯示,同時(shí)需要將數(shù)據(jù)儲(chǔ)存下來,方便回放,由于接收數(shù)據(jù)和畫圖要同時(shí)進(jìn)行,設(shè)計(jì)到多線程編程,數(shù)據(jù)庫的使用等。 藍(lán)牙數(shù)據(jù)接收模塊 系統(tǒng)對(duì)數(shù)據(jù)的傳送都是通過無線的方式,病人的心電數(shù)據(jù),是通過藍(lán)牙不斷的接收并儲(chǔ)存下來,所以需要添加藍(lán)牙數(shù)據(jù)接收模塊。 數(shù)據(jù)儲(chǔ)存模塊 病人信息,下達(dá)的任務(wù),管理員信息等,這些信息的儲(chǔ)存需要用到數(shù)據(jù)庫,也方便數(shù)據(jù)的管理;病人心電數(shù) 據(jù)的記錄,由于數(shù)據(jù)量大,可以直接儲(chǔ)存在文本文件中,方便讀取,但不方便管理。 通過無線網(wǎng),將數(shù)據(jù)上傳到指定的服務(wù)器。%JAVA_HOME%\lib\。%JAVA_HOME%\bin。 5. NOTE:前面四步設(shè)置環(huán)境變量對(duì)搭建 Android 開發(fā)環(huán)境不是必須的,可以跳過。打開 cmd 窗口,輸入 java –version 查看 JDK 的版本信息。 Android SDK 安裝 在 Android Developers 下載 ,下載完成后解壓到任意路徑。如果沒有出現(xiàn)可安裝的包,請(qǐng)點(diǎn)擊 Settings,選中 Misc 中的 Force Available Packages 。 23 “確定 ”后,重新啟動(dòng)計(jì)算機(jī)。 運(yùn)行 android –h 如果有類似以下的輸出,表明安裝成功: ADT 安裝 ? 打開 Eclipse IDE,進(jìn)入菜單中的 Help Install New Software ? 點(diǎn)擊 Add...按鈕,彈出對(duì)話框要求輸入 Name 和 Location: Name 自己隨 便取, Location 輸入 圖所示: 24 ? 確定返回后,在 work with 后的下拉列表中選擇我們剛才添加的 ADT,我們會(huì)看到下面出有 Developer Tools,展開它會(huì)有 Android DDMS 和Android Development Tool,勾選他們。 完成之后: ? 選擇 Window Preferences... ? 在左邊的面板選擇 Android,然后在右側(cè)點(diǎn)擊 Browse...并選中 SDK 路徑,本機(jī)為: D:\AndroidDevelop\androidsdkwindows ? 點(diǎn)擊 Apply、 OK。 [6] 管理員登陸界面 在主對(duì)話框中調(diào)用子對(duì)話框,登陸成功則加載數(shù)據(jù)庫信息,登陸失敗則提示用戶名或密碼錯(cuò)誤停留在當(dāng)前登錄頁面,取消則退出程序; LayoutInflater flater = ()。 new () .setTitle(管理員登陸 ) .setView(DialogView) .setPositiveButton(登錄 , new OnClickListener() { 25 Override public void onClick(DialogInterface arg0, int arg1) { // TODO Autogenerated method stub final ProgressDialog dlg = (, 請(qǐng)等待 ……, 正在為你登錄 ……, true)。 } catch (Exception e) { ()。 } } }.start()。 } }).create().show()。 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=取報(bào)告 / 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()。 return true。 1. 獲得 BluetoothAdapter 類 任何藍(lán)牙 activity 都需要 BluetoothAdapter 類。整個(gè)系統(tǒng)只有一個(gè)藍(lán)牙適配器,你的程序可以通過獲取到 BluetoothAdapter 實(shí)例與之交互。 BluetoothAdapter btAdapt = ()。 Finish()。 } 2. 啟動(dòng)藍(lán)牙 接下來,你必須確保用戶啟動(dòng)了藍(lán)牙。如果該方法返回 false,那么說明藍(lán)牙沒有啟動(dòng)。這將通過系統(tǒng)設(shè)備來發(fā)出啟動(dòng)藍(lán)牙的請(qǐng)求 (不會(huì)停止你的程序 )。 startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT)。已啟動(dòng)的藍(lán)牙設(shè)備會(huì)提供一些信息,比如設(shè)備名稱、 MAC地址、類和互連狀態(tài)。 1. 查詢配對(duì)設(shè)備 在執(zhí)行 device discovery 之前,最好在已配對(duì)的設(shè)備列表中查看所要發(fā)現(xiàn)的設(shè)備是否已經(jīng)存在。 例如,你可 以查詢所有已經(jīng)配對(duì)的設(shè)備,然后通過一個(gè) ArrayAdapter 添加和顯示每個(gè)設(shè)備的名字給用戶 : SetBluetoothDevice pairedDevices = ()。 } } 2. 發(fā)現(xiàn)設(shè)備 調(diào)用 startDiscovery() 開始設(shè)備發(fā)現(xiàn)的過程,這個(gè)過程是異步的,startDiscovery()方法會(huì)立即返回一個(gè) boolean 的值表示啟動(dòng)是否成功。 你的應(yīng)用程序中必須注冊(cè)一個(gè) ACTION_FOUND Intent 的 BroadcastReceiver,用于接收發(fā)現(xiàn)一個(gè)藍(lán)牙設(shè)備時(shí)發(fā)出的信息。這個(gè) Intent 包含了一些附加數(shù)據(jù)域 —EXTRA_DEVICE和 EXTRA_CLASS,分別包含 BluetoothDevice 類和 BluetoothClass 類的實(shí)例。 // When discovery finds a device 29 if ((action)) { // Get the BluetoothDevice object from the Intent BluetoothDevice device = ()。 } } }。 registerReceiver(mReceiver, filter)。t fet to unregister during onDestroy 3. 啟動(dòng)發(fā)現(xiàn)功能 如果你想要你的設(shè)備能被其他設(shè)備發(fā)現(xiàn),調(diào)用startActivityForResult(Intent,int),傳遞一個(gè) ACTION_REQUEST_DISCOVERABLE action Intent 給它??杀话l(fā)現(xiàn)模式一般默認(rèn)持續(xù) 120 秒,你可以通過給 Intent 添加一個(gè)EXTRA_DISCOVERABLE_DURATION Intent extra 來更改可被發(fā)現(xiàn)模式的持續(xù)時(shí)間,這個(gè)時(shí)間最大是 300 秒。 (BluetoothAdapter. EXTRA_DISCOVERABLE_DURATION, 300)。 連接藍(lán)牙設(shè)備 為了在 兩個(gè)藍(lán)牙設(shè)備之間建立一條應(yīng)用程序的連接,你必須建立一個(gè)服務(wù)器和一個(gè)客戶端的機(jī)制,其中服務(wù)端要打開藍(lán)牙套接字接口,而客戶端使用服務(wù)器端得 MAC 地址來啟動(dòng)一條連接。每一個(gè)藍(lán)牙設(shè)備都會(huì)收到輸入數(shù)據(jù)流和發(fā)出輸出數(shù)據(jù)流,可以開始互相傳遞數(shù)據(jù)。當(dāng)一個(gè)連接 BluetoothSocket 已被 BluetoothServerSocket 接受后, BluetoothServerSocket 可以丟棄,除非你希望接受多個(gè)連接。 調(diào)用 accept( )方法請(qǐng)求開始監(jiān)聽服務(wù)端的藍(lán)牙套接字; 可以調(diào)用 close() 方法釋放服務(wù)端的藍(lán)牙套接字,除非你希望接受更多其它連接; 2. 客戶端連接 為了要和遠(yuǎn)程藍(lán)牙設(shè)備啟動(dòng)一個(gè)連接,這個(gè)設(shè)備要擁有一個(gè)公開的服務(wù)端的藍(lán)牙套接字。你必須使用這個(gè) BluetoothDevice 來獲取 BluetoothSocket 并啟動(dòng)連接。 步驟 2 調(diào)用 connect()方法來啟動(dòng)藍(lán)牙通信連接。使用 BluetoothSocket,傳遞任何數(shù)據(jù)的過程都很簡(jiǎn)單,其步驟如下所示: 步驟 1 通過 InputStream 和 OutputStream 接口來傳遞數(shù)據(jù),分別調(diào)用 getInputStream() 和 getOutputStream()方法來實(shí)現(xiàn)。最后可以31 使用 canncel()方法來結(jié)束連接,關(guān)閉 BluetoothSocket。 8388607 mV 一幀數(shù)據(jù)含 16 個(gè)字節(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é)。 [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é)。 byte[] temp = new byte[2]。 for (int i = 0。) { temp[0] = byteBuf[j + 2]。 temp[0] = (byte) (temp[0] 4)。 mShortBuffer[i] = (short) (mShortBuffer[i] 4)。 i++。 temp[1] = byteBuf[j + 1]。 temp[0] = (byte) (temp[0] 4)。 mShortBuffer[i] = (short) (mShortBuffer[i] 4)。 i++。 } mShortBuffer[8] = (short) (mShortBuffer[1] mShortBuffer[0])。 mShortBuffer[10] = (short) (mShortBuffer[0] mShortBuffer[1] / )。 for
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1