国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于ARM的嵌入式多參數監護儀設計與實現

發布時間:2009-6-16 21:17    發布者:ARM
關鍵詞: arm , 多參數 , 監護儀 , 嵌入式
1 引 言




多參數監護儀廣泛應用于ICU、CCU、病房、手術室等。目前我國也有自主知識產權的產品,如邁瑞、金科威、金腦人等,但與GE、飛利浦世界先進產品比較,在監測和計算、可靠性、實時性、穩定性、信號變異的處理分析、遠程傳輸等方面都較落后[1]。嵌入式系統把計算機直接嵌入到應用系統之中,它融合了通信技術和半導體電子技術,是信息技術IT的最終產品[2]。因此將嵌入式系統,網絡等技術應用于醫用監護儀領域,能使多參數監護儀順應現代醫用監護儀市場縮小體積,提高數據處理能力,遠程醫療等方面的要求。




本文介紹一種基于ARM的實時監護系統,它將32位RISC結構的ARM內核處理器與實時多任務嵌入式系統相結合,并通過嵌入式TCP/IP協議棧為平臺添加網絡傳輸功能,構建一個新型的多參數監護儀系統。




2 系統硬件設計




醫用監護儀具有以下幾個方面功能:測量功能、分析功能、報警功能、打印功能、網絡通信功能等。六參數模塊通過導聯端、光手指、袖帶獲得人體的心電、無創血壓、血氧、脈率、呼吸、體溫六參數信號,通過串口通信方式與以ARM7為內核的嵌入式處理器相連,數據從串口送到ARM7中央處理器,通過多任務調度,進行實時數據處理,并在LCD上實時顯示各種信號的圖形和數值,還可以由外部鍵盤控制,進行存儲和網絡發送,并對各種檢測信號設置報警線,對超出報警范圍的檢測情況進行報警。硬件結構圖1所示:






3 開發系統軟件設計




3.1 軟件開發總體介紹




利用PC機運行的Hitool forARM開發環境下調試程序:首先運行系統、Memory及I/O端口的初始化程序,隨后進入主程序,采用外部中斷方式,判斷是否有鍵輸入,若有則調用鍵盤控制子程序進行識別所按下的鍵,根據鍵盤的控制執行相應的任務;若無就調用串口讀入程序,采集心電、血氧、血壓等數據,并判別所采集數據的類型,存入不同地址的SDRAM中,并依次分類進行處理,處理完畢,判斷是否超越各自的報警限,若是則調用報警程序和顯示程序,若否則直接調用顯示程序;這樣,各種數據就實時地采集進來,并在LCD上顯示測試數值和心電、呼吸波形。其中測試數值按每分鐘存儲,心電、呼吸波形按鍵存儲,按翻頁鍵可以調出相應的存儲波形并進行顯示;根據打印和網絡命令進行打印和網絡命令處理等。程序主要用C語言編寫。




3.2 串口的處理




硬件接口采用標準RS-232C異步串行接口,選用發送 (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上顯示監測內容。

3. 3. 1
LCD初始化




定義Lcd_MonoInit()函數,在LCD的三個控制寄存器中,設置LCD掃描寬度等與硬件時序有關的量:如:使用160×240的黑白單色顯示屏, 4-bit單掃描等。在LCD的三個緩沖初始地址寄存器中,主要配置了幀緩沖寄存器BUFFER的起始地址等。




以上各寄存器基本的配置的源程序如下:




void Lcd_MonoInit(void) //初始化LCD屏幕


{ //160×240 1bit/1pixelLCD

#defineMVAL_USED 0

rLCDCON1=(0) (1<<5) (MVAL_USED<<7) (0x3<<

8) (0x3<<10) (CLKVAL_MONO<<12);

//disable, 4B_SNGL_SCAN,WDLY=8clk,WLH=8clk

rLCDCON2=(LINEVAL) (HOZVAL<<10) (10<<21);

//LINEBLANK=10(without any calculation)

rLCDSADDR1= (0x0<<27) (((U32) frameBuffer1>>22)<<

21 ) M5D((U32)frameBuffer1>>1);

//monochrome,LCDBANK,LCDBASEU

rLCDSADDR2=M5D( (((U32)frameBuffer1+(SCR_XSIZE*LCD_

YSIZE/8))>>1)) (MVAL<<21) (1<<29);

rLCDSADDR3=(LCD_XSIZE/16) ((SCR_XSIZE-LCD_XSIZE) /

16)<<9);

}



3. 3. 2
打開LCD



1)在內核中開辟內存空間用于顯示內存




可在顯示模塊中加入:#define frameBuffer1 0xC400000



2)定義幀緩沖器長度,并對其賦初值設置一個行列與LCD



高寬相對應的數組pbuffer, pbuffer用于存放發送至顯示屏的每幀像點數據,像點數據的多少取決于顯示屏的大小; pbuffer="BitsPerPixe"*l Lines* /8=160* 240/8=4800(字節)。




由于pbuffer被定義為U32,即32位(八個四位)指針,每一個元素對應LCD顯示屏上的一個像素點,顯示方式采用4-bit單掃描,所以應當循環4800(字節) /4=1200次,實際上對應的單元數為整個160×240的屏幕范圍。





