am188EM在便攜式心電監(jiān)護儀中的應(yīng)用
在世界著名的醫(yī)療儀器制造商設(shè)計生產(chǎn)的心電監(jiān)護儀中,很多選用的是Motorola公司的MC6800/68000,;隨著技術(shù)的進步,,DSP也成為新選擇。然而,,MC6800/68000等微處理器需要較多的外圍控制芯片協(xié)同工作才能發(fā)揮其優(yōu)異的性能,,組成系統(tǒng)時結(jié)構(gòu)比較復(fù)雜,同時,,它需要專用的開發(fā)軟件和開發(fā)工具,,這都給開發(fā)應(yīng)用帶來一定的難度。DSP在大規(guī)模數(shù)據(jù)和事務(wù)管理方面性能并不是最佳的,,它對外圍器件的要求也較高,,同時,也需要專用開發(fā)軟件和開發(fā)工具,,這都在一定程度上制約了它在某些方面的應(yīng)用,。
嵌入式處理器從一定程度上克服了上述缺陷,使我們在使用處理器時又多了一種選擇,,在設(shè)計便攜式心電監(jiān)護儀時我們選用了AMD公司的am188EM處理器,。
am188EM的主要特點:
(1) 與Intel公司的x86系列處理器在指令上完全兼容,可以借助于Microsoft公司的宏匯編工具MASM或其它編程語言在PC機上很方便地開發(fā)應(yīng)用軟件,。
(2) 可選擇16MHz,、25MHz、33MHz,、40MHz的工作頻率,,鎖相環(huán)(PLL)倍頻技術(shù)的應(yīng)用和優(yōu)化的指令處理過程使處理器運行速度成倍提高。
(3) 處理器片內(nèi)集成一個全雙工的同步串行通信口和一個全雙工的異步通信口,同步串口可同時連接兩個外設(shè),,異步串口與RS-232通信口標準兼容,。
(4)處理器片內(nèi)集成一個中斷控制器,,與標準的中斷控制器8259完全兼容,,單獨工作時可管理5個外部中斷源,也可以與外部標準的中斷控制器8259級聯(lián),,管理更多的中斷源,。
圖1為系統(tǒng)組成框圖。人體心電信號通過導(dǎo)線輸入到模擬部分,,在模擬部分放大,、A/D轉(zhuǎn)換后經(jīng)光電耦合電路輸出到數(shù)據(jù)采集部分。數(shù)字化的心電信號在數(shù)據(jù)采集部分經(jīng)過預(yù)處理后被am188EM讀取,,am188EM對心電數(shù)據(jù)作出分析,、計算,一方面輸送到顯示控制部分去顯示,,另一方面送往數(shù)據(jù)資料存儲管理部分保存,,如果發(fā)現(xiàn)異常信號,通過顯示器和聲光報警電路發(fā)出報警,。通過通信口,,am188EM可以與計算機通信,也可以用普通串行打印機打印監(jiān)護報告,。
模擬部分主要完成心電信號的擷取,、放大、A/D轉(zhuǎn)換,、光電耦合等功能,,如圖2所示。由于人體皮膚的阻抗很大,,心電信號又很微弱,,再加上周圍環(huán)境的電磁噪聲很強,心電信號預(yù)放大電路使用了高輸入阻抗,、高共模抑制比,、低噪聲的儀表運算放大器INA128,以利于采集人體微弱的心電信號,;預(yù)放大的心電信號通過壓控增益放大器作必要的增益調(diào)整后,,再經(jīng)電平調(diào)整,輸出到串行ADC進行A/D轉(zhuǎn)換,,之后心電數(shù)據(jù)通過光電耦合輸出到數(shù)據(jù)采集部分作進一步處理,。
am188EM對心電放大器增益的控制主要通過它的同步串行通信口進行。am188EM通過此口輸出串行的控制數(shù)據(jù),光電耦合后經(jīng)串行DAC轉(zhuǎn)換成壓控增益放大器的控制電壓,,從而調(diào)整整個心電放大器的增益,。出于對患者安全的考慮,在模擬部分采用浮地技術(shù),,系統(tǒng)電源通過隔離DC-DC變換器向模擬部分提供±5V電源,,所有進出模擬部分的信號均通過光電耦合器與其它部分耦合。
數(shù)據(jù)采集部分主要完成心電信號的數(shù)字濾波,、波形整形,、壓縮等功能。通過簡單的數(shù)字濾波,,濾除50Hz工頻干擾和大于1KHz的高頻干擾,,消除心電波形上的“毛刺”,然后運用特定的心電數(shù)據(jù)壓縮算法,,對整形后心電數(shù)據(jù)進行壓縮,,壓縮后的心電數(shù)據(jù)和壓縮前的心電數(shù)據(jù)分別緩沖到先進先出存儲器(FIFO)。當FIFO中緩沖一定數(shù)量的心電數(shù)據(jù)后,,數(shù)據(jù)采集電路在am188EM的第一個中斷輸入腳INT0上發(fā)出一個負向脈沖,,從而觸發(fā)am188EM進入中斷服務(wù)程序。在中斷服務(wù)程序中,,程序設(shè)置am188EM中集成的第一個DMA通道DMA0的源地址(指向FIFO),、目標地址(指向內(nèi)部隨機存儲器的心電波形緩沖區(qū))、數(shù)據(jù)數(shù)量等參數(shù),然后啟動DMA0,,使FIFO中緩沖的心電數(shù)據(jù)在不占用處理器時間的情況下,,高速輸入處理器所控制的內(nèi)部隨機存儲器。
數(shù)據(jù)資料存儲管理部分主要實現(xiàn)異常心電數(shù)據(jù)以及病人一般資料的存儲和管理,,另外,,整個系統(tǒng)應(yīng)用軟件的存儲和管理也由這部分完成。數(shù)據(jù)資料存儲管理部分的核心是一大容量的閃速存貯器(FLASH)29F040,容量為512KB,,與程序存貯器28C64復(fù)合占用am188EM的高端地址,。
如圖3所示,程序存儲器28C64與閃速存貯器29F040是通過am188EM的可編程I/O口的0位PIO0控制邏輯電路實現(xiàn)地址復(fù)用的,。當PIO0被置為“1”時,, 28C64的片選信號隨am188EM的高端地址片選信號UCS變化而變化,29F040的片選信號則保持高電平,,于是am188EM便能對程序存貯器28C64進行操作,;當PIO0被置為“0”時,29F040的片選信號隨am188EM的高端地址片選信號UCS變化而變化,,28C64的片選信號保持高電平,,am188EM對程序存儲器28C64的操作便被禁止而只能對29F040進行操作,。通常在系統(tǒng)上電時,由于PIO0被復(fù)位為“1”,,處理器總是能夠?qū)?8C64操作,,從其中讀取指令而完成啟動引導(dǎo)過程。
顯示控制部分主要實現(xiàn)心電信號波形和相關(guān)的圖形,、字符的顯示,,它由數(shù)字邏輯電路、視頻存儲器以及必要的模擬電路組成,。
為了保證所顯示的心電信號波形的穩(wěn)定性,,只有在視頻掃描的幀回掃間期才可以刷新心電信號波形數(shù)據(jù),,這實現(xiàn)起來有一定的困難,。考慮到視頻掃描的幀回掃間期很短且較難以捕捉,,我們將幀同步信號輸入到am188EM的第二個中斷輸入腳INT1,,當幀回掃間期到來時,幀同步信號觸發(fā)am188EM,,使之響應(yīng)中斷,,在中斷服務(wù)程序中,程序設(shè)置am188EM中集成的第二個DMA通道DMA1的源地址(指向內(nèi)部隨機存儲器的心電波形緩沖區(qū)),、目標地址(指向視頻存儲器),、數(shù)據(jù)數(shù)量等參數(shù),然后啟動DMA1,使心電波形數(shù)據(jù)在不占用處理器時間的情況下,、高速地傳輸?shù)揭曨l存儲器,。
am188EM片內(nèi)集成一個全雙工的異步通信口,它的數(shù)據(jù)格式(包括起始位,、停止位,、數(shù)據(jù)位、奇偶校驗位等)與標準RS-232通信口完全兼容,,僅需要作簡單的電平轉(zhuǎn)換,,將數(shù)字邏輯的+5V轉(zhuǎn)換為RS-232的-10V、將數(shù)字邏輯的0V轉(zhuǎn)換為RS-232的+10V即可,。電平轉(zhuǎn)換的接口電路種類很多,,功能與應(yīng)用的復(fù)雜程度也各不相同。我們選用的是Maxim公司的MAX202CPA,,它具有體積小,、功耗低、外圍電路簡單(僅需要四個0.1mF的電容),、可*性高等優(yōu)點,。
由于am188EM提供獨立的20條地址總線和多條由內(nèi)部集成的可編程地址譯碼器譯碼產(chǎn)生的片選信號,,所有的外圍電路直接使用這些地址總線和片選信號,因此,,它的外圍電路部分的設(shè)計十分簡單,,如圖4所示。
由于am188EM與Intel公司的x86系列處理器在指令上完全兼容,,因此可以借助Microsoft公司的宏匯編工具或其它編程語言在PC機上很方便地編寫系統(tǒng)的應(yīng)用軟件,。系統(tǒng)軟件的編制采用模塊化結(jié)構(gòu),對于硬件的各個功能塊編寫了類似于Windows 95/98系統(tǒng)的設(shè)備驅(qū)動程序,。
系統(tǒng)軟件主要分為:
1,、數(shù)據(jù)采集模塊,它主要通過DMA完成從數(shù)據(jù)預(yù)處理電路讀取預(yù)處理后的ECG各導(dǎo)聯(lián)的波形數(shù)據(jù),。
2,、ECG波形參數(shù)計算模塊,它主要根據(jù)獲得的各導(dǎo)聯(lián)的ECG波形數(shù)據(jù)計算出ECG的各種參數(shù)如P,、R波高,,P-R間期,R波群寬度,,ST段的高低等,。
3、智能診斷模塊,,它主要根據(jù)臨床心血管疾病專家數(shù)據(jù)庫,,對ECG的表現(xiàn)作出初步診斷。
4,、顯示驅(qū)動模塊,,它主要配合顯示控制電路完成ECG波形及字符、圖形的顯示,。
5,、通信模塊,它主要通過異步串行通信口實現(xiàn)與PC的各種通信,,包括輸出系統(tǒng)的各種檢測數(shù)據(jù)和從PC機輸入各種系統(tǒng)指令和資料,。
6、增益控制模塊,,它主要根據(jù)ECG的波高參數(shù)自動調(diào)整系統(tǒng)模擬部分主放大器的增益,,以得到最佳的ECG波形。
在組織整機系統(tǒng)軟件時,,考慮到儀器在用戶使用過程中智能診斷程序的升級問題,,特地安排了EEPROM-FLASH的程序存儲結(jié)構(gòu)。在EEPROM中,,僅存儲系統(tǒng)引導(dǎo)程序和基本I/O程序(BIOs),,當儀器開機時,,首先進入EPROM中的引導(dǎo)程序,引導(dǎo)程序查看FLASH中的標志位及串行通信口,,若FLASH中無應(yīng)用程序,,則提示用戶通過PC機下載應(yīng)用程序,或當發(fā)現(xiàn)串行通信口接收到PC機的升級應(yīng)用程序的指令,,則從PC機中下載程序并存儲于FLASH中,;若FLASH中有應(yīng)用程序并且串行通信口未接收到PC機的升級應(yīng)用程序的指令,引導(dǎo)程序?qū)⒁龑?dǎo)CPU執(zhí)行FLASH中的程序,。
雖然am188EM應(yīng)用非常方便,、簡單,但是有幾個問題要加以注意,,否則,,易造成處理器不運行、死機甚至燒毀,。
⑴ 當單片使用am188EM時,,它的HOLD片腳一定接地,,否則處理器將被掛起而不能運行程序,。
⑵同步數(shù)據(jù)就緒片腳(SRDY)和異步數(shù)據(jù)就緒片腳(ARDY)如果有一個或全部未使用時,未使用的片腳一定要接地,。
⑶ 不可屏蔽中斷輸入腳在不使用時一定要接地,。
⑷ 如果使用集成晶振為處理器提供系統(tǒng)時鐘,那么信號應(yīng)通過X1腳輸入,,令X2腳浮空,。
⑸ 所有的未使用的輸出片腳要保持浮空,不能拉高或拉低,。
⑹由于系統(tǒng)復(fù)位后執(zhí)行的第一條指令從0FFFF0h地址處讀取,,因此必須在此處設(shè)置一條跳轉(zhuǎn)指令,使處理器跳轉(zhuǎn)到軟件的入口處執(zhí)行程序,。