本文設計了一個具有數字化、信息化特征的心電信號處理系統(tǒng)。該系統(tǒng)以 32 位高速 ARM 處理器為硬件平臺,以實時操作系統(tǒng)作為軟件平臺,對硬件系統(tǒng)的資源進行了調度和分配,達到了對心電信號進行實時處理的效果,并且實現了對心電信號的實時顯示、實時存儲等功能。
據統(tǒng)計,我國目前有縣及縣級以上醫(yī)院1.3萬家,醫(yī)療機械總數達17.5萬臺,加上一些專業(yè)心臟疾病治療機構,我國目前每年心臟疾病的門診量約在一千萬人次以上。根據國家衛(wèi)生部《全國衛(wèi)生信息化發(fā)展規(guī)劃綱要》的目標,在2010年要基本實現醫(yī)院的數字化和信息化。所以未來醫(yī)療器械市場對新型醫(yī)療設備的市場空間巨大,特別是擁有數字化和信息化特征的心電信號處理系統(tǒng)具有廣闊的應用前景和實用價值。本文就是介紹的一種基于ARM的心電信號處理系統(tǒng)設計。
系統(tǒng)總體設計
本文所介紹的系統(tǒng)的主要功能是對心電信號進行實時的處理和傳輸,系統(tǒng)原理框圖如圖1所示。
圖1 系統(tǒng)原理框圖
心電信號通過電極提取進入模擬處理模塊,在模擬處理部分經過放大和濾波處理后,提高了信號的強度和信噪比。信號經過量化后轉換成數字信號,進入數字處理模塊,在以ARM處理器為核心的數字處理模塊中,心電信號被保存在一個緩沖區(qū)中,經過實時操作系統(tǒng)的調度后,通過USB通道傳遞到PC上,PC的軟件模塊包含了對USB通道數據的接收和對心電信號的處理,經過處理后的心電信號進一步提高了信噪比,并顯示在屏幕上,從而達到協助醫(yī)生診斷心臟疾病的目的。
1 S3C44B0X處理器
S3C44B0X微處理器是Samsung公司專為便攜式設備提供的高性能和高性價比的微控制器解決方案,使用32位的低功耗RISC內核ARM7TDMI,采用0.25μm CMOS工藝制造,支持新型總線結構SAMBAII(Samsung ARM CPU embedded Microcontroller Bus Architecture)。同時,S3C44B0X在ARM7TDMI核的基礎上,擴展了一系列通用外圍器件,使系統(tǒng)成本及外圍器件數口降至最低,這些功能部件可以分為CPU單元、系統(tǒng)時鐘管理單元、存儲單元和系統(tǒng)功能接口單元。
片上集成的主要功能有:在ARM7TDMl基礎上增加8KB的Cache;外部擴充存儲器控制器(FP/EDO/SDRAM控制,片選邏輯);LCD控制器最大支持256色的DSTN,并帶有1個LCD專用DMA通道;2個通用DMA通道、2個帶外部請求引腳的DMA通道;2個帶有握手協議的DART: 1個SIO;1個I2C總線控制器;5個PWM定時器及1個內部定時器;看門狗定時器;71個通用可編程I/O口,8個外部中斷源;功耗控制模式有正常、低、休眠和停止;8路10位ADC;具有日歷功能的RTC(實時時鐘);PLL時鐘發(fā)生器。
2 實時操作系統(tǒng)μC/OS-II
μC/OS-II是一個完整的、多移植、可固化、可裁剪的占先式實時多任務內核。μC/OS-II是用ANSI的C語言編寫的,包含一小部分匯編語言代碼,使之可供不同架構的微處理器使用。至今,從8位到64位,μC/OS-II已在超過40種不同架構的微處理器上運行。世界上已經有很多領域都使用了μC/OS-II。
μC/OS-II是一個“實時內核”,使用這個內核可以使得應用程序的設計和擴展變得容易,而且不需要大的改動就可以增加新的功能。通過將應用程序分割成若干個獨立的任務,RTOS使得應用程序的設計過程大大簡化。
硬件系統(tǒng)設計
1 UART異步串行接口設計
在本文中,心電數據都是通過USB通道傳送到PC的,但是由于USB接口的復雜度,在調試USB器件時需要使用到異步串行接口。而且在某些老式的PC上不能使用或安裝USB驅動程序時,異步串行接口可以作為一種備用的低速傳輸方式,這樣也增加了系統(tǒng)的可擴展性。
圖2是在心電信號處理系統(tǒng)中帶有RS232電平轉換的S3C44B0X的串行接口電路連接圖。在圖中,RS232電平轉換芯片為MAX3232,其RxD0、TxD0和RxD1、TxD1分別連接S3C44B0X的第99、100和103、104引腳。
圖2 串口部分連接圖
2 USB設備接口電路設計
由于USB協議的復雜性,USB設備控制器必須能夠檢測、反應USB端口事件,提供數據存儲方式的功能。考慮到性價比和技術資料等因素,在本系統(tǒng)中選擇了支持USB1.1協議的PHILIPS公司生產的PDIUSBD12芯片。
圖3是PDIUSBD 12與S3C44B0X的硬件連接圖。在圖中,USBD 12的D0~D7腳分別連接S3C44B0X的數據總線D0~D7,A0連接S3C44B0X的地址總線ADR0 ,A0是地址位,當A0=1時,選擇命令指令;A0=0,選擇數據。J8是USB從接口(slave),可以通過USB電纜連接到PC的USB口。
圖3 USB接口電路
3 FLASH ROM電路設計
在心電信號處理系統(tǒng)中,S3C44B0X是硬件部分的中央處理器,而實時操作系統(tǒng)μC/OS-II是硬件資源的調度中心,它就存放在FLASH ROM中,在每次系統(tǒng)初始化之后,由S3C44B0X將其復制到SDRAM中后,再進行應用程序的執(zhí)行。
在本系統(tǒng)中使用的是SST公司生產的容量為1M×16bit的多用途FLASH存儲器SST39VF160。ARM與FLASH接口電路如圖4所示。
圖4 ARM與FLASH接口電路
當S3C44B0X復位時,它立即從0x00000000地址處開始取指令執(zhí)行。因此,系統(tǒng)啟動代碼放在了地址0x00000000處,并把定位在0x00000000處的存儲器稱為BOOT ROM,在ARM系統(tǒng)中,通常都采用能夠快速讀取并方便重新寫入的Flash ROM作為BOOT ROM。處理器對Flash ROM的接口不需要任何軟件上的設置,在系統(tǒng)第一次上電時,CPU就可對Flash ROM進行讀取了。
4 片外主存SDRAM的接口電路設計
在實時操作系統(tǒng)μC/OS-II中,每個任務都有獨立的堆棧,并且是由連續(xù)的內存空間組成。在心電信號的傳輸過程中,還需要一個緩沖區(qū)進行數據的存儲,包括系統(tǒng)軟件運行所需要的堆棧等。這些都需要系統(tǒng)的主存來分配空間。
S3C44B0X內部只有8KB的緩存,沒有能用來運行程序和存放臨時數據的RAM,所以必須外接SDRAM作為片外主存。在本文中,采用的是ICS公司生產的容量為1Mb×16×4Bank的IS42S16400。S3C44B0X與SDRAM的連接圖如圖5所示
圖5 S3C44B0X與SDRAM的連接圖
軟件系統(tǒng)設計
為了實現了對心電信號的量化和對數據的處理和傳輸,充分的利用μC/OS-II的實時性,并使軟件系統(tǒng)具有良好的可重用性,為以后對系統(tǒng)功能的擴展提供條件,本系統(tǒng)軟件設計如圖6所示。
圖6 軟件系統(tǒng)設計流程圖
抗干擾設計
心電信號傳輸到PC機端后,需要顯示到屏幕上,形成心電圖。在心電信號處理系統(tǒng)中采用的12導聯在屏幕上表現為12個心電波形,每一個波形都包含著特定的信息,但是要得到接近于理想的心電波形,就必須對信號進行預處理。
從測量技術上來說,心電信號屬于強噪聲背景下的低頻微弱信號,幅度為10μV~5mV,主要的頻率范圍為0.05~100Hz,因此,在心電信號的檢測、提取、放大及記錄過程中,有來自人體自身的干擾,如肌電干擾,也有來自外界的干擾如工頻干擾等。這些干擾使系統(tǒng)的信噪比下降,甚至會淹沒微弱的有效心電信號。因此,需要進行信號預處理以消除各種干擾。本文使用自適應噪聲抵消器來進行預處理,如圖7所示。
圖7 自適應噪聲抵消器消除噪聲的結構圖
結束語
實驗表明,本文設計的基于ARM的心電信號處理系統(tǒng),對信號的采集和處理部分采用的軟硬件模塊化設計,提高了心電信號檢測的精度。設計的以ARM處理器為核心的軟硬件系統(tǒng)和USB通信接口,提高了系統(tǒng)的穩(wěn)定性和可靠性,達到了預期的技術指標,為設計新型的心電信號處理設備提供了理論基礎和依據,此系統(tǒng)也將為心臟病變的診斷發(fā)揮重要作用。