for( i="0", i<1200; i++)

#(pBuffer[ i])=0x0;



3)數據處理




LCD的數據處理主要對要顯示的數據進行處理(4bit到32bit的轉換)。





temp_data=(Buf[ i* 4+3]<<24)+(Buf[ i* 4+2]<< 16)+(Buf[*i 4+1]<<8)+(Buf[*i 4]);



3. 3. 3
清屏




清屏對顯存的每個單元置零,使屏幕顯示清除。以下為清屏的部分源程序:




Void clrscreen(void)

{ int ;i

unsigned int* pbuffer;

pbuffer=(U32* )frameBuffer1;

for( i="0"; i<1200; i++)
{
pbuffer[ i]=0;
}


}

3. 3. 4
編制LCD顯示函數并向LCD設備寫入數據


定義displayLcd()函數為LCD顯示函數,用于往顯存中寫數據,經過pbuffer送至LCD顯示器,并讓它循環顯示在LCD顯示屏上。要在LCD上顯示ASCII字符,首先把每個字符轉成一個16* 16bit的數組,組成字庫(本次實現中使用),然后,選擇要顯示的字符,從字庫中提取字符,經函數調用后,將要顯示的字符送至LCD顯示器,這樣,就在LCD上顯示出ASCII字符。




部分源程序如下:




void displayLCD(void) //LCD顯示函數


{
unsigned int* pbuffer, temp_data;
int ;i
pbuffer=(U32* )frameBuffer1;
for( i="0"; i<1200; i++)
{
temp_data=(Buf[ i* 4+3]<<24)+(Buf[ i* 4+2]<<

16)+(Buf[*i 4+1]<<8)+(Buf[*i 4];

//進行4bit到32bit的數據轉換處理

pbuffer[ i]=~temp_data;
Delay(10);
}
}
在添加所用的頭文件的同時,增加對LCD_Init()函數、dis-playLCD()等函數的調用。




4 網絡命令處理




在硬件設計上采用以太網口,軟件上通過實現瘦TCP/IP網絡通信協議,針對嵌入式系統特點對傳統的TCP/IP協議棧進行裁減[4],讓嵌入式多參數監護儀支持輕量級TCP/IP協議棧而 直接連入Internet。在設計將無實時要求和費時的TCP/IP協議簇的處理放在主程序順序循環中。網絡程序結構采取順序執行和硬件中斷相配合的方式,這種硬件中斷是外部時鐘中斷,中斷級別要比非向量模式的FIQ中斷級別低,在系統空閑時進行網絡數據交互;對網絡接口控制芯片采用查詢方式,即在其他中斷任務的執行間隙處理瘦TCP/IP協議簇,以犧牲響應速度來換取系統可靠性。




考慮到嵌入式醫用監護儀在窄寬帶不可靠環境下實現實時監測的要求,決定在網絡通信協議的傳輸層中,選用UDP(用戶數據報協議)。




5 結束語




介紹一種基于ARM的嵌入式多參數監護儀的設計與實現,并應用于實際測量,為嵌入式系統在醫用監護中的應用提供了一個很有意義的新思路和切實可行的方案。由于該網絡監護儀主要面向醫院、社區和家庭,具有成本低、功耗小、數據存儲量大、數據處理速度快、便于遠程醫療、能同時實現實時多任務的操作等各項優勢,是現代醫療監護進一步智能化、專業化、小型化、低功耗的發展新方向,困此具有很廣闊的市場前景。
本文地址:http://m.qingdxww.cn/thread-2727-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 無線充電基礎知識及應用培訓教程
  • FPGA設計流程培訓教程
  • Chiptorials ——如何將CryptoAuthLib庫用于Microchip安全身份驗證IC
  • Chiptorials ——使用ATECC608 TrustFLEX實現基本非對稱身份驗證
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩免费播放一区二区 | 黄页在线播放 | 亚洲免费视频一区 | 高清中文字幕视频在线播 | 欧美色欧美亚洲高清在线视频 | 久久精品国内偷自一区 | 亚洲天堂在线观看视频 | 在线视频免费观看a毛片 | 综合精品一区 | 国产三级精品三级在线观看 | 成在线人永久免费视频下载 | 一区二区三区免费看 | 日本欧美精品 | 国产wwwww | 国产一级持黄大片99久久 | 久久精品欧美一区二区 | 国产成人久久精品推最新 | 国产草| 四虎影视在线看免费 720p | 国产成人久久久精品一区二区三区 | 精品久久久久久综合网 | 国产色婷婷亚洲 | 麻豆国产传媒片在线看 | 麻豆一精品传媒媒短视频下载 | 99热免费在线 | 欧美一区二区手机在线观看视频 | 男女做羞羞高清视频免费 | 亚洲国产欧洲精品路线久久 | 亚洲成年网站 | 日韩精品一区二区三区视频 | 97成人在线 | 天堂在线最新版资源www | 亚洲四区 | 欧洲a级片 | 台湾精品视频在线播放 | 成人精品视频网站 | 亚洲女人18毛片水真多 | 亚洲天堂在线观看视频 | 欧美日韩一区二区在线观看 | 亚洲国产精品成人综合色在线婷婷 | 亚洲tv精品一区二区三区 |