版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案精彩文檔精彩文檔本人聲明我聲明,本論文及其研究工作是由本人在導(dǎo)師指導(dǎo)下獨(dú)立完成的,在完成論文時(shí)所利用的一切資料均已在參考文獻(xiàn)中列出。作者:劉桂良簽字:時(shí)間:2008年6月基于S12單片機(jī)的血壓計(jì)的實(shí)現(xiàn)學(xué)生:劉桂良指導(dǎo)老師:張軍香董韶鵬摘要人體血壓是人重要的生命參數(shù)之一,目前人體血壓的測量多采用間接測量,測量方法主要有示波法、柯氏音法等。其中示波法因其測量方便、抗干擾能力強(qiáng)等優(yōu)點(diǎn)被當(dāng)前主流的自動電子血壓計(jì)所采用。本文主要研究使用S12單片機(jī)實(shí)現(xiàn)人體血壓的測量,測量方法為示波法。本論文研究的主要內(nèi)容有:對人體血壓的測量系統(tǒng)進(jìn)行詳細(xì)的分析,對血壓測量實(shí)驗(yàn)系統(tǒng)進(jìn)行改進(jìn),統(tǒng)一實(shí)驗(yàn)箱與單片機(jī)的接口;編寫單片機(jī)程序,完成對人體血壓測量的控制與血壓值的計(jì)算;實(shí)現(xiàn)單片機(jī)與上位機(jī)的通信,上位機(jī)軟件對血壓數(shù)據(jù)進(jìn)行圖形顯示,編寫軟件計(jì)算血壓值。同時(shí),本論文開發(fā)的實(shí)驗(yàn)系統(tǒng)為壓力測量與算法的學(xué)生實(shí)驗(yàn)提供了一個(gè)良好的實(shí)驗(yàn)平臺。在血壓測量算法的研究和實(shí)現(xiàn)測量系統(tǒng)的基礎(chǔ)上,設(shè)計(jì)實(shí)驗(yàn),編寫實(shí)驗(yàn)指導(dǎo)書,學(xué)生可以根據(jù)實(shí)驗(yàn)指導(dǎo)書,完成對人體血壓的測量,學(xué)習(xí)并掌握 Freescale單片機(jī)的原理及應(yīng)用方法,培養(yǎng)學(xué)生的學(xué)習(xí)和動手的能力。關(guān)鍵詞:單片機(jī),示波法,LabVIEW實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案精彩文檔精彩文檔BloodPressureMonitorBasedonS12MCUAuthor:LiuGuiliangTutor:ZhangJunxiang,DongShaopengAbstractHumanbloodpressureisoneofperson'smostimportantlifeparameters,itsmeasuringtechniquevariesandmainlyindirectly,amongwhichOscillometricandKeshi-Lawincluded.Thisarticlemainlydealswiththeoscillometricmethodwhichisgenerallyusedintheautomaticbloodpressuremonitordesignsforitsconvenienceandstronganti-disturbancecapacity.Thepapercarriesonthedetailedanalysistothehumanbodybloodpressure'smeasurementsystem,theimprovementtotheoriginalexperimentsystemandtheunifiedmonolithicintegratedcircuitseriesexperiment'sconnection.Itresearchesmoreonthecontrolofthemeasurementsystemandthecalculationofbloodpressure.Alsointhispaper,asoftwareisusedtofinishthecommunicationbetweenthemeasurementsystemandthecomputeronwhichthemeasuredataisdisplayedgraphicallyandthebloodpressureiscalculatedtoo.ThedevelopmentoftheS12MCUbloodpressuremeasurementsystemprovidesaniceexperimentsplatformforstudents.Usingtheexperimentguidebook,studentscanaccomplishthehumanbloodpressuremeasurement,mastertheapplicationmethodoftheFreescalemicrocontrollers.Theexperimentcanfostertheirabilitytostudyandwork.Keywords:Microcontrollers,Oscillometric,LabVIEW目錄1緒論 1 論文選題意義 1 TOC\o"1-5"\h\z國內(nèi)外研究現(xiàn)狀分析 2……血壓及血壓測量方法 2..…示波法血壓測量基本原理 3.…最新成果和發(fā)展動態(tài) 5……論文構(gòu)成及研究方案 5……研究目標(biāo) .5.......研究內(nèi)容 7.......研究方法 7.......2系統(tǒng)總體設(shè)計(jì) 9.......血壓測量系統(tǒng) .9.......系統(tǒng)組成 .9.......TOC\o"1-5"\h\z工作原理 10血壓測量算法研究 10提取脈搏波包絡(luò)曲線 10血壓值計(jì)算 13本章小結(jié) 143硬件設(shè)計(jì) 1.5.....硬件設(shè)計(jì)概述 15血壓測量實(shí)驗(yàn)箱 15單片機(jī)系統(tǒng) 17血壓測量電路模塊分析 17氣閥、氣泵控制電路 17氣袖壓力測量電路 18脈搏波提取電路 20電源及整流電路 21實(shí)驗(yàn)箱接口標(biāo)準(zhǔn)化 22本章小結(jié) 234軟件設(shè)計(jì) 2.5.....單片機(jī)軟件設(shè)計(jì) 25軟件流程 25模塊設(shè)計(jì) 28上位機(jī)軟件設(shè)計(jì) 51串口通信 51數(shù)據(jù)處理 53本章小結(jié) 625實(shí)驗(yàn)設(shè)計(jì) 6.3.....實(shí)驗(yàn)?zāi)康?63實(shí)驗(yàn)內(nèi)容 63實(shí)驗(yàn)要求 64實(shí)驗(yàn)說明 64本章小結(jié) 64結(jié)論 65......致謝 66......參考文獻(xiàn) 6.7......附錄 .6.8......附錄A 單片機(jī)血壓測量C語言程序 68附錄B壓力測量與算法實(shí)驗(yàn)指導(dǎo)書 81實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案精彩文檔精彩文檔實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案精彩文檔精彩文檔1緒論論文選題意義Motorola單片機(jī)是國際上應(yīng)用非常廣泛的單片機(jī)口】。它具有功能全、品種多、性價(jià)比高、功耗低、應(yīng)用方便、速度高等優(yōu)點(diǎn),使其在家電、通信、智能化測控系統(tǒng)、儀器儀表、汽車電子等領(lǐng)域獲得廣泛應(yīng)用。 Freescale(飛思卡爾半導(dǎo)體公司)一直是Motorola公司的半導(dǎo)體分支,2004年7月從Motorola分離出來成為獨(dú)立企業(yè),Motorola單片機(jī)半導(dǎo)體業(yè)務(wù)就由飛思卡爾接管負(fù)責(zé),改為Freescale單片機(jī)。為了使實(shí)驗(yàn)者熟練掌握 Freescale單片機(jī)的原理、使用方法,開設(shè)了一系列的Freescale單片機(jī)實(shí)驗(yàn),并在此基礎(chǔ)上開發(fā)了針對不同對象的實(shí)驗(yàn)箱,以配合實(shí)驗(yàn)者進(jìn)行測量、控制及算法實(shí)現(xiàn)等實(shí)驗(yàn)。實(shí)驗(yàn)中使用Freescale單片機(jī)S12系列中的MC9s12DG128實(shí)驗(yàn)系統(tǒng),MC9s12DG128是Freescale公司推出的S12系列單片機(jī)中的一款增強(qiáng)型16位微控制器。具集成度高,片內(nèi)資源豐富,接口模塊包括SPI、SCI、I2C、A/D、PWM等,能很好地滿足學(xué)生實(shí)驗(yàn)的需要。Freescale單片機(jī)系列實(shí)驗(yàn)包括四種:溫度測量與控制、電機(jī)轉(zhuǎn)速測量與控制、血壓測量與算法、電子秤實(shí)驗(yàn)?;赟12單片機(jī)的血壓計(jì)的實(shí)現(xiàn)是為其中的壓力測量與算法實(shí)驗(yàn)開發(fā)的一個(gè)實(shí)驗(yàn)平臺,通過該實(shí)驗(yàn)可掌握氣體壓力傳感器的原理及使用方法,學(xué)習(xí)人體血壓測量方法。國內(nèi)外研究現(xiàn)狀分析血壓及血壓測量方法血壓是指血液在血管內(nèi)流動時(shí),對血管壁產(chǎn)生的單位面積側(cè)壓 卷]。通常說的血壓是指動脈血壓,用血壓計(jì)在臂動脈上測得的數(shù)值來表示,以mmHg或kPa為單位,包括收縮壓和舒張壓。當(dāng)心臟收縮時(shí),動脈內(nèi)的壓力最高,此時(shí)壓力稱為收縮壓;心臟舒張時(shí),血液從動脈彈性回縮產(chǎn)生的壓力稱為舒張壓。工程上把相對于真空所測得的壓力稱為絕對壓力,把相對于大氣壓所測得的壓力稱為標(biāo)準(zhǔn)壓力。人體血壓值是相對于大氣壓而言的,為血壓的標(biāo)準(zhǔn)壓力值。對健康成人,在心血管系統(tǒng)中不同部位的正常血壓值不同,以臂動脈為例,收縮壓一般在95?140mmHg(12.67?18.67kPa)范圍內(nèi),平均值為110?120mmHg(14.67?16kPa);正常舒張壓為60?90mmHg(8?12kPa),平均值為80mmHg(10.67kPa)。動脈血壓一般以分?jǐn)?shù)形式表示,如120/80mmHg,分子代表收縮壓,分母代表舒張壓。人體血壓測量分為直接(有創(chuàng))測量和間接(無創(chuàng))測量兩大類 I31。直接測量一般采用導(dǎo)管法來測定血管或心臟內(nèi)的壓力, 壓力傳感器可放置在導(dǎo)管的頂端直接將壓力轉(zhuǎn)換成電量,也可通過充滿液體的導(dǎo)管將壓力傳遞到體外的壓力傳感器轉(zhuǎn)換成電量。問接測量則是在體外用各種轉(zhuǎn)換方法及信號處理技術(shù)測量血壓,其測量方法很多,比較典型的有柯氏音法和示波法。柯氏音法的操作方法為:給袖帶充氣,使動脈血流完全堵斷,此時(shí)用聽診器聽血管的波動聲是沒有的;然后慢慢放氣至聽到脈搏音,這時(shí)的壓力為高壓即收縮壓;繼續(xù)放氣通過聽診器能聽到強(qiáng)而有力的脈搏音,且慢慢變輕,直至聽到很平穩(wěn)較正常脈搏音,此時(shí)血管完全未受擠壓,對應(yīng)的壓力為低壓,即舒張壓??率贤ㄟ^對袖帶加壓和聽脈搏音來測量血壓實(shí)現(xiàn)了人體血壓的間接測量,對人類醫(yī)學(xué)的貢獻(xiàn)很大,人們?yōu)榱思o(jì)念柯氏,稱此法為柯氏音法??率弦舴ù嬖谝恍┕逃械娜秉c(diǎn):一是確定舒張壓比較困難;二是此法憑人的視覺和聽覺,帶有主觀因素,除非專業(yè)醫(yī)生,一般人很難測準(zhǔn)血壓。曾經(jīng)也出現(xiàn)了多種柯氏音法電子血壓計(jì),試圖實(shí)現(xiàn)血壓的自動檢測,但很快發(fā)現(xiàn)這類血壓計(jì)未能克服柯氏音法的固有缺點(diǎn),誤差大,重復(fù)性差。示波法的測量過程與柯氏音法類似,仍采用氣袖來阻斷上臂動脈血流,由于心搏血液動力學(xué)作用,在氣袖壓力上將重疊與心搏同步的壓力波動,即脈搏波。當(dāng)氣袖壓力遠(yuǎn)高于收縮壓時(shí),脈搏波消失。隨著袖套壓力下降,脈搏開始出現(xiàn)。當(dāng)袖套壓力從高于收縮壓降到收縮壓以下時(shí),脈搏波會突然增大,當(dāng)氣袖壓力降至平均壓時(shí)達(dá)到最大值。然后又隨袖套壓力下降而衰減。示波法血壓測量就是根據(jù)脈搏波振幅與氣袖壓力之間的關(guān)系來計(jì)算血壓的。示波法具有較好的抗干擾能力,能比較可靠地判斷血壓、實(shí)現(xiàn)血壓的自動檢測,因而成為測量血壓的主流方法。本論文中的血壓計(jì)也采用這種方法。示波法血壓測量基本原理示波法是臨床上各類監(jiān)護(hù)儀、電子血壓計(jì)廣泛采用的血壓測量技術(shù)。將血壓計(jì)氣袖加壓至阻斷臂動脈血流,然后緩慢放氣,人們發(fā)現(xiàn)氣袖中的壓力除隨放氣而下降之外還存在一個(gè)振蕩,并稱其為脈搏波,其波形如圖1.1。圖1.1脈搏波圖1.1中波形幅度最大處對應(yīng)的氣袖壓力稱動脈血管平均壓, 收縮壓和舒張壓可由各種算法計(jì)算得到。脈搏波信號相對氣袖壓力下降信號為高頻信號,在氣袖緩慢放氣的過程中對氣袖壓力信號進(jìn)行濾波即可得到脈搏波信號。示波法測量的關(guān)鍵技術(shù)是:1)放氣過程中對氣袖壓力和脈搏波信號的準(zhǔn)確采集;2)收縮壓和舒張壓的計(jì)算。信號采集中涉及到濾波和抗干擾技術(shù),而血壓計(jì)算算法的優(yōu)劣與否,則是決定血壓測量準(zhǔn)確與否的關(guān)鍵。目前收縮壓和舒張壓的判別準(zhǔn)則很多,但無公認(rèn)的判別準(zhǔn)則,多是基于統(tǒng)計(jì)學(xué)規(guī)律,而不是基于個(gè)體特征。文獻(xiàn)檢索到的收縮壓和舒張壓經(jīng)驗(yàn)判別準(zhǔn)則,大致分為兩類,一類是歸一化準(zhǔn)則(幅值系數(shù)法),另一類是突變點(diǎn)準(zhǔn)則(拐點(diǎn)法)。歸一化準(zhǔn)則就是將脈搏波信號的幅值與信號的最大幅值相比進(jìn)行歸一化處理, 通過確定的收縮壓和舒張壓的歸一化值來識別收縮壓和舒張壓。突變點(diǎn)準(zhǔn)則認(rèn)為,收縮壓和舒張壓對應(yīng)著脈搏波幅度發(fā)生突變的點(diǎn),即識別脈搏波包絡(luò)的拐點(diǎn)為收縮壓或舒張壓。最新成果和發(fā)展動態(tài)隨著人們對人體生理信號特征認(rèn)識的深入,以及大量新技術(shù)應(yīng)用于生物醫(yī)學(xué)工程領(lǐng)域,近年來血壓測量技術(shù)又有了新的發(fā)展。人們對脈搏波特征的研究進(jìn)一步深入,探索無創(chuàng)血壓測量的新思路。隨著心臟的問歇性收縮和舒張,血流壓力、血流速度和血流量的脈動以及血管壁的變形和振動在血管系統(tǒng)中的傳播,統(tǒng)稱為脈搏波或脈搏波在血管中的傳播。本質(zhì)角度講柯氏音聽診法、示波法等血壓測量方法都可稱之為基于脈搏波特征的測量方法,但是都存在一定的缺陷。脈搏波是一種低頻成分為主的生理信號,可通過對數(shù)字微分信號的特殊處理來實(shí)現(xiàn)。焦學(xué)軍、房興業(yè)提出了利用脈搏波特征參數(shù)連續(xù)測量血壓的方法, 具有較高的測量精度[4];空軍第四研究所的俞夢孫院士正在進(jìn)行有關(guān)脈搏波傳導(dǎo)時(shí)間( PWTT)法和血壓關(guān)系的研究,顯示出很好的前景[5]o隨著人們對人體生理信號特征認(rèn)識的進(jìn)一步加深,各種技術(shù)如數(shù)字信號處理、模式識別應(yīng)用于生物醫(yī)學(xué)工程領(lǐng)域,無創(chuàng)血壓測量裝置必將向著更加方便可行、準(zhǔn)確可靠的方向發(fā)展。論文構(gòu)成及研究方案研究目標(biāo)本課題的研究目標(biāo)是對血壓計(jì)測量系統(tǒng)進(jìn)行硬件改造, 用標(biāo)準(zhǔn)接口實(shí)現(xiàn)血壓計(jì)與單片機(jī)的互連;采用S12單片機(jī)對血壓計(jì)測量系統(tǒng)中的氣泵和氣閥進(jìn)行控制, 并測出需要的壓力信息;單片機(jī)對壓力測量數(shù)據(jù)進(jìn)行處理并顯示人體的血壓值,同時(shí)實(shí)現(xiàn)單片機(jī)與計(jì)算機(jī)的互連,圖形化顯示測量數(shù)據(jù)并計(jì)算人體動脈血壓值。研究內(nèi)容本課題的主要研究內(nèi)容如下:1、對原有血壓測量電路進(jìn)行測量,繪出電路圖,分析電路結(jié)構(gòu),用標(biāo)準(zhǔn)接口實(shí)現(xiàn)血壓計(jì)與單片機(jī)互連,完成血壓計(jì)系統(tǒng)的硬件電路改造。2、設(shè)計(jì)單片機(jī)測量與控制程序,包括氣泵、電磁閥開關(guān)的控制,壓力數(shù)據(jù)的測量,血壓的計(jì)算,血壓值的顯示,與上位機(jī)的通信等。3、編寫上位數(shù)據(jù)處理軟件,實(shí)現(xiàn)單片機(jī)與上位機(jī)軟件的聯(lián)調(diào),完成測量數(shù)據(jù)的圖形顯示。4、設(shè)計(jì)實(shí)驗(yàn)并完成實(shí)驗(yàn)指導(dǎo)書的編寫。研究方法1、血壓測量系統(tǒng)硬件改造血壓測量系統(tǒng)的硬件主要包括氣袖壓力測量模塊、脈搏波信號提取模塊、氣泵控制模塊、電磁閥控制模塊。首先對這些模塊進(jìn)行詳盡分析,清楚各自模塊的工作原理,對電路進(jìn)行優(yōu)化或修正,然后統(tǒng)一實(shí)驗(yàn)箱與單片機(jī)的接口電路。2、單片機(jī)軟件設(shè)計(jì)對應(yīng)于硬件的各個(gè)部分,單片機(jī)軟件采用模塊化設(shè)計(jì)。分別設(shè)計(jì)各模塊子程序,如A/D轉(zhuǎn)換子程序、氣泵控制子程序、電磁閥控制子程序、壓力采集子程序、壓力數(shù)據(jù)顯示子程序、微機(jī)通信子程序等等。在主函數(shù)中初始化硬件并調(diào)用各子程序,完成各部分的協(xié)調(diào)工作,最終測量并計(jì)算出人體血壓值,對收縮壓和舒張壓進(jìn)行顯示。3、上位機(jī)軟件實(shí)現(xiàn)單片機(jī)與上位機(jī)通信,上位機(jī)通過串口軟件接收單片機(jī)發(fā)送的壓力測量數(shù)據(jù),并保存為文本格式。編寫上位機(jī)數(shù)據(jù)處理軟件,對測量數(shù)據(jù)進(jìn)行圖形顯示,進(jìn)行算法研究,通過上位機(jī)軟件計(jì)算血壓值,與單片機(jī)所計(jì)算出的血壓值進(jìn)行比較分析。4、實(shí)驗(yàn)設(shè)計(jì)作為實(shí)驗(yàn)室建設(shè)的重要部分,為學(xué)生實(shí)驗(yàn)編寫實(shí)驗(yàn)指導(dǎo)書,給出常用程序的函數(shù)接口參數(shù),供學(xué)生參考使用。可提供血壓測量算法,而血壓計(jì)算程序由學(xué)生自已完成。5、論文構(gòu)成根據(jù)畢業(yè)設(shè)計(jì)所進(jìn)行的研究與完成的工作,本論文的主要構(gòu)成包括系統(tǒng)總體設(shè)計(jì)、硬件設(shè)計(jì)、軟件設(shè)計(jì)以及實(shí)驗(yàn)設(shè)計(jì)四個(gè)部分。在接下來的幾章中,本文將會陸續(xù)介紹本次本科畢業(yè)設(shè)計(jì)的設(shè)計(jì)過程以及研究成果。第2章將從課題的總體設(shè)計(jì)入手,對系統(tǒng)總體設(shè)計(jì)進(jìn)行分析,對血壓測量算法進(jìn)行研究。第3章將介紹血壓測量系統(tǒng)的硬件構(gòu)成,對血壓測量試驗(yàn)箱每個(gè)硬件模塊進(jìn)行分析,并介紹單片機(jī)系統(tǒng)的組成。第4章將介紹血壓測量系統(tǒng)的軟件設(shè)計(jì),包括單片機(jī)控制軟件及上位機(jī)數(shù)據(jù)處理軟件的設(shè)計(jì)。第5章是則是根據(jù)學(xué)生實(shí)驗(yàn)的特點(diǎn),對學(xué)生實(shí)驗(yàn)進(jìn)行了方案設(shè)計(jì)。2系統(tǒng)總體設(shè)計(jì)本章主要介紹血壓測量系統(tǒng)的硬件組成和工作原理,研究血壓測量算法血壓測量系統(tǒng)系統(tǒng)組成血壓測量系統(tǒng)主要包括氣袖、氣閥驅(qū)動與控制模塊、氣泵驅(qū)動與控制模塊、氣袖壓力測量模塊(壓力傳感器直接輸出)、脈搏波信號提取模塊(壓力傳感器輸出信號濾波放大)與A/D轉(zhuǎn)換模塊、血壓值顯示模塊、單片機(jī)與上位機(jī)通信模塊以及單片機(jī)控制模塊MC9s12DG128單片機(jī)系統(tǒng),如圖2.1所示圖2.1血壓測量系統(tǒng)組成工作原理血壓測量系統(tǒng)進(jìn)行血壓測量時(shí),將氣袖縛于上臂或腕部,氣袖充氣至壓力比受試者收縮壓高約20mmHg,阻斷動脈內(nèi)血流,在氣袖放氣過程中,動脈受到的壓力逐漸下降,當(dāng)壓力低于收縮壓時(shí),開始有血液流動,引起動脈壁的振動,當(dāng)氣袖內(nèi)壓力足夠小時(shí),就會產(chǎn)生脈搏波。當(dāng)氣袖內(nèi)壓力低于舒張壓時(shí)血液可以順利流過,脈搏波消失。脈搏波振動通過氣袖中空氣的壓力變化傳導(dǎo)到傳感器,將壓力信號轉(zhuǎn)換為電信號。血壓測量過程為:單片機(jī)發(fā)送控制信號,關(guān)閉電磁閥,控制氣泵加壓至阻斷動脈血液流動,然后關(guān)閉氣泵控制氣袖自然放氣。氣袖壓力信號(壓力傳感器輸出信號)和脈搏波信號(濾波電路輸出信號)經(jīng)A/D轉(zhuǎn)換送入單片機(jī),對數(shù)據(jù)進(jìn)行處理,計(jì)算血壓值并顯示。上位機(jī)通過申行總線接收單片機(jī)采集的數(shù)據(jù),實(shí)現(xiàn)圖形化顯示,計(jì)算血壓值。血壓測量算法研究本畢業(yè)設(shè)計(jì)中的血壓測量算法采用典型的基于示波法的血壓測量原理。目前示波法測量血壓主要對提取出來的脈搏波進(jìn)行數(shù)據(jù)處理,因此示波法測量血壓首先提取脈搏波,然后對脈搏波包絡(luò)曲線進(jìn)行數(shù)據(jù)分析,求得血壓值。提取脈搏波包絡(luò)曲線以血壓值為120/80mmHg為例:1、血壓值為120/80mmHg的血壓波信號和血壓計(jì)袖帶壓力下降曲線,如圖2.2
圖2.2血壓波和血壓計(jì)袖帶壓力曲線2、袖帶中的壓力加至阻斷肱動脈血流,然后緩慢排氣,袖帶對肱動脈的壓力隨之緩慢下降,當(dāng)袖帶壓力下降到動脈最大血壓(收縮壓)以下時(shí),動脈血管中的血液恢復(fù)流動,并產(chǎn)生脈搏,脈搏所產(chǎn)生的壓力脈沖(脈搏波)和袖帶壓力相疊加,輸入氣體壓力傳感器,轉(zhuǎn)變?yōu)橄鄳?yīng)的電信號,如圖2.3。圖2.3氣體壓力傳感器輸入信號
3、將傳感器壓力曲線中的脈搏波(形狀如圖1.1)提取出來并與同時(shí)刻的袖帶壓力相對應(yīng),如圖2.4180 160 140 120 100XO60 40'■!-111h.J;niniHy圖2.4袖帶壓力對應(yīng)的脈搏波4、用袖帶壓力對應(yīng)的脈搏波脈沖峰值形成脈搏波的包絡(luò)線, 如圖2.5。根據(jù)此包絡(luò)線,運(yùn)用相應(yīng)的血壓計(jì)算算法,即可得到人體的血壓值(具體見下節(jié))波波HUllIIg圖2.5脈沖峰值包絡(luò)線綜上所述,壓力傳感器的輸出為兩類壓力信號的疊加,一為袖帶壓力信號,另一為脈搏波壓力信號。脈搏波信號頻率大約為1Hz,袖帶壓力信號頻率大約為0.04Hz,可視為直流。為得到脈搏波信號,需要對壓力傳感器信號進(jìn)行濾波(隔直) 。可以采用軟件直接對壓力傳感器信號進(jìn)行數(shù)字高通濾波,也可設(shè)計(jì)硬件電路實(shí)現(xiàn)模擬濾波,本實(shí)驗(yàn)系統(tǒng)采用的為后者。血壓值計(jì)算脈搏波峰值包絡(luò)曲線提取出來之后,只要應(yīng)用各種計(jì)算方法,就可以得到血壓值,目前的主流方法包括兩種,一是幅值系數(shù)法,另一為拐點(diǎn)法。1、幅值系數(shù)法收縮壓判據(jù)的確定:在放氣過程中脈搏波幅度包絡(luò)線的上升段,當(dāng)某一個(gè)脈搏波的幅度與最大幅度之比大于指定值(Ks)時(shí),就認(rèn)為此時(shí)對應(yīng)的氣袖壓力為收縮壓。舒張壓判據(jù)的確定:在脈搏波幅度包絡(luò)線的下降段,當(dāng)某一個(gè)脈搏波的幅度與最大幅度之比小于指定值(Kd)時(shí),就認(rèn)為此時(shí)對應(yīng)的氣袖壓力為舒張壓。根據(jù)上海醫(yī)用儀表廠多年的研究成果,取Ks0.58,Kd0.772、拐點(diǎn)法根據(jù)脈搏波的產(chǎn)生原理,當(dāng)氣袖內(nèi)壓力下降到等于收縮壓時(shí),血液由阻斷至開始流動。當(dāng)氣袖內(nèi)壓力下降到低于舒張壓時(shí),血液將完全流通。因此在氣袖壓力等于收縮壓或舒張壓附近,因血液流動速度的變化將產(chǎn)生強(qiáng)烈的渦流,氣袖內(nèi)壓力振蕩幅度將有明顯突變。采用這一原理計(jì)算血壓就稱為拐點(diǎn)法。拐點(diǎn)法計(jì)算血壓值,對于脈搏波的測量精度要求較高,可以采用兩種方法。一種方法是尋找脈搏波包絡(luò)幅值變化最大的兩個(gè)點(diǎn),對應(yīng)的氣袖壓力可視為收縮壓或舒張壓;另一種是采用數(shù)學(xué)的方法,用多項(xiàng)式擬和脈搏波信號曲線,計(jì)算曲線的拐點(diǎn),所對應(yīng)的壓力值即為收縮壓或舒張壓。本章小結(jié)本章對血壓測量系統(tǒng)的總體結(jié)構(gòu)組成及其工作原理進(jìn)行了說明,對人體血壓測量算法進(jìn)行了研究。3硬件設(shè)計(jì)本章介紹血壓測量系統(tǒng)的硬件組成,并對血壓測量的硬件電路進(jìn)行分析。硬件設(shè)計(jì)概述血壓測量系統(tǒng)硬件包括實(shí)驗(yàn)箱和單片機(jī)系統(tǒng)兩部分。實(shí)驗(yàn)箱接收控制信號,實(shí)現(xiàn)氣袖的充放氣,并敏感壓力的變化,將壓力測量數(shù)據(jù)傳送至單片機(jī)系統(tǒng)。單片機(jī)系統(tǒng)發(fā)出氣泵氣閥的控制信號,采集壓力數(shù)據(jù),是血壓測量系統(tǒng)的核心,完成對血壓測量的控制及血壓值的計(jì)算等工作。血壓測量實(shí)驗(yàn)箱實(shí)驗(yàn)箱前面板有電源接口、血壓測量氣袖以及單片機(jī)與實(shí)驗(yàn)箱的接口等。實(shí)驗(yàn)箱的后面板上安裝了所有血壓測量元件。后面板又分為上載板和下載板,下載板上分布著主要工作元件如氣泵、氣閥、變壓器、氣體壓力傳感器,實(shí)驗(yàn)箱各部分分布如圖3.1所示博感;哥力海施輸出U-Jjr匚口J1.F載航氣是匚口
w受IS*re,JQIllir~T~lr~T~lItI1r~rrJ3J4JS| 1植感馨|鯉陽II植感馨上軟板JIJ?上軟板mrn圖3.1血壓測量實(shí)驗(yàn)箱部件分布圖上載板是血壓測量實(shí)驗(yàn)箱的電路核心,由左至右分布有氣泵氣閥控制電路、電源整流電路、脈搏波提取電路等。其電路原理圖如圖3.2所示。力十圖3.2上載板電路原理圖單片機(jī)系統(tǒng)本實(shí)驗(yàn)中采用天津工業(yè)大學(xué)開發(fā)的MC9s12DG128實(shí)驗(yàn)系統(tǒng),對血壓測量進(jìn)行控制并實(shí)現(xiàn)血壓值的計(jì)算與顯示、與上位機(jī)通信等。MC9S12DG128具有16位中央處理器(HCS12CPU)、128KBFlashEEPROM、8KBRAM、2KBEEPROM,以及定時(shí)器通道、鍵盤中斷和A/D通道等接口。MC9S12DG128實(shí)驗(yàn)系統(tǒng)可以直接與CodeWarrior相連,具有下載程序、在線單步運(yùn)行、斷點(diǎn)調(diào)試、連續(xù)運(yùn)行、修改寄存器和存儲單元等特點(diǎn),可以很方便的進(jìn)行血壓測量的軟件設(shè)計(jì)。血壓測量電路模塊分析氣閥、氣泵控制電路氣閥、氣泵控制電路原理相同,電路結(jié)構(gòu)相似,均通過光電耦合方式對各自的工作回路進(jìn)行開關(guān)控制,以氣閥控制電路為例,如圖3.4,J1端接單片機(jī)氣閥控制輸入,J3接氣閥驅(qū)動。imRWimRW當(dāng)單片機(jī)輸入數(shù)字信號0,3.4當(dāng)單片機(jī)輸入數(shù)字信號0,J1的上管腳接單片機(jī)5V電源,下管腳接氣閥控制信號為低電平0V,此時(shí)光電耦合管控制氣閥工作回路接通,氣閥關(guān)閉;當(dāng)單片機(jī)輸入數(shù)字信號1,為高電平5V,此時(shí)光電耦合管控制氣閥工作回路斷開,氣閥打開。氣泵、氣閥的控制回路輸入電壓最大為5V,最小為0V,回路電阻R1為200Q,最大工作電流為25mA,對單片機(jī)實(shí)驗(yàn)系統(tǒng)的電流要求很小,電路的設(shè)計(jì)是合理的。氣袖壓力測量電路氣袖壓力直接由氣體壓力傳感器測量得到,實(shí)驗(yàn)系統(tǒng)采用的氣體壓力傳感器型號為MPX5050DP,OUT1為傳感器信號輸出,同時(shí)作為脈搏波提取電路的輸入,如圖3.5MPX5050DP元件參數(shù)為:1、工作電壓:5V(4.75~5.25V);2、工作電流:7.0mA,最大10mA;3、工作溫度:0~85C;4、測量范圍:0-50kPa(1kPa=7.5Hg,0~375mmHg);5、輸出電壓范圍:0.2~4.7V;6、最小偏移量(工作電壓5V):0.2V(0.088~0.313V);■PX5O50iDP圖3.5壓力傳感器電路在定電壓5V的驅(qū)動下,此壓力傳感器的靈敏度為12mV/mmHg,其壓力變化與電壓輸出轉(zhuǎn)移函數(shù)為:Vout=Vs*(0.018*P+0.04)±ERROR (3.1)Vout代表壓力傳感器的電壓輸出,單位為V;Vs為給定的定電壓,P代表氣體壓力,單位為kPa;ERROR為誤差值,單位為V。壓力傳感器的線性測量范圍為0?50kPa,相當(dāng)于0~375mmHg的壓力,而實(shí)驗(yàn)系統(tǒng)中氣袖壓力范圍為0~180mmHg;輸出電壓為0.2~4.7V,單片機(jī)A/D轉(zhuǎn)換最大電壓為5V,傳感器輸出不需要接放大電路。因此MPX5050DP適合用作血壓測量系統(tǒng)的壓力傳感器。
脈搏波提取電路根據(jù)脈搏波信號提取的原理,只要對氣袖壓力進(jìn)行信號調(diào)理即可得到需要的脈搏波信號,由于脈搏的頻率約為1Hz,氣袖內(nèi)壓力下降頻率約為0.04Hz,因此要獲得脈搏波信號,調(diào)理電路需要對原始信號進(jìn)行濾波,高通截止頻率約為 1Hzo每個(gè)人脈搏波振蕩幅度略有不同,一般而言為 1~3mmHg壓力變化,轉(zhuǎn)換為電信號為12?36mV,因此在進(jìn)行A/D轉(zhuǎn)換之前必須對其進(jìn)行放大。脈搏波提取電路如圖3.6所示,采用Multisim軟件交流分析可知,其截止頻率約為1Hz,放大倍數(shù)約為21(R3/R4+1),能滿足脈搏波信號提取的要求,如圖3.7■ GNDJ6JH]? OUT(_C3INVCCHDR1X4I山與IACAji.i]vslsFgqur力”(Ilr)FfMUrribtJlr.i圖3.7脈搏波提取電路交流分析3.2.4電源及整流電路實(shí)驗(yàn)箱輸入工頻電壓實(shí)驗(yàn)箱輸入工頻電壓220V經(jīng)變壓器輸出兩路6V電壓,經(jīng)整流后作為氣閥、氣泵的驅(qū)動電源,如圖3.8V14J5囪HDR1X3圖3.8實(shí)驗(yàn)電源及整流電路氣泵氣閥的元件型號及參數(shù)分別為:1、氣泵:KPM27A (生產(chǎn)公司:KOGEELEC.CO)工作電壓:DC6V工作電流:小于430mA2、氣閥:KOGESD0503工作電壓:DC3.5V~6V電源整流電路輸出約為5.4V,氣泵氣閥均能正常工作。實(shí)驗(yàn)箱接口標(biāo)準(zhǔn)化由于實(shí)驗(yàn)室建設(shè)需要,必須標(biāo)準(zhǔn)化實(shí)驗(yàn)箱與單片機(jī)的接口,不再使用原實(shí)驗(yàn)箱面板上復(fù)雜的接線電路,在實(shí)驗(yàn)箱面板上加工并安裝標(biāo)準(zhǔn)9針接口,內(nèi)部電路引線連接方式如圖3.9,管腳定義見表3.1。
表3.1標(biāo)準(zhǔn)接口定義DB9引腳號信號特性信號類型隹T號方向(對實(shí)驗(yàn)箱而百)1氣象控制數(shù)字量輸入2氣閥控制數(shù)字量輸入3氣袖壓力輸出模擬量輸出4脈搏波壓力輸出模擬量輸出5GND接地-95V電源-本章小結(jié)了詳細(xì)的分析,完成了血壓測量實(shí)驗(yàn)箱與S12單片機(jī)實(shí)驗(yàn)系統(tǒng)接口的標(biāo)準(zhǔn)化本章介紹了人體血壓測量系統(tǒng)的硬件組成,對硬件電路的每個(gè)模塊的電路結(jié)構(gòu)進(jìn)行本章介紹了人體血壓測量系統(tǒng)的硬件組成,對硬件電路的每個(gè)模塊的電路結(jié)構(gòu)進(jìn)行4軟件設(shè)計(jì)人體血壓測量的軟件設(shè)計(jì)包括單片機(jī)軟件設(shè)計(jì)和上位機(jī)軟件設(shè)計(jì)兩個(gè)部分, 單片機(jī)軟件完成血壓測量過程的控制和血壓值的計(jì)算,并將測量得到的壓力數(shù)據(jù)發(fā)送至上位機(jī)。上位機(jī)軟件將接收的壓力數(shù)據(jù)存儲下來,進(jìn)行數(shù)據(jù)處理和血壓測量算法的實(shí)現(xiàn),計(jì)算血壓值。單片機(jī)軟件設(shè)計(jì)單片機(jī)軟件采用模塊化設(shè)計(jì)方法,將血壓測量系統(tǒng)中使用到的每個(gè)單片機(jī)硬件模塊獨(dú)立出來,分別編寫子函數(shù),在控制主程序中完成各個(gè)模塊的協(xié)調(diào)工作,完成血壓測量進(jìn)程的控制和人體血壓值的計(jì)算。采用模塊化設(shè)計(jì)方法,增強(qiáng)了軟件的可讀性,代碼的修改和維護(hù)相對簡單,有利于實(shí)驗(yàn)的設(shè)計(jì),只要給出每個(gè)函數(shù)模塊的接口參數(shù),學(xué)生可以很方便地調(diào)用已經(jīng)模塊化的代碼,而集中精力放在血壓值計(jì)算上面。軟件流程單片機(jī)血壓測量的基本過程為:初始化系統(tǒng)硬件(包括AD初始化,LED顯示初始化,定時(shí)器中斷初始化等),關(guān)電磁閥(電磁閥為常開)、開氣泵,氣袖充氣;當(dāng)壓力達(dá)到一定值時(shí),關(guān)氣泵;緩慢放氣(電磁閥仍關(guān)閉,自由漏氣) ,進(jìn)行數(shù)據(jù)測量與保存;當(dāng)氣壓降到一定值,開電磁閥放氣;完成數(shù)據(jù)處理,計(jì)算血壓值,進(jìn)行顯示。單片機(jī)軟件要完成對上述血壓測量的控制和血壓值的計(jì)算, 在壓力數(shù)據(jù)測量時(shí)還要將測量數(shù)據(jù)發(fā)送至上位機(jī)軟件采用模塊化設(shè)計(jì),在主程序中對每個(gè)功能模塊進(jìn)行調(diào)用,主函數(shù)流程圖如圖4.1實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案圖4.1圖4.1軟件流程精彩文檔Main()實(shí)用標(biāo)準(zhǔn)文案實(shí)用標(biāo)準(zhǔn)文案精彩文檔精彩文檔模塊設(shè)計(jì)單片機(jī)軟件模塊主要包括:A/D轉(zhuǎn)換模塊、定時(shí)器模塊、數(shù)碼管顯示模塊、壓力數(shù)據(jù)測量模塊、血壓值計(jì)算模塊及通信模塊等。1、A/D轉(zhuǎn)換模塊A/D轉(zhuǎn)換模塊硬件概述S12單片機(jī)內(nèi)置了2個(gè)10位/8位的A/D模塊:ATD0和ATD1,通稱為模/數(shù)轉(zhuǎn)換器(ATD)0S12的ATD是逐次逼近型A/D轉(zhuǎn)換器,它內(nèi)置多路器,轉(zhuǎn)換精度為2LSB,無需外部采樣保持電路。ATD模塊具有如下特性:8位/10位精度可選擇;8位數(shù)字量轉(zhuǎn)換時(shí)間為6us,10位數(shù)字量轉(zhuǎn)換時(shí)間為7us;具有采樣緩沖器,放大器;可編程采樣時(shí)間;數(shù)據(jù)可選擇左/右對齊方式和無符號/有符號數(shù)據(jù)方式;轉(zhuǎn)換結(jié)束標(biāo)志和轉(zhuǎn)換結(jié)束中斷;外部觸發(fā)控制;模擬輸入的8個(gè)通道為復(fù)用方式,采用多通道掃描方式;模擬/數(shù)字輸入引腳復(fù)用;可選擇單次轉(zhuǎn)換模式或連續(xù)轉(zhuǎn)換模式
ATD模塊工作原理S12ATD工作時(shí),CPU向該模塊發(fā)出啟動命令,然后進(jìn)行采樣、 A/D轉(zhuǎn)換,最后將結(jié)果保存到相應(yīng)的寄存器。ATD模塊組成原理框圖如圖4.2所示。ATD模塊由模擬量前端的8選1多路轉(zhuǎn)換開關(guān),采樣緩沖器及放大器,逐次逼近式模擬量轉(zhuǎn)換、控制部分及轉(zhuǎn)換結(jié)果存儲等部分組成。每個(gè)A/D轉(zhuǎn)換都可通過9個(gè)相應(yīng)的寄存器對其進(jìn)行設(shè)置??倯驎r(shí)鐘時(shí)鐘分頻ATD時(shí)鐘總戲時(shí)鐘時(shí)鐘分頻ATD時(shí)鐘轉(zhuǎn)換完成中斷4 模塊和時(shí)序控制需存器轉(zhuǎn)換完成中斷4 模塊和時(shí)序控制需存器VRH因VRL國VDDAVSSAAN7/PAD7EAN6/PAD6EAN5/PAD5EAN4/PAD4EAN3/PAD3KAN2/PAD2EAN1/PAD1?VRH因VRL國VDDAVSSAAN7/PAD7EAN6/PAD6EAN5/PAD5EAN4/PAD4EAN3/PAD3KAN2/PAD2EAN1/PAD1?ANO/PADO因二二二二和模/數(shù)法換器采樣/保持比較器圖4.2ATD模塊的組成原理ATD寄存器說明ATD控制寄存器2——ATDCTL2ATDCTL2主要控制ATD的啟動、狀態(tài)標(biāo)志及上電模式。該寄存器用于啟動 ATD、觸發(fā)及控制ATD中斷。對該寄存器進(jìn)行寫操作時(shí),將中斷當(dāng)前的轉(zhuǎn)換過程。表4.1ATDCTL2讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Read/WriteADPUAFFCAWAIETRIGLEETRIGPETRIGEASCIEASCIF復(fù)位默認(rèn)值:00000000BASCIF:ATD轉(zhuǎn)換序列轉(zhuǎn)換結(jié)束標(biāo)志。只讀,ATD轉(zhuǎn)換完成時(shí)發(fā)生中斷,該位置1。ASCIE:ATD轉(zhuǎn)換序列轉(zhuǎn)換結(jié)束中斷使能控制位。用以控制ATD轉(zhuǎn)換結(jié)束后是否發(fā)生中斷,0表示禁止ATD中斷。ETRIGE:外部觸發(fā)使能控制位。該功能借助于引腳AN7,當(dāng)AN7接收到外部觸發(fā)時(shí),啟動A/D轉(zhuǎn)換,否則不進(jìn)行轉(zhuǎn)換,0表示忽略外部觸發(fā),即A/D轉(zhuǎn)換不受外部觸發(fā)控制。ETRIGP、ETRIGLE:AN7外部觸發(fā)方式選擇位,本實(shí)驗(yàn)中未使用到外部觸發(fā),不作說明。AWAI:等待狀態(tài)下ATD運(yùn)行使能控制位。0表示當(dāng)MCU進(jìn)行等待狀態(tài),ATD繼續(xù)運(yùn)行。AFFC:ATD標(biāo)志快速清除使能控制位。A/D轉(zhuǎn)換結(jié)束標(biāo)志的清除方式有兩種:自動消除和軟件清除。0表示ATD標(biāo)志通過軟件方式解除,即在讀取結(jié)果寄存器之前讀取寄存器ATDSTAT1的值,1表示當(dāng)A/D轉(zhuǎn)換結(jié)束后自動清除寄存器ATDSTAT1的CCFx位。ADPU:ATD使能控制位。相當(dāng)于一個(gè)開關(guān),用來啟動/禁止A/D轉(zhuǎn)換。1為啟動A/D轉(zhuǎn)換。ATD控制寄存器3——ATDCTL3ATDCTL3用于控制結(jié)果寄存器的映射,設(shè)置轉(zhuǎn)換序列長度,還可暫時(shí)凍結(jié) ATD模塊,尤其是確定ATD在BDM狀態(tài)下的行為。寫該寄存器將中斷當(dāng)前的轉(zhuǎn)換序列。表4.2ATDCTL3讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Read0S8CS4CS2CS1CFIFOFRZ1FRZ0Write-復(fù)位默認(rèn)值:00000000BFRZ0、FRZ1:背景調(diào)試凍結(jié)控制位。在背景調(diào)試模式下,經(jīng)常設(shè)一些斷點(diǎn),程序運(yùn)行到斷點(diǎn)便會停止,即為凍結(jié)。此時(shí)可控制A/D轉(zhuǎn)換是否進(jìn)行。00為繼續(xù)轉(zhuǎn)換,01為保留,10為完成轉(zhuǎn)換后凍結(jié),11為立刻凍結(jié)。FIFO:結(jié)果寄存器模式控制位。即A/D轉(zhuǎn)換結(jié)果是否映射到轉(zhuǎn)換序列。0表示結(jié)果寄存器沒有映射到轉(zhuǎn)換序列。S1C、S2C、S4C、S8C:轉(zhuǎn)換序列長度選擇位控制位。本實(shí)驗(yàn)中轉(zhuǎn)換序列長度為1,設(shè)置為0001。ATD控制寄存器4——ATDCTL4ATDCTL4用于選擇時(shí)鐘,選擇采樣轉(zhuǎn)換時(shí)間及選擇 8位/10位轉(zhuǎn)換方式,對ATDCTL4進(jìn)行寫操作將開始一個(gè)新的轉(zhuǎn)換,如果在轉(zhuǎn)換過程中對該寄存器進(jìn)行寫操作,將使ATD轉(zhuǎn)換中斷,一直到對ATDCTL5進(jìn)行寫操作為止。表4.3ATDCTL4讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Read/WriteSRES8SMP1SMP0PRS4PRS3PRS2PRS1PRS0復(fù)位默認(rèn)值:00000000BPRS0、PRS1、PRS2、PRS3、PRS4:A/D轉(zhuǎn)換預(yù)分頻設(shè)置控制位。該位用于選擇分頻系數(shù),從而選擇相應(yīng)的采樣頻率,總分頻系數(shù)為2*n+2,n為PRS4~PRS0代表的10進(jìn)制數(shù)值。SMP0、SMP1:采樣時(shí)間選擇控制位。00、01、10、11分另I」對應(yīng)2、4、8、16*A/D時(shí)鐘周期。ATD控制寄存器5——ATDCTL5表4.4ATDCTL5讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0ReadDJMDSGNSCANMULT0CCCBCAWrite復(fù)位默認(rèn)值:00000000BATDCTL5用于選擇轉(zhuǎn)換方式,選擇轉(zhuǎn)換通道,設(shè)置單/多通道轉(zhuǎn)換和單次/連續(xù)轉(zhuǎn)換模式及選擇對齊方式。寫寄存器ATDCTL5將會啟動一個(gè)新的轉(zhuǎn)換,如果寫該寄存器時(shí)ATD正在進(jìn)行轉(zhuǎn)換,則轉(zhuǎn)換將被中止。CA、CB、CC:采樣通道選擇控制位。當(dāng)MULT=0時(shí),用來選擇采樣通道;當(dāng)MULT=1時(shí)用來選擇開始轉(zhuǎn)換的起始通道。MULT:單/多通道A/D轉(zhuǎn)換選擇控制位。0為單通道選擇,無論用哪個(gè)通道進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換結(jié)果都存放在ATDDR0中;1為多通道轉(zhuǎn)換。SCAN:單次/連續(xù)A/D轉(zhuǎn)換模式選擇控制位。0為單次A/D轉(zhuǎn)換模式。DSGN:轉(zhuǎn)換結(jié)果有無符號控制位。0為轉(zhuǎn)換結(jié)果無符號。DJM:轉(zhuǎn)換結(jié)果對齊方式控制位。0為左對齊,1為右對齊。ATD狀態(tài)寄存器0——ATDSTAT0ATDSTAT0反映當(dāng)前的轉(zhuǎn)換通道、A/D轉(zhuǎn)換是否結(jié)束、寄存器是否被覆蓋以及是否有外部觸發(fā)事件發(fā)生。表4.5ATDSTAT0讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0ReadSCF0ETORFFIFOR0CC2CC1CC0Write----------復(fù)位默認(rèn)值:00000000BCC0、CC1、CC2:轉(zhuǎn)換計(jì)數(shù)器。指向一個(gè)將要轉(zhuǎn)換的通道,只讀。FIFO=0,CC0、CC1、CC2始終為0;FIFO=1,CC0、CC1、CC2用來循環(huán)計(jì)數(shù)。FIFOR:寄存器值覆蓋標(biāo)志位。當(dāng)前結(jié)果寄存器的值在讀出之前被寫入,CCFx(x=0~7)清零時(shí),該位置位。ETORF:外部觸發(fā)覆蓋標(biāo)志位。SCF:A/D轉(zhuǎn)換結(jié)束標(biāo)志位。SCAN=0,為單次轉(zhuǎn)換模式,當(dāng)轉(zhuǎn)換完成后置位;SCAN=1,連續(xù)轉(zhuǎn)換模式,第一次轉(zhuǎn)換完成后置位,當(dāng)AFFC=0,向SCF中寫1,可將該位清零。ATD狀態(tài)寄存器1——ATDSTAT1ATDSTAT1反映轉(zhuǎn)換序列中相應(yīng)轉(zhuǎn)換是否完成。Bit7~Bit0分別為CCF0~CCF7,只讀,1表示轉(zhuǎn)換結(jié)束。ATD結(jié)果寄存器——ATDDRxH和ATDDRxLATD模塊的結(jié)果寄存器是8個(gè)16位的寄存器。結(jié)果寄存器在普通模式下為只讀。各寄存器的高、低字節(jié)分別稱為ATDDRxH、ATDDRxL(其中,x=0~7對應(yīng)通道0~7),每個(gè)寄存器給出一個(gè)通道的轉(zhuǎn)換結(jié)果。ATD輸入使能寄存器一一ATDDIENBit7~Bit0對應(yīng)IEN7~IEN0。0表示相應(yīng)的數(shù)字信號輸入禁止;1表示相應(yīng)的數(shù)字信號輸入使能。(4)軟件編程A/D轉(zhuǎn)換模塊軟件編程主要包括A/D轉(zhuǎn)換初始化函數(shù)及A/D轉(zhuǎn)換值讀取函數(shù)。A/D轉(zhuǎn)換初始化voidATD_Init(void){
//ATDOInitATD0CTL3=0b00001000;ATD0CTL4=0b01100110;ATD0CTL5=0b10100000;連續(xù)A/D轉(zhuǎn)換模式,轉(zhuǎn)換結(jié)果無符號ATD0CTL2=0b11000000;CCFx位,啟動A/D轉(zhuǎn)換。//ATDIInit//持續(xù)轉(zhuǎn)換,序列轉(zhuǎn)換長度為//持續(xù)轉(zhuǎn)換,序列轉(zhuǎn)換長度為1〃分頻系數(shù)14,轉(zhuǎn)換精度10位//單通道A/D轉(zhuǎn)換,結(jié)果存放在ATD0DR0中;轉(zhuǎn)換結(jié)果右對齊//A/D轉(zhuǎn)換結(jié)束后自動清除寄存器ATD0STAT1的ATD1CTL4=0b01100110;ATD1CTL5=0b10100000;ATD1CTL2=0b11000000;A/D轉(zhuǎn)換值讀取函數(shù)unsignedintgetAD0(void){while(!ATD0STAT0_SCF); //等待轉(zhuǎn)換完成returnATD0DR0;}unsignedintgetAD1(void){while(!ATD1STAT0_SCF);returnATD1DR0;}2、定時(shí)器模塊(1)定時(shí)器模塊概述S12系統(tǒng)MCU的定時(shí)器模塊在HC12的標(biāo)準(zhǔn)定時(shí)器模塊(StandardTimerModule,TIM)基礎(chǔ)上增加了一些功能,加強(qiáng)了原來的輸入捕捉及脈沖累加器的一些功能,擴(kuò)大了應(yīng)用范圍,因此S12的定時(shí)器模塊稱為增強(qiáng)型定時(shí)器模塊(EnhancedCaptureTimerModule,ECT)。S12增強(qiáng)型定時(shí)器模塊ECT具有如下特點(diǎn):4個(gè)具有16位緩沖寄存器的輸入捕捉通道;4個(gè)8位脈沖累加器可以通過級聯(lián)形成2個(gè)16位脈沖累加器;1個(gè)具有4位預(yù)分頻器的16位遞減計(jì)數(shù)器;4個(gè)可選的延遲計(jì)數(shù)器用來增強(qiáng)輸入抗干擾能力(2)定時(shí)器工作原理本實(shí)驗(yàn)系統(tǒng)中A/D轉(zhuǎn)換結(jié)果的讀取采用查詢方式,采樣間隔(采樣頻率)由定時(shí)器決定,本軟件設(shè)計(jì)中采用ECT中1個(gè)具有4位預(yù)分頻器的16位遞減計(jì)數(shù)器(模數(shù)遞減計(jì)數(shù)器)來定時(shí),定時(shí)頻率為100Hz。模數(shù)遞減計(jì)數(shù)器(MDC)是S12微控制器ECT特有的。ECT既可以作為一個(gè)時(shí)基定時(shí)產(chǎn)生中斷,也可以用來產(chǎn)生控制信號。MDC是一個(gè)遞減16位計(jì)數(shù)器,其外圍配備了常寄存器MCCNT和預(yù)分頻器,它們分別為MDC提供定時(shí)常數(shù)和時(shí)鐘信號。當(dāng)MCCTL中的MCEN=0時(shí),MDC被復(fù)位成$FFFF,以避免在計(jì)數(shù)啟動的初期置位中斷標(biāo)志。MCEN置1,MDC啟動并從當(dāng)前值開始對預(yù)分頻器輸出的時(shí)鐘進(jìn)行遞減計(jì)數(shù),分頻系數(shù)為1、4、8、16可選,具體由MCCTL寄存器中的MCPR1和PCPR0確定。(3)定時(shí)器寄存器16位模數(shù)計(jì)數(shù)器控制寄存器一一MCCTL表4.6MCCTL讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0ReadMCZIMODMCRDMCL00MCENMCPR1MCPR0WriteICLATFLMC復(fù)位默認(rèn)值:00000000BMCZI:模數(shù)計(jì)數(shù)器向下溢出中斷使能位。0為中斷禁止,1為中斷使能。MODMC:模數(shù)方式使能位。0為單次計(jì)數(shù)方式,計(jì)數(shù)器從設(shè)定值遞減到0后停止;1為循環(huán)計(jì)數(shù)方式,當(dāng)計(jì)數(shù)器遞減回0后,加載最新設(shè)定值,并開始新一輪計(jì)數(shù)。RDMCL:模數(shù)讀取選擇位。0為返回模數(shù)計(jì)數(shù)器的當(dāng)前值,1為返回重新加載所用的常數(shù)。ICLAT:捕捉寄存器強(qiáng)制轉(zhuǎn)移控制位。FLMC:模數(shù)計(jì)數(shù)器強(qiáng)制加載控制位。該位只在模數(shù)計(jì)數(shù)器使(MCEN=1)時(shí)有效。0為無效,1為將模數(shù)寄存器的值加載到模數(shù)計(jì)數(shù)器,同時(shí)復(fù)位模數(shù)計(jì)數(shù)器的定時(shí)器。MCEN:模數(shù)遞減計(jì)數(shù)器使能位。當(dāng)MCEN=0時(shí),計(jì)數(shù)器被預(yù)置為$FFFF,以避免在計(jì)數(shù)器啟動的初期出現(xiàn)中斷標(biāo)志。0表示模數(shù)計(jì)數(shù)器禁止,1為模數(shù)計(jì)數(shù)器使能。MCPR1、MCPR0:模數(shù)計(jì)數(shù)器定時(shí)器分頻常數(shù)設(shè)定位。00、01、10、11分別對應(yīng)1、4、8、16分頻常數(shù)。16位模數(shù)計(jì)數(shù)器標(biāo)志寄存器一一MCFLG表4.7MCFLG讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0ReadMCZF000POLF3POLF2POLF1POLF0Write-------復(fù)位默認(rèn)值:00000000BMCZF:模數(shù)計(jì)數(shù)器溢出中斷標(biāo)志。遞減回0時(shí)置位,向該位寫1將清除該標(biāo)志,寫0無效。POLF3~POLF0:輸入首次捕捉極性標(biāo)志。只讀,寫操作無效,它們可選擇引發(fā)第一個(gè)捕捉動作的邊沿性的極性。0為下降沿,1為上升沿。16位模數(shù)遞減計(jì)數(shù)器寄存器一一MCCNT表4.8MCCNTMCCNT(H)Read/WriteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8MCCNT(L)Read/WriteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0復(fù)位默認(rèn)值:0000000000000000B對寄存器MCCNT應(yīng)按字訪問,分別對高位、低位字節(jié)的訪問可能會得到不同的結(jié)果。如果寄存器MCCNT中的RDMCL清零,對寄存器MCCNT的讀操作將返回計(jì)數(shù)器的當(dāng)前值;如果RDMCL置位,則將返回每次重新加載所用的常數(shù)。
MODMC=1時(shí),為允許模數(shù)方式,對MCCNT進(jìn)行寫操作將更新此寄存器的值,但計(jì)數(shù)器不會立即更新,必須等到計(jì)數(shù)器回0后重新加載。MODMC=0時(shí),為非允許模數(shù)方式,寫寄存器MCCNT將對定時(shí)器進(jìn)行清零,并用新值更新計(jì)數(shù)器,然后開始一次新的遞減計(jì)數(shù),減到 0時(shí)停止。(4)定時(shí)器軟件編程定時(shí)器軟件主要包括定時(shí)器的初始化及定時(shí)器中斷程序。定時(shí)器初始化模數(shù)計(jì)數(shù)器的初始化在系統(tǒng)初始化函數(shù)SYS_Init()中實(shí)現(xiàn)。voidSYS_Init(void){…MCCTL=0xc7; //定時(shí)器啟動MCCNT=5000; //定時(shí)1ms,100Hz}MCCTL=0xc7:定時(shí)器中斷使能,采用循環(huán)計(jì)數(shù)方式,模數(shù)計(jì)數(shù)器使能,16分頻常數(shù)。MCCNT=5000:由S12時(shí)鐘頻率為16MHz,定時(shí)頻率為:100Hz時(shí)鐘頻率 16000000100Hz2*分頻系數(shù)*MCCNT2*16*5000定時(shí)器中斷函數(shù)
建立定時(shí)器中斷,對中斷次數(shù)進(jìn)行計(jì)數(shù),計(jì)數(shù)值定義為全局變量mseco#pragmaCODE_SEGNON_BANKEDmsecoDisablelnterrupts;msec++;MCFLG_MCZF=1;EnableInterrupts;}//開中斷Disablelnterrupts;msec++;MCFLG_MCZF=1;EnableInterrupts;}//開中斷//累加計(jì)數(shù)//清除中斷溢出標(biāo)志位//開中斷#pragmaCODE_SEGDEFAULT3、數(shù)碼管顯示模塊(1)模塊概述數(shù)碼管顯示模塊主要完成血壓測量過程中氣袖內(nèi)壓力的實(shí)時(shí)顯示,血壓測量完成時(shí)對血壓值進(jìn)行顯示。LED數(shù)碼管顯示部分由兩個(gè)8段數(shù)碼管和2個(gè)1*8排針組成,原理圖如圖4.3圖4.3 數(shù)碼管顯示電路(2)軟件編程本實(shí)驗(yàn)系統(tǒng)采用A口作為LED編碼,B口作為LED位選控制。4個(gè)數(shù)碼管為一組,實(shí)現(xiàn)對壓力值(4位整數(shù))的實(shí)時(shí)顯示。constunsignedcharsgcode[20]={0x3f,6,0x5b,0x4f,0x66,0x6d,0x7d,7,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,//編碼//編碼//數(shù)碼管緩存區(qū)unsignedchardpbuf[4];voiddisled(intnum){chari;dpbuf[3]=(char)(num/1000); //千位TOC\o"1-5"\h\zdpbuf[2]=(char)((num-dpbuf[3]*1000)/100); //百位dpbuf[1]=(char)((num-dpbuf[3]*1000-dpbuf[2]*100)/10); //十位dpbuf[0]=(char)(num-dpbuf[3]*1000-dpbuf[2]*100-dpbuf[1]*10); //個(gè)位for(i=0;i<4;i++){switch(i){case0:PORTB=0b00000001;break;case1:PORTB=0b00000010;break;case2:PORTB=0b00000100;break;case3:PORTB=0b00001000;break;}PORTA=sgcode[dpbuf[i]]; //發(fā)送編碼到LED}}4、通信模塊(1)通信模塊概述S12串行通信模塊包括多個(gè)獨(dú)立的串行子系統(tǒng),例如同步串行通信SPI、異步串行通信SCI和CAN總線通信等,本血壓測量系統(tǒng)中采用熟悉的異步串行通信SCI來完成單片機(jī)向上位機(jī)數(shù)據(jù)的發(fā)送過程。SCI串行通信接口是一種異步串行通信系統(tǒng),它是計(jì)算機(jī)最常用的通信接口之一。S12的SCI是全雙工異步串行通信接口,通常用于微控制器與其他計(jì)算機(jī)、調(diào)制解調(diào)器等設(shè)備之間的通信。在S12微控制器中集成了2個(gè)SCI串行通信模塊,它內(nèi)置了獨(dú)立的波特率發(fā)生電路和SCI收發(fā)器。(2)SCI寄存器波特率寄存器——SCIBDH、SCIBDLSCIBDH和SCIBDL構(gòu)成一個(gè)16位的波特率控制寄存器。SCIBDH的低5位與SCIBDL全8位構(gòu)成一個(gè)13位的波特率常數(shù),SCI波特率的計(jì)算公式如下:波特率二SCI模式時(shí)鐘/(16*波特率常數(shù)) (4.1)SCI控制寄存器1——SCICR1SCI的工作方式主要由該寄存器設(shè)置,可選擇工作模式、設(shè)置幀格式、喚醒、空閑檢測類型以及奇偶校驗(yàn)等。表4.9SCICR1讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Read/WriLOOPSSCISWARSRCMWAKEILTPEPTteI復(fù)位默認(rèn)值:00000000BLOOPS:循環(huán)選擇位。0為正常工作使能,1為循環(huán)工作使能SCISWAI:SCI等待模式停止位。0為等待模式使能,1為禁止RSRC:接收器信號源位。當(dāng)LOOP=1時(shí),RSRC決定接收器移位寄存器的信號源。M:數(shù)據(jù)幀格式位。0表示1個(gè)起始位,8個(gè)數(shù)據(jù)位,1個(gè)停止位;1表示1個(gè)起始位,9個(gè)數(shù)據(jù)位,1個(gè)停止位。WAKE:喚醒條件位。0表示由空閑線喚醒,1表示第9位數(shù)據(jù)位喚醒。ILT:空閑線類型。PE:奇偶校驗(yàn)使能位。0為奇偶校驗(yàn)禁止,1為奇偶校驗(yàn)使能。PT:奇偶校驗(yàn)類型位。0為偶校驗(yàn),1為奇校驗(yàn)。SCI控制寄存器2——SCICR2該寄存器主要完成收發(fā)中斷的控制、收發(fā)的允許等操作。本血壓測量系統(tǒng)只發(fā)送數(shù)據(jù),不用接收數(shù)據(jù),僅對發(fā)送相關(guān)位進(jìn)行介紹。表4.10SCICR2讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Read/WriteTIETCIERIEILIETERERWUSBK復(fù)位默認(rèn)值:00000000BTIE:發(fā)送中斷使能位,1為中斷請求使能
TCIE:發(fā)送結(jié)束中斷使能位,1為TC中斷請求使能。TE、RE:發(fā)送、接U^允許位,1為發(fā)送、接收使能。SCI狀態(tài)寄存器1——SCISR1該寄存器可顯示SCI的運(yùn)行情況,例如收發(fā)數(shù)據(jù)是否已空/滿,是否出錯(cuò)等表4.11SCISR1讀寫B(tài)it7Bit6Bit5Bit4Bit3Bit2Bit1Bit0ReadTDRETCRDRFIDLEORNFFEPF復(fù)位默認(rèn)值:00000000BTDRE:發(fā)送數(shù)據(jù)寄存器空標(biāo)志位。0表示無字節(jié)傳送到發(fā)送移位寄存器,1表示數(shù)據(jù)已傳送到發(fā)送移位寄存器,發(fā)送數(shù)據(jù)寄存器為空。TC:發(fā)送結(jié)束標(biāo)志,0為正在發(fā)送,1為無發(fā)送。SCI數(shù)據(jù)寄存器——SCIDRLSCIDRL中為8位接收數(shù)據(jù)位或發(fā)送數(shù)據(jù)位。(3)軟件編程軟件編程主要包括串行通信初始化及數(shù)據(jù)發(fā)送兩個(gè)部分。串行通信初始化voidSci_Init(){SCI0BDL=(unsignedchar)((16000000UL/*OSCfreq*//2)/9600/*baudrate*//16/*factor*/); //波特率為9600SCI0CR1=0;〃正常工作模式,無奇偶校驗(yàn)SCI0CR1=0;〃正常工作模式,無奇偶校驗(yàn)SCI0CR2=0X0C; 〃發(fā)送使能,發(fā)送中斷禁止,采用查詢方式發(fā)送}串口發(fā)送數(shù)據(jù)voidSciTx(unsignedchartext){while(!(SCI0SR1&0x80)); //等待上一次發(fā)送完成SCI0DRH=0;SCI0DRL=text; //發(fā)送數(shù)據(jù)送入發(fā)送數(shù)據(jù)寄存器}5、氣袖充氣模塊該模塊完成對氣袖充氣過程的控制,關(guān)閉氣閥,開氣泵,對氣袖進(jìn)行充氣,使氣袖壓力上升,對氣袖壓力進(jìn)行實(shí)時(shí)檢測并顯示,當(dāng)氣袖壓力大于給定閥值時(shí),此時(shí)氣袖壓力阻斷上臂動脈血液流動,關(guān)閉氣泵。軟件流程如圖4.4,源碼及分析見附錄A,函數(shù)原型為voidPump(void)。Pump()No 4顯示氣袖壓力Pump()No 4顯示氣袖壓力圖4.4氣袖充氣模塊軟件流程Measure()(a)壓力數(shù)據(jù)測量N0Measure()(a)壓力數(shù)據(jù)測量N06、壓力數(shù)據(jù)測量模塊根據(jù)血壓測量原理,該模塊中氣泵、氣閥關(guān)閉,氣袖緩慢自然放氣,對壓力數(shù)據(jù)進(jìn)行存儲,供血壓值計(jì)算使用,并將壓力數(shù)據(jù)發(fā)送至上位機(jī)。軟件流程如圖 4.5,源碼及分析詳見附錄A,函數(shù)原型為voidMeasure(void)。Calculate。去脈搏波數(shù)據(jù)初始
噪聲及信號偏置求脈搏波最大峰值(動脈平均壓)將小于平均壓1/4的
壓力數(shù)據(jù)視為噪聲,
去除脈搏波上升段達(dá)到平均壓一定比例Ks的壓力對應(yīng)的氣袖壓力為收縮壓脈搏波下降段達(dá)到平均壓一定比例Kd的壓力對應(yīng)的氣袖壓力為舒張壓(b)血壓值計(jì)算圖4.5壓力數(shù)據(jù)測量與血壓值計(jì)算軟件流程7、血壓值計(jì)算模塊血壓值的計(jì)算采用幅值系數(shù)法,對測量的壓力數(shù)據(jù)進(jìn)行處理,計(jì)算出收縮壓和舒張壓。軟件流程如圖4.5,源碼及分析詳見附錄A,函數(shù)原型為voidCalculate(void)。4.2上位機(jī)軟件設(shè)計(jì)上位機(jī)軟件主要進(jìn)行壓力數(shù)據(jù)的接收,壓力數(shù)據(jù)的圖形顯示,壓力值的計(jì)算等。壓力數(shù)據(jù)的接收由串口通信軟件完成,數(shù)據(jù)處理軟件由 LabVIEW編寫,完成壓力數(shù)據(jù)的圖形顯示,并進(jìn)行壓力值的計(jì)算等。用口通信串口通信采用軟件串口大師(ComMaster)實(shí)現(xiàn),該軟件的串口調(diào)試功能強(qiáng)大,能自動檢測用口,可以設(shè)置串口通信各種參數(shù),最大的特點(diǎn)是可以將接收到的數(shù)據(jù)文件保存為文本格式,便于對測量的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理。軟件的運(yùn)行界面如圖 4.6所示。
圖4.6串口通信軟件界面進(jìn)行血壓數(shù)據(jù)采集時(shí),先設(shè)置好用口參數(shù),將“ 16進(jìn)制”復(fù)選框勾上,打開用口,即可接收數(shù)據(jù)。接收完成后,點(diǎn)擊“選擇文件”按扭,輸入文件名或打開已有文件,再點(diǎn)擊“保存數(shù)據(jù)”就可以將接收的數(shù)據(jù)保存為文本文件。軟件運(yùn)行時(shí)設(shè)置界面如圖 4.7&聿LI太MKglaNtcrU.jForiini>VSr用口利式Cfiitar) iWftnitar)用口及流CFiltsr)|美于蹴Rfe(K*]|.其用器匚停工星剪珪端顯反JwJ6H制三新兄F|造用燈廠|看神咫[Ha£11*串口I.其用器匚停工星剪珪端顯反JwJ6H制三新兄F|造用燈廠|看神咫[Ha£11*串口I源眸同iFi-71KffiCj:I': ▼171的血 ▼]后止位fl .blLZtdBZ4bLi心現(xiàn)qI牛IIT8E M 川 Tut WJ Ei Qi7££Tc b 7c 15 7b bl ?46fKifid % M Eh 上口 B161cd6D bE 5E lb 5i W Si55d55 ba. '53 It 52 bb 5]lcM4?154&eO4ke940婦岫43hS42b-Q4]3dtc3dlhdh%:3bIb^l3i3S鼠熊d9SM翡HM31b931E8妙30bfl30史d1j92cli&2cc32ccl2cb?29HZQb電理犯鈿化的151粕范久?;僦『正二|:-恭配功5047*:指34受注望ji'5b5D3f39332fJb26alyth5nr:.□二,nabd59M4fIf4B$,3£占3g小3D=6"f123b=B28如tdLb40TMkb74c4M小C6a&ci即E47445(flT3ELEh3gIT足3310,"15c£處15h27FJZMM修工Id氣以5IH%%bJcfvqRMW國tllhutc二一吧內(nèi)福m把科"出!£普通*£<]曾一廿L4bl旭h萬聒弓可4Qf£3-Wb--1-1(二rl『.a1a■二v-r-rtH#!皿Ir優(yōu)總判■用球g|lUUJf!S唯春芟牛點(diǎn)送交件慟。fili5?1flftddJIEKJL-US^iCluXLLU無信JIEKJL-US^iCluXLLU無信*i*■■■■■■■■華增相出收滬皆為堂如蹊IessssHeJ運(yùn)行章助退出崖序圖4.7串口通信運(yùn)行界面數(shù)據(jù)處理1、LabVIEW軟件介紹血壓數(shù)據(jù)的處理由工程軟件LabVIEW(LaboratoryVirtualInstrumentEngineering)設(shè)計(jì)完成。LabVIEW是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。 LabVIEW集成了與滿足GPIB、VXI、RS-232和RS-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。它還內(nèi)置了便于應(yīng)用TCP/IP、ActiveX等軟件標(biāo)準(zhǔn)的庫函數(shù)。這是一個(gè)功能強(qiáng)大且靈活的軟件。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動有趣。LabVIEW編程語言是一種圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、
工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向最終用戶的工具。它可以增強(qiáng)構(gòu)建科學(xué)和工程系統(tǒng)的能力,提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。使用它進(jìn)行原理研究、設(shè)計(jì)、測試并實(shí)現(xiàn)儀器系統(tǒng)時(shí),可以大大提高工作效率。利用LabVIEW,可產(chǎn)生獨(dú)立運(yùn)行的可執(zhí)行文件,它是一個(gè)真正的32位編譯器。像許多重要的軟件一樣,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多種版本,本次畢業(yè)設(shè)計(jì)采用的是LabVIEW8.2。2、LabVIEW數(shù)據(jù)處理(1)數(shù)據(jù)格式轉(zhuǎn)換串口通信軟件將接收完成的數(shù)據(jù)保存為16進(jìn)制的文本字符(ASCII碼)格式,為了進(jìn)行數(shù)據(jù)處理,必須轉(zhuǎn)換成為計(jì)算機(jī)可識別的十進(jìn)制數(shù)據(jù),數(shù)據(jù)格式轉(zhuǎn)換程序框圖如圖4.8所小。尸II■11/11LI*」LidI口U口11口1ML」IIL」I」H口■」LIULJU*[[R .卜gLIEJUEJLILIUEJLIULIULJ口LIUUU口ULI口UULIUEJLJU口口片子眄逞;K[i,-T口片子眄逞;K[i,-Tncz71rrrT5FLmTTnKhTzi□nrrnTmi1ei圖4.8數(shù)據(jù)格式轉(zhuǎn)換程序框圖
由于每個(gè)壓力數(shù)據(jù)保存為16進(jìn)制文本時(shí)占用3個(gè)字符串長度,即2個(gè)數(shù)據(jù)長度和1個(gè)空格符,因此每個(gè)文本文件中保存的壓力數(shù)據(jù)個(gè)數(shù)為字符總長度的 1/3。應(yīng)用LabVIEW提供的for循環(huán)結(jié)構(gòu),可對每3個(gè)字符長度進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換完成后的數(shù)據(jù)可存入新的文本文件,同時(shí)保存為數(shù)據(jù)結(jié)構(gòu)供下一步的數(shù)據(jù)處理使用。(2)壓力數(shù)據(jù)圖形顯示由4.2.2中的壓力數(shù)據(jù)測量模塊編程可知,上位機(jī)接收的壓力數(shù)據(jù)中包含氣袖壓力數(shù)據(jù)和脈搏波數(shù)據(jù),因此進(jìn)行圖形顯示前需要對數(shù)據(jù)進(jìn)行分離,分別提取出氣袖壓力數(shù)據(jù)和脈搏波數(shù)據(jù),壓力數(shù)據(jù)圖形顯示程序框圖如4.9所示??诳谪慰陂T口口口口門口rri"i匚 :口?1匚TrnTinrr口uu~??kjTiRirnninn~~"t~rii-n-nnnrrmr'inrinTinT圖4.9壓力數(shù)據(jù)圖形顯示框圖圖4.10氣袖壓力圖4.11脈搏波由于氣袖壓力數(shù)據(jù)和脈搏波數(shù)據(jù)是以間隔順序接收的,因此可以直接對經(jīng)過格式轉(zhuǎn)換的數(shù)據(jù)進(jìn)行處理,應(yīng)用LabVIEW的for循環(huán)結(jié)構(gòu),對壓力數(shù)據(jù)數(shù)組索引進(jìn)行判別,偶數(shù)索引對應(yīng)的數(shù)據(jù)為氣袖壓力數(shù)據(jù),奇數(shù)索引對應(yīng)的數(shù)據(jù)為脈搏波數(shù)據(jù), LabVIEW循環(huán)結(jié)構(gòu)中的移位寄存器可以方便地對壓力數(shù)據(jù)進(jìn)行連續(xù)存儲。數(shù)據(jù)分離之后,可以直接將數(shù)據(jù)進(jìn)行圖形顯示,同時(shí)可以將數(shù)據(jù)通過添加局部變量送至下一層供血壓值計(jì)算使用,實(shí)際程序運(yùn)行結(jié)果如圖 4.10、4.11所示。(3)人體血壓值計(jì)算人體血壓值的計(jì)算方法有多種,單片機(jī)的血壓測量是基于示波法,示波法血壓值計(jì)算主要有幅值系數(shù)法和拐點(diǎn)法。求脈搏波振蕩峰值上位機(jī)接收到的數(shù)據(jù)量較大,而求人體血壓值只需要求脈搏波的包絡(luò)曲線,為此必須先求脈搏波的振蕩峰值及其對應(yīng)的氣袖壓力,程序框圖如4.12所示圖4.12求脈搏波波峰波谷程序框圖對脈搏波的連續(xù)3個(gè)數(shù)據(jù)進(jìn)行比較,判別第2個(gè)數(shù)據(jù)是否為最大值或最小值(即判
別當(dāng)前數(shù)據(jù)中是否含有脈搏波振蕩的波峰或波谷),如果不是則從數(shù)組中刪除該數(shù)據(jù),同時(shí)從氣袖壓力數(shù)組中刪除對應(yīng)的壓力數(shù)據(jù)。經(jīng)過處理的數(shù)據(jù)再次進(jìn)行圖形顯示,如圖4.13、4.14所示,數(shù)據(jù)量大大減少。圖4.13氣袖壓力曲線曲線0180-160-190--IO002550751QO125150175200225必Z7S30032535037540042S450C5時(shí)間1曲線0180-160-190--IO002550751QO125150175200225必Z7S30032535037540042S450C5時(shí)間1ic-120-130-140150-200-210-220-230-圖4.14脈搏波振蕩峰值曲線脈搏波去干擾及偏置由圖4.11及圖4.14中可知脈搏波壓力的中心未在零點(diǎn)上,而且在氣袖壓力開始下降的初期,脈搏波信號存在很大的干擾,為無效數(shù)據(jù),因此必須對脈搏波信號去干擾及偏置,程序框圖如圖4.15圖4.15脈搏波去干擾及偏置振蕩波2為脈搏波的振蕩峰值數(shù)據(jù),即框圖4.12中的脈搏波數(shù)據(jù),脈搏波數(shù)據(jù)的偏置為186.4,該值是在當(dāng)氣袖內(nèi)壓力包為零時(shí)測得的脈搏波提取電路輸出壓力數(shù)據(jù)的平均值,將壓力數(shù)據(jù)減去該值就可以去偏置。圖4.16去干擾及偏置后的脈搏波去干擾是直接將脈搏波壓力的前20個(gè)值置為0,由于此部分對應(yīng)的氣袖壓力大于160mmHg,即遠(yuǎn)遠(yuǎn)大于人體的收縮壓,不會對血壓值的計(jì)算造成影響,因此作這樣的簡單處理是可行的,經(jīng)過處理的脈搏波信號如圖 4.16。計(jì)算血壓值血壓值的計(jì)算采用幅值系數(shù)法,找出脈搏波的最大峰值,在脈搏波包絡(luò)峰值的上升階段,第一個(gè)大于或等于最大峰值一定比例(Ks)的幅值所對應(yīng)的氣袖壓力為收縮壓;在脈搏波包絡(luò)峰值的下降階段,第一個(gè)小于或等于最大峰值一定比例( ()的幅值所對應(yīng)的氣袖壓力為舒張壓。本實(shí)驗(yàn)系統(tǒng)中, Ks0.58,Kd0.77。血壓值計(jì)算的程序框圖如圖4.17所示。血壓值計(jì)算結(jié)果為,收縮壓127mmHg,舒張壓82mmHg。測量結(jié)果在正常人體血壓平均值附近,結(jié)果較理想,人體血壓測量軟件面板如圖 4.18。圖4.17血壓值計(jì)算人體血Jk測量也嘀蘇.小宙回1,舒張JE/mraHg圖4.18人體血壓測量軟件面板本章小結(jié)本章主要介紹了血壓測量系統(tǒng)的軟件設(shè)計(jì)方法,詳細(xì)分析了單片機(jī)軟件的編寫過程,單片機(jī)軟件采用模塊化設(shè)計(jì)方法,對各模塊的工作原理及算法作了介紹?;贚abVIEW的上位機(jī)數(shù)據(jù)處理軟件給出了程序框圖及程序編寫說明, 詳細(xì)的軟件設(shè)計(jì)源代碼可以參考附錄Ao5實(shí)驗(yàn)設(shè)計(jì)本課題是為單片機(jī)系列實(shí)驗(yàn)之一壓力測量與控制實(shí)驗(yàn)開發(fā)的一個(gè)實(shí)驗(yàn)平臺,供學(xué)生學(xué)習(xí)Freescale單片機(jī)的原理及使用方法,本章主要介紹血壓測量系統(tǒng)學(xué)生實(shí)驗(yàn)的設(shè)計(jì)思想及設(shè)計(jì)方法。實(shí)驗(yàn)?zāi)康耐ㄟ^該實(shí)驗(yàn),應(yīng)當(dāng)使學(xué)生熟練掌握Freescale單片機(jī)的組成原理及編程方法,掌握壓力傳感器的使用;了解人體血壓的測量過程,了解壓力信號的提取;掌握壓力測量方法,而關(guān)鍵是使學(xué)生掌握單片機(jī)的編程方法。實(shí)驗(yàn)內(nèi)容根據(jù)實(shí)驗(yàn)?zāi)康?,制定相?yīng)的實(shí)驗(yàn)內(nèi)容,由于人體血壓測量系統(tǒng)結(jié)構(gòu)復(fù)雜,學(xué)生在有限的時(shí)間內(nèi)不可能完成繁多的實(shí)驗(yàn)任務(wù),因此只要求學(xué)生按照已經(jīng)給出的算法,編寫血壓測量控制過程的軟件程序和血壓值計(jì)算程序,而血壓測量過程需要用到的通用子模塊均提供詳細(xì)的函數(shù)接口,供學(xué)生方使使用。本實(shí)驗(yàn)的實(shí)驗(yàn)內(nèi)容為,學(xué)習(xí)人體血壓的測量原理和血壓測量系統(tǒng)的組成結(jié)構(gòu),根據(jù)提供的子函數(shù)庫及血壓測量算法,編寫一個(gè)實(shí)驗(yàn)程序,完成人體血壓的測量與計(jì)算,數(shù)據(jù)處理完成后,顯示最終結(jié)果。實(shí)驗(yàn)要求本實(shí)驗(yàn)的實(shí)驗(yàn)要求,就是完成人體血壓的測量與顯示,測量結(jié)果要在合理的范圍之內(nèi),越接近真實(shí)值越好。實(shí)驗(yàn)說明作為學(xué)生實(shí)驗(yàn),實(shí)驗(yàn)說明部分將給出實(shí)驗(yàn)步驟,實(shí)驗(yàn)箱的組成及實(shí)驗(yàn)箱與單片機(jī)的接口方法等,同時(shí)實(shí)驗(yàn)說明將提供通用函數(shù)的接口及使用注意事項(xiàng),給出人體血壓測量控制算法及血壓值計(jì)算的算法等。本章小結(jié)本章主要介紹了學(xué)生實(shí)驗(yàn)的設(shè)計(jì)思想和設(shè)計(jì)方法,為學(xué)生實(shí)驗(yàn)指導(dǎo)書的編寫提供一個(gè)參考,詳細(xì)的實(shí)驗(yàn)指導(dǎo)書見附錄Bo結(jié)論通過本次畢業(yè)設(shè)計(jì),完成了人體血壓測量系統(tǒng)實(shí)驗(yàn)箱的改造,統(tǒng)一了單片機(jī)系列實(shí)驗(yàn)的接口,完成了S12單片機(jī)系統(tǒng)對血壓測量的控制與計(jì)算軟件的設(shè)計(jì),用LabVIEW編寫了上位機(jī)數(shù)據(jù)處理軟件,對血壓數(shù)據(jù)進(jìn)行了圖形顯示并計(jì)算出了人體的血壓值,最后對學(xué)生實(shí)驗(yàn)進(jìn)行了設(shè)計(jì),基本完成了開題報(bào)告中所要求完成的內(nèi)容。在整個(gè)設(shè)計(jì)過程中,我認(rèn)真學(xué)習(xí)了CodeWarrior軟件、LabVIEW軟件,以及飛思卡爾MCS12DG128單片機(jī)的嵌入式開發(fā)系統(tǒng),查閱了大量期刊文獻(xiàn),大大提高了自己的自主學(xué)習(xí)能力。自己親自實(shí)踐完成了單片機(jī)實(shí)驗(yàn)電路的搭建,動手完成了實(shí)驗(yàn)箱內(nèi)部電路的改造焊接,增強(qiáng)了自己的動手能力。在軟件設(shè)計(jì)過程中遇到了一些困難,通過自己的思考和與老師同學(xué)的交流,最終解決了難題,學(xué)會了解決問題的方法。整個(gè)畢業(yè)設(shè)計(jì)對我個(gè)人的能力是一次非常全面的培養(yǎng)。致謝本次畢業(yè)設(shè)計(jì)是在我的指導(dǎo)老師張軍香老師、董韶鵬老師的指導(dǎo)下完成的,本次畢業(yè)設(shè)計(jì)能夠順利完成,與她們的悉心教導(dǎo)是分不開的。畢業(yè)設(shè)計(jì)的每個(gè)星期,兩位老師都會不斷對我上個(gè)星期的工作進(jìn)行總結(jié),對我的工作提出一些很有成效的建議,并能發(fā)現(xiàn)我畢業(yè)設(shè)計(jì)中存在的問題,幫我及時(shí)指正,使我的畢業(yè)設(shè)計(jì)更加高效地完成,在此我對張軍香老師和董韶鵬老師表示誠摯的感謝和由衷的敬意。本次畢業(yè)設(shè)計(jì)是在北航2號樓的教學(xué)實(shí)驗(yàn)中心完成的,感謝實(shí)驗(yàn)室的老師為我的畢業(yè)設(shè)計(jì)提供了良好的學(xué)習(xí)環(huán)境,感謝各位老師在畢業(yè)設(shè)計(jì)過程中的良好監(jiān)督。止匕外,我還要感謝實(shí)驗(yàn)室許多同學(xué)在整個(gè)過程中對我畢業(yè)設(shè)計(jì)工作的幫助和配合。參考文獻(xiàn)[1]王威.HCS12微控制器原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007[2]王保華.生物醫(yī)學(xué)測量與儀器[M].上海:復(fù)旦大學(xué)出版社.2002[3]聶能,謝正祥.生物醫(yī)學(xué)信號數(shù)字處理技術(shù)及應(yīng)用[M].北京:科學(xué)出版社.2005[4]焦學(xué)軍、房興業(yè).利用脈搏波特征參數(shù)連續(xù)測量血壓的方法研究 [J].生物醫(yī)學(xué)工程學(xué)雜志.2002.19(2):217-220[5]俞夢孫.21世紀(jì)醫(yī)學(xué)電子儀器[A].第十一屆中國國際醫(yī)用儀器設(shè)備展覽會暨技術(shù)交流會[C].2002,9:9-11[6]王博亮,劉迎春,劉安之,劉希順.醫(yī)用傳感器及其接口技術(shù)[M].北京:國防工業(yè)出版社.1998□樊尚春,周浩敏.信號與測試技術(shù)[M].北京:北京航空航天大學(xué),2002[8]張桂平.電子血壓測量原理及存在的問題[J].醫(yī)療保健器具,2005[9]鄧親愷.現(xiàn)代醫(yī)學(xué)儀器設(shè)計(jì)原理[M].北京:科學(xué)出版社,2004[10]黃建新,劉懷.基于示波法的無創(chuàng)血壓監(jiān)護(hù)儀的設(shè)計(jì)[J].南京師范大學(xué)學(xué)報(bào)(工程技術(shù)版),2005,5(1):25-27[11]周月英,吳延慶.血壓研究的新進(jìn)展[J].江西醫(yī)學(xué)院學(xué)報(bào),2004,44(6):130-131附錄附錄A單片機(jī)血壓測量C語言程序#include<hidef.h>#include<mc9s12dg128.h>#include"math.h"#pragmaLINK_INFODERIVATIVE"mc9s12dg128b"voidSYS_Init(void);voidATD_Init(void);voidSci_Init(void);voidSciTx(unsignedchartext
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電視臺演員服務(wù)心得
- 廣告行業(yè)美工工作技能總結(jié)
- 酒店服務(wù)員工作總結(jié)
- 跨學(xué)科教學(xué)與合作學(xué)習(xí)方案計(jì)劃
- 行業(yè)新品介紹總結(jié)
- 化工行業(yè)原料使用技術(shù)培訓(xùn)總結(jié)
- 娛樂行業(yè)演藝表演培訓(xùn)總結(jié)
- 體育館服務(wù)員的工作總結(jié)
- 酒店行業(yè)的衛(wèi)生管理
- 《漁藥使用及安全》課件
- 《制造業(yè)成本核算》課件
- 【MOOC】數(shù)學(xué)建模與創(chuàng)新實(shí)踐-西安科技大學(xué) 中國大學(xué)慕課MOOC答案
- 天冬化學(xué)成分
- 2024項(xiàng)目經(jīng)理講安全課
- 中國共產(chǎn)主義青年團(tuán)團(tuán)章
- 采購原材料年終總結(jié)
- 2024-2030年中國隧道建設(shè)行業(yè)前景展望及投資規(guī)劃分析報(bào)告
- 2024-2025學(xué)年人教版初中物理九年級全一冊期中復(fù)習(xí)(易錯(cuò)60題)(解析版)
- 環(huán)保驗(yàn)收課件教學(xué)課件
- 毛概學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- DB11T 1678-2019 城市軌道交通廣告設(shè)施設(shè)置規(guī)范
評論
0/150
提交評論