基于51單片機的低成本心電監(jiān)護系統(tǒng)設計
3.2.1 LabVIEW程序面板設計
開發(fā)USB設備驅(qū)動程序的工具使用USB Xpress Devel-opment Kit,主要有:SI_Open()函數(shù);SI_Close()函數(shù);SI_Read函數(shù);SI_Write()函數(shù);SI_GetNumDevices()函數(shù);SI_CheckRX Queue()函數(shù)。用戶從設備讀取數(shù)據(jù)將調(diào)用一個應用程序接口API。SI_GetNumDevices()、SI_GetProductString()等函數(shù)均是Silicon Lab公司專為C8051F320單片機USB功能開發(fā)的USB主機端API函數(shù)。LabVIEW提供調(diào)用鏈接庫函數(shù)Call Librarv Function,本設計利用Silicon Lab公司的SiUSBXp.dll動態(tài)鏈接庫來實現(xiàn)對USB底層硬件的訪問。
通過調(diào)用SLGetNumDevices()甬數(shù)完成設備的通信初始化,生成函數(shù)返回驅(qū)動的設備號;該設備號用來在調(diào)用SI GetProductString()函數(shù)時生成設備描述字符串。要讀取一個設備,首先必須通過調(diào)用SI_GetNumDevices()函數(shù)生成的索引(設備號)來調(diào)用SI_Open()函數(shù)。SI_Open()函數(shù)將返回設備的句柄,該句柄將在隨后的所有進程中被用到。利用 SI_Write()和SI_Read()函數(shù)就可實現(xiàn)數(shù)據(jù)的輸入和輸出。當完成數(shù)據(jù)的輸入和輸出操作后,可通過調(diào)用SI_Close()關閉設備。圖6為I/O接口驅(qū)動程序框圖。
3.2.2 LabVIEW程序設計用戶圖形界面(前面板)設計
動態(tài)心電監(jiān)護系統(tǒng)應用程序部分可實現(xiàn)心電信號的接收、實時顯示、存儲及回放功能;并可提供心動周期、心率等參數(shù),為心率變異性分析和心血管疾病的診斷提供依據(jù)。心電監(jiān)護系統(tǒng)顯示界面如圖7所示。
4 結(jié)論
該設計不僅可實現(xiàn)傳統(tǒng)測量儀器的全部功能,還能將實驗數(shù)據(jù)存盤以進行反復觀察分析。基于虛擬儀器的心電監(jiān)護系統(tǒng)使用靈活方便、測試功能豐富、成本低廉。用戶可根據(jù)實際需要,通過修改軟件改變其功能和升級,實現(xiàn)一機多用。實驗結(jié)果表明:該系統(tǒng)具有較強的抑制基線漂移能力、低功耗、操作簡單。采用USB接口實時傳輸心電數(shù)據(jù),并將心電數(shù)據(jù)采集模塊設計為計算機外設,高速快捷。由于全部采用SMT封裝,數(shù)據(jù)采集模塊尺寸僅為60 mmx60 mm,方便實用。因此,該設計是一款實用的、低成本的、動態(tài)心電監(jiān)護系統(tǒng)。
評論