一種以AT89S52單片機為核心,利用駐極體式聲音傳感器實現(xiàn)的心音數(shù)據(jù)采集系統(tǒng),利用圖形液晶模塊實現(xiàn)顯示的新型可視電子聽診器。介紹了電子聽診器的系統(tǒng)結(jié)構(gòu)圖,給出了硬件電路原理和軟件流程。該系統(tǒng)在進行常規(guī)心臟聽診的同時可通過液晶顯示屏直觀地顯示心率和心音波形。 心音是能反映心臟正常或者病理的音響,它是由于心臟搏動過程中各瓣膜的開閉以及心肌和血液運動所產(chǎn)生的震動形成的。心音聽診是診斷心臟疾病的重要依據(jù)。傳統(tǒng)的方法是采用聽診器聽診心音,診斷的依據(jù)主要是醫(yī)師的經(jīng)驗。這種方法比較簡單,但由于人耳對聲音的感知是聲強與頻率的綜合效應(yīng),因而有些病理特性難以捕捉,且準確性較差。設(shè)計一種新的電子聽診器對聽診音進行定量、準確的分析很有必要。目前,國內(nèi)電子聽診器產(chǎn)品的價格和功能與國外相比還存在較大差距,多數(shù)只是將心音采集后放大,雖然在一定程度上改良了聽診器,但是還不能很好地反映心音波形。本文研制的可視聽診器實現(xiàn)了這一功能。它集聽診和心電信號監(jiān)測功能于一體,可以實時記錄并顯示心率及心音圖,使診斷更準確,且便于醫(yī)學教學。同時具有可存儲、實時顯示、簡單易用、成本低、體積小等優(yōu)點。本文對該可視聽診器的結(jié)構(gòu)及工作原理作了較詳細的介紹。 1 硬件設(shè)計 可視聽診器的系統(tǒng)結(jié)構(gòu)圖如圖1所示。該可視聽診器由采集處理和波形顯示二部分組成,具體由聲音傳感器、信號調(diào)理采樣電路和鍵盤顯示電路組成。 由于聽診器接收到的是微弱的寬帶頻率信號,因此由聲音傳感器轉(zhuǎn)換成電信號后,需要經(jīng)過濾波檢波放大電路對心電波形進行調(diào)理,然后經(jīng)由A/D轉(zhuǎn)換送給單片機進行處理、存儲,并根據(jù)用戶設(shè)置在液晶顯示屏上實時顯示出來,以便用戶仔細觀察心音波形。另外,波形數(shù)據(jù)可以通過串行通信方式傳給上位機(PC機),再利用上位機強大的處理功能和模擬示波器軟件來顯示心電波形。 1.1 拾音頭 由于心音頻率較低(20~600Hz),在人耳可聽頻域范圍的低頻段,因此選用傳聲器(話筒——將聲信號轉(zhuǎn)換成電信號的換能器)作為聲音傳感器。聲音傳感器(話筒)有很多種類,如駐極體式、動圈式和電容式等。本系統(tǒng)對傳感器的選取原則是:靈敏度高,抗干擾能力強,除了要提取微弱的心音信號外,還要求它不受人聲、工頻等信號的干擾。經(jīng)多次實驗比較,設(shè)計中選用駐極體式話筒。拾音器MIC的制作選用老式聽診器的振膜頭部分。在振膜耳把套上20cm長的橡皮管,另一頭擠壓入一只微型駐極體話筒,話筒的2根導(dǎo)線用屏蔽電纜接到電路中的MIC處,駐極體話筒處用熱縮套管加固,以防止操作時產(chǎn)生不必要的噪聲干擾。 1.2 信號調(diào)理電路 信號調(diào)理電路如圖2所示,主要由三部分組成:(1)信號輸入級(第1級)。拾音頭輸出音頻信號經(jīng)耦合電容C1輸入信號處理電路,為保證拾音頭正常工作須提供較大的負載電阻,為此設(shè)計中采用了由NPN三極管構(gòu)成的射極跟隨器作為輸入級。(2)濾波放大(第2級)。經(jīng)測量,心音頻率較低,因此在信號放大的同時可將頻率在600Hz以上的信號全部濾除,以提高系統(tǒng)的抗干擾能力。設(shè)計中采用一階低通濾波電路。(3)檢波放大(第3級)。由于聲波圖形類似于調(diào)幅波形,故需用檢波電路把迅速變化的電壓信號轉(zhuǎn)變成變化較慢的直流電壓信號。檢波電路可分為峰值檢波、平均值檢波和均方根值檢波。本電路中采用了峰值檢波,它能給出一定時間間隔內(nèi)的最大值。另外為便于采集并有效地利用A/D的轉(zhuǎn)換范圍,信號要放大到相應(yīng)的電平范圍之內(nèi),故設(shè)計中使用了比例放大電路。 1.3 信號采樣 心音頻率f在20Hz~600Hz之間,根據(jù)香農(nóng)(Shannon)采樣定理,只要采樣的頻率高于或等于原來頻率的2倍,就可以完整地重現(xiàn)原波形,因此選擇的A/D轉(zhuǎn)換器的轉(zhuǎn)換速率應(yīng)在1 200Hz以上,故設(shè)計中選用了串行A/D轉(zhuǎn)換器TLC0831。 信號采樣電路的工作原理:把調(diào)理電路的模擬輸出信號用A/D轉(zhuǎn)換器變成數(shù)字量后,再由單片機送到液晶顯示屏顯示。 1.4 鍵盤顯示 本系統(tǒng)選用了精電蓬遠的QH12864T點陣式液晶顯示(LCD)模塊。該模塊由控制器T6963C、列驅(qū)動器T6A39、行驅(qū)動器T6A40及與外部設(shè)備的接口等部分組成,它既能顯示字符(中文和西文字符),又能顯示圖形,還能夠?qū)⒆址c圖形混合顯示。 LCD與單片機的接口方法分為直接訪問方式和間接控制方式。直接訪問方式是把液晶模塊作為存儲器接在CPU的數(shù)據(jù)線、地址線和控制線上,同時把它的數(shù)據(jù)總線接在89S52的P0口上,片選以及寄存器選擇信號線由P2口提供,讀寫操作由單片機的讀寫操作信號控制。這種方式是以訪問存儲器的方式來訪問液晶顯示模塊。間接控制方式不使用單片機的數(shù)據(jù)系統(tǒng),而是利用它的I/O口來實現(xiàn)與顯示模塊的通信,即將液晶顯示模塊的數(shù)據(jù)線與單片機的P0口連接作為數(shù)據(jù)總線,另外3根時序控制信號線通常利用89S52的P3口中未被使用的I/O口來控制。這種訪問方式不占用CPU的存儲器空間,它的接口電路與時序無關(guān),其時序完全靠軟件編程實現(xiàn)。間接控制方式的速度較直接訪問方式快,所以本設(shè)計中采用的是間接控制方式,具體連接如圖3所示。 另外系統(tǒng)設(shè)置了6個按鍵,用于圖形的拉伸、縮放、存儲、回放及菜單式操作。 2 調(diào)理電路的調(diào)試 一個正常人的心音圖如圖4所示,其中s1是第1心音,s2是第2心音;Systole代表心臟收縮期,Diastole代表心臟舒張期。 經(jīng)過信號調(diào)理電路后的心音變成如圖5所示的波形。 3 系統(tǒng)軟件設(shè)計 系統(tǒng)選用的LCD是在圖形工作方式下,通過建立坐標系,利用位操作實現(xiàn)對心音波形的逼真顯示。下面詳細介紹液晶顯示屏繪圖編程的算法和波形連續(xù)顯示。 3.1 繪圖編程的算法 系統(tǒng)選用的是128×64點陣式圖形液晶顯示模塊。要繪制心音波形只要根據(jù)A/D轉(zhuǎn)換來的數(shù)據(jù)在液晶顯示器的對應(yīng)位置上繪點顯示。首先在液晶平面上建立如圖6所示的顯示坐標系。 圖中畫出了液晶顯示器在圖形工作方式下液晶平面的每一處所對應(yīng)的顯示緩沖區(qū)地址情況,數(shù)據(jù)為十六進制,并建立以左下角為坐標原點的坐標系。這樣坐標(X,Y)的值都為正值,簡化了算法。其中X表示1~128個點,Y表示各個點所對應(yīng)的幅值。由于A/D采樣的數(shù)值為0"255,而LCD的行取值為0~63,所以把幅值縮小一定的倍數(shù),即Y=D/B,D為A/D采集的數(shù)字量,B為該數(shù)縮小的倍數(shù)。由圖可以看出幅值Y加1,顯示緩沖區(qū)地址K就減少10H,從而得到緩沖區(qū)地址的表達式:K=X/8-10H*Y+0BF0H。而緩沖區(qū)地址字節(jié)中對應(yīng)X除以8的余數(shù)的位就正好是要繪點的位置。只要利用位操作命令對它置位就可實現(xiàn)繪點。 3.2 波形顯示 把采集的數(shù)據(jù)存放在RAM中,RAM共存了8KB波形數(shù)據(jù)。而液晶顯示器1次只能顯示128個點,因此可以通過改變在RAM中讀數(shù)間隔來控制波形的橫向顯示,即每顯示完1個數(shù)據(jù),RAM地址加N,通過改變N的大小來拉開或回縮信號波形,以便于觀察。 如果相鄰2個點的幅值稍有不同,2個點的距離就會分開,造成顯示不連續(xù),影響視覺效果。因而怎樣使波形顯示連續(xù),是顯示信號波形中一個很重要的問題。本系統(tǒng)中對這一問題的解決方法:在LCD上每顯示完1個點后,判斷它與前1個點的幅值差距,即Y值值差,若大于8,就要在2點之間插入若干點(X值不變,只變Y值),使2點連續(xù)起來,然后再進行下1個點的顯示。利用這種方法,可很好地實現(xiàn)心音波形的顯示。波形顯示程序流程圖如圖7所示。 4 結(jié)束語 本文介紹的可視聽診器能實時顯示心率和心音波形,并能進行波形拉伸、變換和回放,形象直觀、操作方便,適合向臨床教學和醫(yī)療領(lǐng)域推廣應(yīng)用。 |