基于ARM的嵌入式多參數監(jiān)護儀設計與實現
1 引 言
多參數監(jiān)護儀廣泛應用于ICU、CCU、病房、手術室等。目前我國也有自主知識產權的產品,如邁瑞、金科威、金腦人等,但與GE、飛利浦世界先進產品比較,在監(jiān)測和計算、可靠性、實時性、穩(wěn)定性、信號變異的處理分析、遠程傳輸等方面都較落后[1]。嵌入式系統(tǒng)把計算機直接嵌入到應用系統(tǒng)之中,它融合了通信技術和半導體微電子技術,是信息技術IT的最終產品[2]。因此將嵌入式系統(tǒng),網絡等技術應用于醫(yī)用監(jiān)護儀領域,能使多參數監(jiān)護儀順應現代醫(yī)用監(jiān)護儀市場縮小體積,提高數據處理能力,遠程醫(yī)療等方面的要求。
本文介紹一種基于ARM的實時監(jiān)護系統(tǒng),它將32位RISC結構的ARM內核處理器與實時多任務嵌入式系統(tǒng)相結合,并通過嵌入式TCP/IP協議棧為平臺添加網絡傳輸功能,構建一個新型的多參數監(jiān)護儀系統(tǒng)。
2 系統(tǒng)硬件設計
醫(yī)用監(jiān)護儀具有以下幾個方面功能:測量功能、分析功能、報警功能、打印功能、網絡通信功能等。六參數模塊通過導聯端、光手指、袖帶獲得人體的心電、無創(chuàng)血壓、血氧、脈率、呼吸、體溫六參數信號,通過串口通信方式與以ARM7為內核的嵌入式處理器相連,數據從串口送到ARM7中 央處理器,通過多任務調度,進行實時數據處理,并在LCD上實時顯示各種信號的圖形和數值,還可以由外部鍵盤控制,進行存儲和網絡發(fā)送,并對各種檢測信號設置報警線,對超出報警范圍的檢測情況進行報警。硬件結構圖1所示。
圖1 多參數監(jiān)護儀硬件結構圖
3 開發(fā)系統(tǒng)軟件設計
3.1 軟件開發(fā)總體介紹
利用PC機運行的Hitool forARM開發(fā)環(huán)境下調試程序:首先運行系統(tǒng)、Memory及I/O端口的初始化程序,隨后進入主程序,采用外部中斷方式,判斷是否有鍵輸入,若有則調用鍵盤控制子程序進行識別所按下的鍵,根據鍵盤的控制執(zhí)行相應的任務;若無就調用串口讀入程序,采集心電、血氧、血壓等數據,并判別所采集數據的類型,存入不同地址的SDRAM中,并依次分類進行處理,處理完畢,判斷是否超越各自的報警限,若是則調用報警程序和顯示程序,若否則直接調用顯示程序;這樣,各種數據就實時地采集進來,并在LCD上顯示測試數值和心電、呼吸波形。其中測試數值按每分鐘存儲,心電、呼吸波形按鍵存儲,按翻頁鍵可以調出相應的存儲波形并進行顯示;根據打印和網絡命令進行打印和網絡命令處理等。程序主要用C語言編寫。
3.2 串口的處理
硬件接口采用標準RS-232C異步串行接口,選用發(fā)送 (TXD)、接收(RXD)和地線的三線方式,其它的握手信號直接懸空。要實現六參數模塊與S3C44BO之間的串口通信,必須使兩者采用相同的數據傳輸方式,它們通信的數據格式如下;波特率為9600bps, 8位數據位, 1位停止位,無奇偶校驗位。
另外,在I/O端口初始化程序中,定義Uart_Init函數,對串行口各寄存器進行初始化,配置參數時鐘和波特率等。在設計中主要進行以下串行口寄存器設置:
UART線性控制寄存器ULCON1=0x3;
UART控制寄存器UCON1=0x245;
UART先進先出控制寄存器UFCON1=0x1;
UART波特率寄存器UBRDTV,根據公式計算出。
在串口讀入程序中,采用了中斷方式,來實現雙向數據傳輸,達到實時控制的目的。串口程序數據接收過程為:調用Uart_Getch()函數讀入N個字符,以數組的方式放置在SDRAM中,然后進行數據處理。在lib.C程序中部分源代碼如下:
charUart_Getch()
{…
while(! (rUTRSTAT1& 0x1)); //Receive data ready
return rURXH1;
…}
3. 3 LCD顯示
當有新數據需要顯示時, LCD顯示模塊將新的采樣數據寫入LCD顯示存儲器中, S3C44BO芯片所支持的LCD控制器在不需要CPU介入的情況下,通過專用DMA自動地將需要顯示的數據從顯示存儲器傳送到LCD顯示器中。LCD顯示器不斷地接收數據,就在LCD上顯示監(jiān)測內容。
3. 3. 1 LCD初始化
定義Lcd_MonoInit()函數,在LCD的三個控制寄存器中,設置LCD掃描寬度等與硬件時序有關的量:如:使用160
評論