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