基于嵌入式的心電模擬發生系統設計方案
3.1 D/A驅動程序和高壓信號采集驅動部分
設備驅動程序是操作系統內核和機器硬件之間的接口。設備驅動程序為應用程序屏蔽了硬件的細節,這樣在應用程序看來,硬件設備只是一個設備文件,應用程序可以像操作普通文件一樣對硬件設備進行操作,以往在開發應用程序時都有一個main函數作為程序的入口點,而在驅動開發時卻沒有main函數,模塊在調用insmod命令時被加載,此時的入口點是init module函數,通常在該函數中完成沒備的注冊。同樣,模塊在調用rmmod函數時被卸載,此時的入口點是cleanup module函數,在該函數中完成設備的卸載。在設備完成注冊加載之后,用戶的應用程序就可以對該設備進行一定的操作,如read,write等,而驅動程序就是用于實現這些操作,在用戶應用程序調用相應入口函數時執行相關的操作,init roodule入口點函數則不需要完成其他如read,write之類功能。
驅動程序主要函數如下:
3.2 系統應用程序設計與實現
該系統的應用程序是基于Qt/Embedded設計的,目前使用的嵌入式GUI系統存在 Microwindows,MiniGUI,Qt/Embedded,Qt/Embedded延續了Qt的強大功能,可以運行在多種不同的處理器上部署的嵌入式Linux操作系統。Qt/Embedded提供了信號和插槽的編程機制,該部分采用的Qt是一個創建GUI程序的C++類庫,編寫Qt應用程序的主要工作是基于已有的Qt類編寫用戶類。該部分主要分為波形界面的實現和用戶按鍵控制的實現,波形顯示采用Qt的函數類庫Qpainter,由于波形界面顯示兩路心電波形,會產生延遲效果,所以引入了多線程機制協調,Qt支持多線程,有獨立于平臺的線程類,線程安全方式的時間傳遞和一個全局Qt庫互斥量允許不同的線程調用Qt方法。
4 結語
本系統設計采用三星2440嵌入式處理器作為核心搭建了硬件平臺,并采用嵌入式Linux操作系統并結合外圍的D/A轉換部分、與監護儀匹配網絡、高壓信號采集部分、應用程序控制部分等實現了心電除顫模擬發生系統的設計。該系統可以很好地模擬醫學除顫的過程,并可以與醫用監護儀相連接,輸出符合醫學標準的34種常見異常心率波形,由于系統使用嵌入式實時多任務操作系統,因此該設計具有很高的實時性、穩定性和可靠性。
評論