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