基于單片機(jī)在醫(yī)學(xué)信號(hào)檢測(cè)儀
1 引 言
傳統(tǒng)的檢測(cè)儀器大多由硬件電路來完成,不僅功能單一,而且開發(fā)周期長,不易維護(hù)。隨著微電子技術(shù)和信息技術(shù)的高速發(fā)展,醫(yī)學(xué)檢測(cè)儀器正向組合式、多功能、智能化和微型化方向發(fā)展。現(xiàn)代數(shù)字部件的快速發(fā)展為醫(yī)學(xué)檢測(cè)儀提供了強(qiáng)有力的支持,醫(yī)學(xué)檢測(cè)儀器都無一例外地采用了微處理器來增強(qiáng)其功能。廣泛地應(yīng)用微處理器芯片能增強(qiáng)儀器的智能化程度,提高其穩(wěn)定性和數(shù)據(jù)處理的精確性,使醫(yī)學(xué)信號(hào)的采集、處理、通信一體化,并具有自診斷、自校驗(yàn)等一系列優(yōu)點(diǎn)。
ATMEL公司新推出的AT90系列AVR單片機(jī)是很引人注目的一款微處理器。這種芯片基于新的RISC(Reduced Instruction Set Computer)結(jié)構(gòu),在設(shè)計(jì)上采用了流水線的結(jié)構(gòu),在執(zhí)行前一條指令的時(shí)候,同時(shí)取出下一條指令,它的FLASH以及強(qiáng)大的外圍接口能力使它成為目前最流行的單片機(jī)之一。
本文采用的高性能微處理器芯片Atmega163,利用結(jié)構(gòu)化、模塊化程序設(shè)計(jì)的思想,實(shí)時(shí)地對(duì)8路人體生理信號(hào)進(jìn)行采樣,對(duì)數(shù)據(jù)實(shí)行壓縮和優(yōu)化處理,以115 200 bps的速率和上位PC機(jī)進(jìn)行串行數(shù)據(jù)傳輸。
2 硬件構(gòu)成
2.1 微處理器及其特點(diǎn)
Atmega163是ATMEL公司推出的高檔系列產(chǎn)品,是基于AVRRISC的低功耗CMOS8位單片機(jī)。在外部晶振為8MHz時(shí),一條指令的執(zhí)行時(shí)間僅為125ns,這種AVR單片機(jī)的結(jié)構(gòu)有利于用C語言編程,從而能高效地開發(fā)出目標(biāo)產(chǎn)品。為了對(duì)目標(biāo)代碼大小進(jìn)行優(yōu)化,AVR單片機(jī)采用了大型快速存取寄存器文件和快速單周期指令。通過在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條指令,Atmega163可以取得接近1MIPS/MHz的性能。它將32個(gè)工作寄存器和豐富的指令集聯(lián)結(jié)在一起,使所有的工作寄存器都和ALU(ArithmeticLogic Unit,計(jì)算機(jī)CPU中的算術(shù)邏輯單元)直接相連,允許在1個(gè)時(shí)鐘周期內(nèi)執(zhí)行的單條指令同時(shí)訪問2個(gè)獨(dú)立的寄存器。Atmega163具有16K字節(jié)的Flash存儲(chǔ)器,512字節(jié)在線可編程E2PROM,1024字節(jié)SRAM,外圍有全雙工UART串行通訊接口。此外,它還有2個(gè)具有比較模式的可預(yù)分頻的8位定時(shí)器/計(jì)數(shù)器,1個(gè)可預(yù)分頻,具有比較、捕捉功能的16位定時(shí)器/計(jì)數(shù)器。
Atmega163單片機(jī)提供了一個(gè)性能良好的10位模數(shù)轉(zhuǎn)換器。如圖1所示,A口為8路模擬信號(hào)輸入端,如果AD功能禁止,則A口是一個(gè)8位雙向I/O口。8路人體生理信號(hào)如心電、心音、頸動(dòng)脈、脈搏、體溫等,經(jīng)過放大、濾波、去噪處理后,分別與A口的8個(gè)引腳相連。微處理器采集數(shù)據(jù)時(shí),通過控制ADMUX寄存器進(jìn)行通道路號(hào)選擇,讀取的數(shù)據(jù)由CPU作進(jìn)一步處理。
2.2 基于RS-232的串行通訊接口電路
如圖2所示,與上位PC機(jī)連接的J1應(yīng)用了RS-232的5條信號(hào)線,其中,TX為PC機(jī)的發(fā)送信號(hào)線,RX為接收信號(hào)線,CGND為地線。而RTS和DTR不產(chǎn)生信號(hào),僅在初始化時(shí)產(chǎn)生高低電平,RTS設(shè)為+12V,DTR設(shè)為-12V。三極管Q1的作用是使信號(hào)反相,并輸出RS-232電平。
電氣的安全性,是醫(yī)學(xué)測(cè)量儀必須考慮的問題。傳統(tǒng)的醫(yī)學(xué)測(cè)量儀一般采用隔離放大器,對(duì)模擬信號(hào)進(jìn)行隔離,這種隔離技術(shù)的不足之處是:(1)必須為不同的模擬信號(hào)采用不同的隔離技術(shù);(2)采用這種隔離措施會(huì)在信號(hào)線性度、共模抑制以及頻率響應(yīng)等方面引起問題,通常使電路穩(wěn)定性變差,代價(jià)較高,且使電路變得更為復(fù)雜。而選用數(shù)字信號(hào)隔離技術(shù),則可以克服上述缺陷。
光電隔離器6N137是把發(fā)光二極管與光敏管組合封裝在一起的器件(見圖2中方框內(nèi))。由于兩個(gè)部分之間是電氣隔離的,光電隔離器件能圓滿解決信號(hào)隔離與電平匹配的問題。通過這一隔離電路,可使PC機(jī)系統(tǒng)電源和測(cè)量儀器部分的電源完全隔離開來,從而保證醫(yī)學(xué)儀器的安全性,防止電擊危險(xiǎn),減小患者漏電流,同時(shí)也減少了計(jì)算機(jī)對(duì)檢測(cè)電路的干擾。
3 軟件設(shè)計(jì)
軟件流程圖如圖3所示。軟件部分采用模塊化、結(jié)構(gòu)化程序設(shè)計(jì)方法,利用匯編語言編寫,有關(guān)模塊功能如下。
3.1 初始化
設(shè)置SP初值,把程序用到的內(nèi)部RAM區(qū)清0,給數(shù)據(jù)采集通道計(jì)數(shù)器賦初值(8),設(shè)置波特率(115 200)。
3.2 數(shù)據(jù)采集與A/D轉(zhuǎn)換
按預(yù)先確定的采樣順序?qū)Ω髀沸盘?hào)進(jìn)行采樣,由于A/D轉(zhuǎn)換需要一定的時(shí)間,所以,延時(shí)等待的時(shí)間應(yīng)略大于轉(zhuǎn)換完成時(shí)間。前一路轉(zhuǎn)換完成后,應(yīng)立即啟動(dòng)下一路開始轉(zhuǎn)換。由于模擬信號(hào)經(jīng)A/D轉(zhuǎn)換后,成為10位數(shù)字信號(hào),所以,我們用2個(gè)字節(jié)來存儲(chǔ)該數(shù)據(jù),高字節(jié)存儲(chǔ)高8位數(shù)據(jù),低字節(jié)高位存儲(chǔ)最低的兩位數(shù)據(jù),后6位補(bǔ)0。同時(shí),把采樣通路號(hào)加在最低3位字節(jié)上,以便與上位PC機(jī)通訊時(shí),上位機(jī)能及時(shí)準(zhǔn)確地判斷該數(shù)據(jù)來自哪一通道,從而方便地對(duì)各路數(shù)據(jù)作相應(yīng)處理。最后把轉(zhuǎn)換完成的數(shù)據(jù),按先后順序依次存儲(chǔ)在內(nèi)RAM里。
3.3 數(shù)據(jù)的發(fā)送
利用R0間接尋址的方式,把RAM里的數(shù)據(jù)取出,按115 200 bps的波特率逐個(gè)字節(jié)向PC機(jī)發(fā)送,發(fā)送完8通道共16個(gè)字節(jié)后,進(jìn)行下一輪的采樣。
3.4 上位PC機(jī)接收數(shù)據(jù)程序
上位機(jī)通信程序由兩部分組成:初始化子程序,中斷數(shù)據(jù)接收子程序。
4 結(jié)束語
由上面提供的硬件電路和軟件,制作成串行通信接口電路,能可靠、穩(wěn)定地工作,實(shí)現(xiàn)多路信號(hào)的采集、轉(zhuǎn)換和數(shù)據(jù)無差錯(cuò)傳輸,同時(shí),能夠滿足醫(yī)學(xué)儀器安全性的要求,為臨床人體生理信號(hào)測(cè)量,及病理診斷提供幫助。
評(píng)論