畢業(yè)設(shè)計(jì)---人體脈搏測(cè)量?jī)x的設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  摘 要</b></p><p>  本課題是人體脈搏測(cè)量?jī)x的設(shè)計(jì)。由于脈搏信號(hào)的特殊性,在設(shè)計(jì)時(shí)必須要注意實(shí)現(xiàn)測(cè)量的準(zhǔn)確。該系統(tǒng)的重點(diǎn)就在于要求實(shí)現(xiàn)測(cè)量的簡(jiǎn)便化和精確化。系統(tǒng)要在小于十秒的時(shí)間內(nèi),測(cè)量出人體一分鐘的脈搏,并且保證誤差在2次以內(nèi)。本系統(tǒng)以89S51單片機(jī)作為中心,通過(guò)使用單片機(jī)來(lái)實(shí)現(xiàn)系統(tǒng)最核心的計(jì)算脈搏功能。在信號(hào)的前端處理上,使用壓電陶瓷片采集

2、人體脈搏信號(hào),然后經(jīng)過(guò)AD620放大,施密特觸發(fā)器整形,低通濾波器濾波等一系列操作,將脈搏信號(hào)轉(zhuǎn)換為同頻率的脈沖信號(hào)輸入到單片機(jī)內(nèi),并利用單片機(jī)對(duì)其進(jìn)行計(jì)數(shù)。計(jì)數(shù)的方法是利用單片機(jī)的計(jì)時(shí)器,計(jì)算一次心跳的時(shí)間,然后由該周期計(jì)算出頻率,繼而就可以求出一分鐘的脈搏數(shù)。按照理論來(lái)說(shuō),只要有一次心跳信號(hào)就可以。但是要考慮到計(jì)算的精確性,可以設(shè)定為測(cè)量五次心跳信號(hào),然后再求脈搏就可以使結(jié)果比較精確。計(jì)數(shù)結(jié)果將最終送至液晶屏1602來(lái)進(jìn)行顯示。雖然

3、壓電陶瓷片的性能并非很好,在信號(hào)的采集上不能實(shí)現(xiàn)非常精確的采集,但是它的價(jià)格低廉,并且在經(jīng)過(guò)系統(tǒng)的信號(hào)調(diào)理電路后,也能比較滿意的實(shí)現(xiàn)我們所要實(shí)現(xiàn)的目標(biāo)。整個(gè)系統(tǒng)耗電低,體積小,具有便攜性與精確性。經(jīng)過(guò)多次調(diào)試和實(shí)驗(yàn),本系統(tǒng)基本實(shí)現(xiàn)了設(shè)</p><p>  關(guān)鍵詞:脈搏測(cè)量;壓電陶瓷片;液晶顯示屏;單片機(jī)</p><p><b>  目 錄</b></p>

4、<p>  引言………………………………………………………………………1</p><p>  1 設(shè)計(jì)任務(wù)及要求……………………………………………………3</p><p>  1.1 設(shè)計(jì)任務(wù)………………………………………………………………3</p><p>  1.2 設(shè)計(jì)要求………………………………………………………………3</p>

5、<p>  1.3 設(shè)計(jì)時(shí)所遇到的問(wèn)題………………………………………………… 3</p><p>  2 系統(tǒng)總體設(shè)計(jì)……………………………………………………… 3</p><p>  2.1 方案論證…………………………………………………………… 3</p><p>  2.2 總體設(shè)計(jì)框圖…………………………………………………………4</p

6、><p>  3 系統(tǒng)硬件設(shè)計(jì)……………………………………………………… 5</p><p>  3.1 脈搏信號(hào)采集…………………………………………………………5</p><p>  3.1.1傳感器的選擇…………………………………………………………………5</p><p>  3.1.2三種方案的優(yōu)缺點(diǎn)比較……………………………………………

7、……… 6</p><p>  3.1.3壓電陶瓷片介紹………………………………………………………………7</p><p>  3.2 信號(hào)調(diào)理單元…………………………………………………………7</p><p>  3.2.1一級(jí)放大電路…………………………………………………………………8</p><p>  3.2.2二階濾波器電路………

8、…………………………………………………… 10</p><p>  3.2.3二級(jí)放大電路……………………………………………………………… 12</p><p>  3.3 整形電路…………………………………………………………… 14</p><p>  3.4 電源濾波電路……………………………………………………… 16</p><p> 

9、 3.5 單片機(jī)電路………………………………………………………… 16</p><p>  3.6 顯示系統(tǒng)…………………………………………………………… 18</p><p>  4 系統(tǒng)軟件設(shè)計(jì)…………………………………………………… 19</p><p>  4.1 軟件部分設(shè)計(jì)……………………………………………………… 19</p><

10、;p>  4.1.1主程序模塊………………………………………………………………… 20</p><p>  4.1.2液晶驅(qū)動(dòng)模塊……………………………………………………………… 21</p><p>  4.2 軟件開(kāi)發(fā)環(huán)境……………………………………………………… 21</p><p>  5 測(cè)試方案及結(jié)果………………………………………………… 21

11、</p><p>  5.1 測(cè)試方案……………………………………………………………21</p><p>  5.2 模擬測(cè)試結(jié)果……………………………………………………… 21</p><p>  5.2 實(shí)際測(cè)試結(jié)果……………………………………………………… 22</p><p>  6 結(jié)束語(yǔ)………………………………………………………

12、………22</p><p>  謝辭……………………………………………………………………24</p><p>  參考文獻(xiàn)………………………………………………………………25</p><p>  附錄……………………………………………………………………26</p><p><b>  引言</b></p>

13、<p>  在我國(guó)傳統(tǒng)中醫(yī)學(xué)的診斷中,“望、聞、問(wèn)、切”是最基本的四個(gè)方面。而在其中,切,也就是脈診,占有非常重要的地位。通過(guò)脈診,醫(yī)生可以對(duì)患者的身體狀況有一個(gè)大概的了解,進(jìn)而對(duì)癥下藥。脈搏信號(hào)可以直接反應(yīng)出患者心臟的部分狀況,我國(guó)傳統(tǒng)中醫(yī)學(xué)認(rèn)為,通過(guò)脈診可以了解到患者臟腑氣血的盛衰,可以探測(cè)到病因,病位,預(yù)測(cè)療效等。</p><p>  從近代醫(yī)學(xué)的角度來(lái)看,人體循環(huán)系統(tǒng)承擔(dān)著協(xié)調(diào)全身各組織的能量代

14、謝,輸送氧氣、營(yíng)養(yǎng)物質(zhì),運(yùn)走代謝廢物等重要的工作,還承擔(dān)運(yùn)送抗體、激素等物質(zhì)以協(xié)調(diào)整體的動(dòng)態(tài)平衡。從整體的角度對(duì)疾病進(jìn)行綜合分析,顯然循環(huán)系統(tǒng)的信息將占很重要的比重;從整個(gè)循環(huán)系統(tǒng)來(lái)看橈動(dòng)脈介于大動(dòng)脈與小動(dòng)脈之間,由于心臟的舒縮、內(nèi)臟血容量的變化、血管端點(diǎn)阻抗、管道內(nèi)脈波的反射、血液的粘滯性、血管壁的粘彈性等因素使脈象攜帶著有關(guān)心臟運(yùn)動(dòng)、內(nèi)臟循環(huán)、外周循環(huán)等豐富的心血管系統(tǒng)及整體的動(dòng)態(tài)信息。因此脈診的臨床意義很大,它的機(jī)理是急待于我們進(jìn)

15、行研究的。 鑒于脈診的重要性,人們對(duì)于脈搏測(cè)量一直非常關(guān)注,早在1860年Vierordt 創(chuàng)建了第一臺(tái)杠桿式脈搏描記儀,國(guó)內(nèi)20世紀(jì)50年代初朱顏將脈搏儀引用到中醫(yī)脈診的客觀化研究方面。此后隨著機(jī)械及電子技術(shù)的發(fā)展,國(guó)內(nèi)外在研制中醫(yī)脈象儀方面進(jìn)展很快,尤其是70年代中期,國(guó)內(nèi)天津、上海、廣州、江西等地相繼成立了跨學(xué)科的脈象研究協(xié)作組,多學(xué)科共同合作促使中醫(yī)脈象研究工作進(jìn)入了一個(gè)新的境界。</p><p>

16、;  脈搏測(cè)量?jī)x的發(fā)展主要向以下幾個(gè)趨勢(shì)發(fā)展:</p><p>  (1) 自動(dòng)測(cè)量脈搏并且對(duì)所得到的脈搏進(jìn)行自動(dòng)分析。</p><p>  目前很多脈搏測(cè)量?jī)x都具有檢測(cè)血氧等其他的功能,但是對(duì)這些信號(hào)的分析和診斷還需要一些有經(jīng)驗(yàn)的醫(yī)生觀察,進(jìn)行分析后才能確認(rèn)結(jié)果,浪費(fèi)大量的人力,且由人為引入的誤差較大。因此,未來(lái)脈搏自動(dòng)檢測(cè)的內(nèi)容將更加詳細(xì),自動(dòng)分析診斷功能也更強(qiáng)大。</p>

17、<p>  (2) 數(shù)字化技術(shù)等先進(jìn)技術(shù)的應(yīng)用。</p><p>  隨著數(shù)字科學(xué)技術(shù)的發(fā)展,脈搏測(cè)量?jī)x集成度將更高,更便于攜帶。數(shù)字信號(hào)處理的運(yùn)用將使干擾更小,測(cè)量更為準(zhǔn)確。</p><p> ?。?)多功能化越來(lái)越明顯</p><p>  目前的脈搏測(cè)量?jī)x,一般都具有測(cè)試血氧,心電圖等等功能,單純的脈搏測(cè)量?jī)x已經(jīng)很少見(jiàn)。隨著電子技術(shù)的發(fā)展,脈搏測(cè)量

18、儀必然可以實(shí)現(xiàn)更多的功能。</p><p>  本設(shè)計(jì)所使用的系統(tǒng)利用壓電陶瓷片將脈博轉(zhuǎn)換為電壓信號(hào),經(jīng)過(guò)信號(hào)調(diào)理后利用AT89S51單片機(jī)進(jìn)行信號(hào)采集和處理,在短時(shí)間內(nèi),測(cè)量出人體一分鐘的脈搏數(shù),并將心率進(jìn)行實(shí)時(shí)顯示,便于攜帶。達(dá)到了方便、快速、準(zhǔn)確地測(cè)量心率的目的。這樣的脈搏測(cè)量系統(tǒng)性能良好,結(jié)構(gòu)簡(jiǎn)單,性價(jià)比高,輸出顯示穩(wěn)定,比較適應(yīng)大眾化,適合家庭進(jìn)行自我檢查以及醫(yī)院護(hù)士進(jìn)行每日的臨床記錄。</p&g

19、t;<p>  1 設(shè)計(jì)任務(wù)及要求</p><p><b>  1.1 設(shè)計(jì)任務(wù)</b></p><p>  本課題要求利用傳感器對(duì)人體脈搏信號(hào)進(jìn)行采集,設(shè)計(jì)相應(yīng)的信號(hào)調(diào)理電路,然后利用通過(guò)對(duì)脈搏信號(hào)進(jìn)行測(cè)量,來(lái)進(jìn)行實(shí)時(shí)顯示測(cè)量結(jié)果。</p><p><b>  1.2 設(shè)計(jì)要求</b></p>

20、<p>  、完成一次測(cè)量時(shí)間:<10s;</p><p>  、脈搏測(cè)量精度:≤±2次/分鐘;</p><p>  、能夠?qū)崟r(shí)顯示測(cè)量結(jié)果。</p><p>  1.3 設(shè)計(jì)時(shí)要考慮的問(wèn)題</p><p>  由于人體的脈搏信號(hào)具有頻率低、幅度小干擾大,不穩(wěn)定度低,隨機(jī)性強(qiáng)等特點(diǎn),使得對(duì)脈搏信號(hào)的采集放大電路的

21、設(shè)計(jì)提出了很嚴(yán)格的要求,尤其是抗干擾變?yōu)槭种匾?,需要設(shè)計(jì)低通濾波器進(jìn)行濾波。選擇放大器時(shí)需要從增益、頻率響應(yīng),輸入阻抗,共模抑制比,噪聲,漂移等幾個(gè)方面加以綜合考慮。</p><p><b> ?。?)抗干擾</b></p><p>  工頻50HZ干擾及其各次諧波</p><p>  使用頻率為50HZ的市電的電子儀器設(shè)備會(huì)對(duì)檢測(cè)系統(tǒng)會(huì)產(chǎn)生

22、較大的干擾,其幅值大約是脈搏信號(hào)峰峰值的50%,是主要的干擾源</p><p><b>  肌電干擾</b></p><p>  肌肉的收縮會(huì)產(chǎn)生微伏級(jí)的電勢(shì),其幅值大約是脈搏信號(hào)峰峰值的10%,維持時(shí)間大約是50ms,頻帶范圍可以在0HZ~10000HZ。</p><p>  由于呼吸引起的基線漂移和ECG幅度變化</p>&l

23、t;p>  呼吸引起的基線漂移可以看成是一個(gè)以呼吸的頻率加入ECG信號(hào)的竇性成分(正弦曲線),這個(gè)正弦成分的幅度和頻率是變化的。呼吸所引起的ECG信號(hào)的幅度的變化可以達(dá)到15%?;€漂移的頻率是從0.15~0.3HZ。</p><p><b>  低噪聲、低漂移</b></p><p>  在脈搏信號(hào)放大器中,由于增益較高,噪聲和漂移是兩個(gè)較重要的參數(shù)。脈搏信號(hào)

24、放大器運(yùn)行過(guò)程中的噪聲主要表現(xiàn)為電子線路的固有熱噪聲和散粒噪聲,這些都屬于白噪聲,其幅值為正態(tài)分布。為了獲得一定信噪比的輸出信號(hào),對(duì)放大器的低噪聲性能有嚴(yán)格要求。另外,溫度變化會(huì)造成零點(diǎn)漂移,漂移現(xiàn)象限制了放大器的輸入范圍,使得微弱的緩變信號(hào)無(wú)法被放大。而脈搏信號(hào)具有很低的頻率成分,為了能正常測(cè)量,必須采取措施來(lái)限制放大器的漂移。所以放大器應(yīng)選用低漂移,高輸入阻抗并且具有高共模抑制比的集成運(yùn)放電路。</p><p&g

25、t;<b>  2 系統(tǒng)總體設(shè)計(jì)</b></p><p><b>  2.1 方案論證</b></p><p>  脈搏測(cè)量?jī)x要實(shí)現(xiàn)對(duì)脈搏信號(hào)的檢測(cè),并且能夠?qū)γ}搏信號(hào)進(jìn)行處理,并進(jìn)而求得脈搏數(shù)來(lái)顯示??紤]到系統(tǒng)的實(shí)現(xiàn),有兩種方案可以實(shí)現(xiàn)。</p><p>  方案一:使用純硬件電路來(lái)實(shí)現(xiàn)。整個(gè)系統(tǒng)的框圖如下圖圖2.1所示

26、</p><p>  圖2.1 純硬件脈搏測(cè)量?jī)x框圖</p><p>  方案二:使用單片機(jī)電路來(lái)實(shí)現(xiàn)。通過(guò)信號(hào)調(diào)理電路,將脈搏信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),然后利用單片機(jī)來(lái)實(shí)現(xiàn)脈搏測(cè)量功能。使用該方案其框圖如下圖圖2.2所示。</p><p>  圖2.2 單片機(jī)脈搏測(cè)量?jī)x框圖</p><p>  通過(guò)比較以上兩種方案。方案一由于使用純硬件方式,系

27、統(tǒng)穩(wěn)定度比較高。但是功能有限,靈活度較低,也不能很好的實(shí)現(xiàn)鍛煉自己的目的。而單片機(jī)方案有較大的活動(dòng)空間,不但能實(shí)現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對(duì)系統(tǒng)進(jìn)行升級(jí),所以我們采用后一種方案。</p><p>  2.2 總體設(shè)計(jì)框圖</p><p>  脈搏測(cè)量?jī)x系統(tǒng)總框圖,如圖2.3所示。系統(tǒng)由五個(gè)部分組成:信號(hào)采集單元,信號(hào)調(diào)理單元,信號(hào)整形單元,單片機(jī)單元,顯示

28、單元。其中信號(hào)采集單元主要是選用合適的傳感器將脈搏的壓力信號(hào)轉(zhuǎn)換為電信號(hào),一般傳感器輸出的電壓都在幾毫伏左右。信號(hào)調(diào)理單元主要包括信號(hào)的低通濾波,以及實(shí)現(xiàn)信號(hào)的放大,經(jīng)過(guò)信號(hào)調(diào)理單元,幾毫伏的脈搏信號(hào)的電壓被放大為4V-5V左右。信號(hào)整形單元?jiǎng)t將模擬信號(hào)轉(zhuǎn)化成數(shù)字信號(hào),將脈搏信號(hào)轉(zhuǎn)換為同頻率的脈沖。單片機(jī)單元通過(guò)計(jì)時(shí)器求出一次脈搏的時(shí)間,并進(jìn)而得出脈搏數(shù),然后將該數(shù)據(jù)送到顯示單元進(jìn)行顯示。顯示單元選擇數(shù)碼管或者液晶屏,對(duì)數(shù)據(jù)進(jìn)行實(shí)時(shí)顯示

29、。</p><p>  圖2.3 系統(tǒng)總體框圖</p><p><b>  3 系統(tǒng)硬件設(shè)計(jì)</b></p><p>  系統(tǒng)的硬件框圖如圖2.3所示,包括五個(gè)部分組成。下面將分別介紹該五個(gè)單元。</p><p>  3.1 脈搏信號(hào)的采集</p><p>  該單元要將脈搏跳動(dòng)的壓力信號(hào)轉(zhuǎn)換為

30、電信號(hào),因此需要使用傳感器來(lái)實(shí)現(xiàn)。</p><p>  3.1.1傳感器的選擇</p><p><b> ?、賶弘娛絺鞲衅?lt;/b></p><p>  目前常用的是一次性心電電極,它是用印刷方法制得的Ag/ Agcl傳感器。這種傳感器采用接扣與敏感區(qū)分離的方法,能明顯的減少由于人體運(yùn)動(dòng)產(chǎn)生的干擾。電極的好壞對(duì)采集到的心電信號(hào)質(zhì)量起著至關(guān)重要的作

31、用,采用的電極應(yīng)有貼力強(qiáng),能緊附在人體表面,柔軟、吸汗、極化電壓低、導(dǎo)電性良好等特點(diǎn)。當(dāng)選用電極傳感器時(shí),需要3個(gè)電極分別置于左右手和左腿,構(gòu)成標(biāo)準(zhǔn)導(dǎo)聯(lián)。臨床上為了統(tǒng)一和便于比較所獲得的脈搏信號(hào),在檢測(cè)脈搏信號(hào)時(shí),對(duì)電極的位置,引線與放大器的連接方式都有嚴(yán)格的統(tǒng)一規(guī)定。</p><p>  目前市場(chǎng)上有一種采用新型高分子壓電材料聚偏氟乙烯研制的壓電傳感器,其靈敏度高,頻帶范圍好,結(jié)構(gòu)簡(jiǎn)單,便于使用。當(dāng)手指前端受到

32、輕微的壓力時(shí),可以感覺(jué)到手指前端在血壓的作用下有一張一弛的感覺(jué),將這個(gè)信號(hào)用傳感器提取出來(lái),轉(zhuǎn)變?yōu)殡娦盘?hào),通過(guò)指脈的波形檢測(cè),就可以獲得人體的脈搏信號(hào)。</p><p><b>  光電式傳感器</b></p><p>  血液是高度不透明的液體,光照在一般組織中的穿透性要比血液中大幾十倍,據(jù)此特點(diǎn),采用光電效應(yīng)手指脈搏傳感器來(lái)拾取脈搏信號(hào)。反向偏壓的光敏二極管,它的

33、反向電流具有隨光照強(qiáng)度增加而增加的光電效應(yīng)特性,在一定光強(qiáng)范圍內(nèi),光敏二極管的反向電流與光強(qiáng)呈線性關(guān)系。指端血管的容積和透光度隨心搏改變時(shí),將使光電三極管極管收到不同的光強(qiáng),并由此產(chǎn)生的光電流均隨之作相應(yīng)變化。常用檢測(cè)脈搏的光電傳感器分為紅外對(duì)管和紅外放射管。</p><p>  采用紅外對(duì)管。將對(duì)管夾于手指端部,通過(guò)手指的血液濃度會(huì)隨著心臟的跳動(dòng)發(fā)生變化,紅外對(duì)管對(duì)應(yīng)的信號(hào)便會(huì)發(fā)生相應(yīng)的變化,采集此信號(hào)經(jīng)過(guò)放大

34、,濾波,比較等處理便可以得到理想的信號(hào)。。</p><p>  采用反射式的紅外管?,F(xiàn)在市場(chǎng)上的心率計(jì)普遍采用這種傳感器來(lái)采集信號(hào),因?yàn)榇思t外管接收和發(fā)射都在手指的同一側(cè),因此便不用考慮每個(gè)人手指情況不同所造成的麻煩。接收的是血液漫反射回來(lái)的光,此信號(hào)可以精確地測(cè)得血管內(nèi)容積變化。</p><p><b>  集成傳感器</b></p><p>

35、;  當(dāng)前,市面上有很多類型的集成心電傳感器,其靈敏度高,集成度高,直接就可以反映出心率的變化,且已包含了濾波等抗干擾電路,波形經(jīng)過(guò)放大可以直接處理使用。缺點(diǎn)是價(jià)格非常昂貴,一般均在五百元以上,就本次設(shè)計(jì)來(lái)說(shuō),考慮到經(jīng)費(fèi)以及鍛煉自己的目的,不選擇使用該型傳感器。</p><p>  3.1.2三種方案的優(yōu)缺點(diǎn)比較</p><p><b>  光電式:</b></

36、p><p>  優(yōu)點(diǎn):靈敏度高,易于操作,響應(yīng)速度快,結(jié)構(gòu)簡(jiǎn)單。</p><p>  缺點(diǎn):1、外部光源的變化對(duì)測(cè)量結(jié)果的影響較大;</p><p>  2、需要購(gòu)買專門(mén)的醫(yī)用光電傳感器,價(jià)格較貴且不易購(gòu)買;</p><p>  3、對(duì)這樣的器件接觸很少,對(duì)其進(jìn)行調(diào)試時(shí)可能會(huì)出現(xiàn)較大困難。</p><p><b>

37、;  壓電式:</b></p><p>  優(yōu)點(diǎn):結(jié)構(gòu)簡(jiǎn)單,實(shí)時(shí)性好,工作頻帶寬,應(yīng)用電路簡(jiǎn)單,且價(jià)格低廉。</p><p>  缺點(diǎn):直接與人體相接觸,容易因?yàn)槿梭w肌肉的顫動(dòng)等而產(chǎn)生干擾。并且容易受到外界其他信號(hào)的干擾。</p><p><b>  集成式:</b></p><p>  優(yōu)點(diǎn):集成度高,包含

38、了濾波,放大電路,可以直接輸出信號(hào),便于操作,有效的減少了各種干擾。</p><p>  缺點(diǎn):降低了本任務(wù)的難度,如果采用該傳感器,只需將其直接接上單片機(jī)即可實(shí)現(xiàn)功能,且價(jià)格非常昂貴。</p><p>  考慮到種種情況,結(jié)合本系統(tǒng)的設(shè)計(jì)要求以及經(jīng)費(fèi)的考慮,最終選擇壓電式陶瓷片。該傳感器價(jià)格較低,而且輸出電壓變化較為明顯,可以實(shí)現(xiàn)我們的實(shí)驗(yàn)?zāi)康摹?lt;/p><p>

39、  3.1.3壓電陶瓷片介紹</p><p>  壓電陶瓷片的外觀和電路符號(hào)如下圖3.2所示。壓電片包括三個(gè)部分,鍍銀層,壓電陶瓷,以及銅片。外部壓力作用于銅片時(shí),壓電陶瓷就可以感受壓力而產(chǎn)生電信號(hào),并最終通過(guò)鍍銀層將該信號(hào)輸出。在使用時(shí),壓電陶瓷片要通過(guò)導(dǎo)線與電路板連接,注意在焊接壓電陶瓷片時(shí),時(shí)間不能太長(zhǎng)以免燙壞壓電陶瓷片的鍍銀層。</p><p>  圖3.1 壓電陶瓷片的符號(hào)及外觀

40、</p><p>  由于壓電陶瓷片的資料比較少,為了確定使用該傳感器能夠?qū)崿F(xiàn)本次設(shè)計(jì)的目的,先要對(duì)其進(jìn)行實(shí)驗(yàn),來(lái)確定它的輸出電壓是否符合要求。</p><p>  使用實(shí)驗(yàn)室砝碼來(lái)測(cè)試,其結(jié)果如下表表3.1所示。</p><p>  表3.1 壓電陶瓷片輸出電壓測(cè)試表</p><p>  由于只需要4mv-5mv左右的電壓輸出,就可以實(shí)現(xiàn)

41、設(shè)計(jì)要求。由本次試驗(yàn),可以得知壓電陶瓷片可以實(shí)現(xiàn)我們所要達(dá)到的目標(biāo)。</p><p>  3.2 信號(hào)調(diào)理單元</p><p>  信號(hào)調(diào)理電路包括對(duì)信號(hào)的放大和濾波兩個(gè)部分。由于傳感器輸出的電壓比較小,在幾毫伏左右,且頻率較低,需要低噪聲,低漂移,高輸入阻抗的放大器,所以選擇使用儀表放大器。肌電干擾可能會(huì)導(dǎo)致放大器的靜態(tài)工作點(diǎn)偏移,甚至使放大器達(dá)到飽和,所以第一級(jí)放大器的放大倍數(shù)不能太高

42、。因此還需要另一個(gè)放大器。此外,為了濾去高頻信號(hào)和市電的干擾,還需要設(shè)計(jì)一個(gè)低通濾波器。這部分電路的框圖如下圖圖3.2所示。</p><p>  圖3.2 信號(hào)調(diào)理單元框圖</p><p>  下面,將分別介紹三個(gè)部分。</p><p>  3.2.1一級(jí)放大電路</p><p>  一級(jí)放大電路是整個(gè)系統(tǒng)設(shè)計(jì)的重點(diǎn),脈搏測(cè)量?jī)x要求在脈搏

43、信號(hào)頻率范圍內(nèi),不失真的放大所采集的微弱信號(hào),這要求所用的放大器必須具有低噪聲,低漂移,低失調(diào)參數(shù),高共模抑制比,高輸入阻抗,線形度小等特點(diǎn)。</p><p>  為了達(dá)到上述要求,并聯(lián)型雙運(yùn)放放大電路能滿足其要求</p><p>  圖3.3 并聯(lián)型雙運(yùn)放放大電路</p><p>  前兩個(gè)運(yùn)放為同向比例放大器,輸入阻抗很高,它對(duì)共模信號(hào)有很高的抑制比。由于

44、Rx連接于這兩個(gè)放大器的求和點(diǎn)之間,當(dāng)一個(gè)差分電壓加到醫(yī)用放大器的輸入端時(shí),整個(gè)輸入的電壓都呈現(xiàn)在Rx兩端。由于Rx兩端的電壓等于V2-V1,所以流過(guò)Rx的電流等于(V2-V1)/Rx,因此輸入信號(hào)將通過(guò)放大器獲得增益并且得到放大。</p><p>  這種電路的優(yōu)點(diǎn)在于:</p><p><b>  a,高共模抑制比;</b></p><p>

45、;  b,通常只需改變電阻Rx大小可改變?cè)鲆妗?lt;/p><p>  以上電路需要三個(gè)運(yùn)放,在調(diào)試的時(shí)候會(huì)比較復(fù)雜。現(xiàn)在的很多儀表放大器的內(nèi)部電路與這個(gè)電路相同,而且儀表放大器都有成品可以買到,只需調(diào)整外界電阻就可以調(diào)整放大器的放大倍數(shù),準(zhǔn)確而且方便。</p><p>  以下是幾種常用的集成儀表放大器,其主要參數(shù)如表3.2</p><p>  表3.2 三種集成醫(yī)

46、用放大器參數(shù)</p><p>  脈搏信號(hào)是在強(qiáng)噪聲下的微弱信號(hào),它對(duì)前置放大器的共模抑制比,輸入阻抗,輸入噪聲,輸入失調(diào)電壓有較嚴(yán)格的要求,由表3.2知AD620是最為理想的。 AD620參數(shù)如下表表3.3所示。</p><p>  表3.3 AD620參數(shù)表</p><p>  AD620的芯片引腳如下圖圖3.4所示</p><p> 

47、 圖3.4 AD620芯片引腳圖</p><p>  其中增益為 </p><p>  由于肌電干擾可能造成前置放大器靜態(tài)工作點(diǎn)的偏移,甚至截至飽和,所以前置放大器的增益不能太大。所以設(shè)計(jì)時(shí)考慮兩級(jí)放大,第一級(jí)采用AD620,外接一個(gè)4.7K的電阻,放大倍數(shù)由公式大約放大十倍左右。</p><p>  實(shí)際的一級(jí)放大電路原理圖如圖3.5所示。</p&

48、gt;<p>  圖3.5 一級(jí)放大電路</p><p>  3.2.2二階濾波器電路</p><p>  由于脈搏信號(hào)的頻率在1.33HZ左右,正常情況下不會(huì)出現(xiàn)高于2HZ的信號(hào),因此需要設(shè)計(jì)一個(gè)低通濾波器,用來(lái)濾去高頻信號(hào)。在這個(gè)系統(tǒng)中最大的干擾就是來(lái)自市電的50HZ干擾信號(hào),考慮到有些病人在患病時(shí)可能會(huì)出現(xiàn)較高的脈搏,因此在設(shè)計(jì)濾波器的截止頻率在4HZ左右,這樣不但能保

49、證不濾去脈搏信號(hào),而且能很好的將干擾濾去。</p><p><b> ?。?)方案選擇:</b></p><p><b> ?、贌o(wú)源濾波器</b></p><p>  采用RC低通濾波器。其電路如圖3.6所示,特點(diǎn)是電路簡(jiǎn)單,阻帶衰減太慢,選擇性較差。其幅頻特性如圖3.7所示。

50、 </p><p>  圖3.6 一階無(wú)源濾波</p><p>  圖3.7 一階無(wú)源濾波器幅頻特性</p><p><b> ?、诙A低通濾波器</b></p><p>  采用二階有源濾波器,通帶內(nèi)幅頻特性曲線比較平坦,而且二階也可以達(dá)到較陡的衰減的特性。由于主要的干擾出現(xiàn)在50HZ左右,所以在截止頻率較低

51、時(shí),采用二階濾波器即可達(dá)到很好的濾波效果。二階有源濾波器的電路圖如下圖3.8所示。其幅頻特性如圖3.9所示。</p><p>  圖3.8 二階有源濾波器</p><p>  圖3.9 有源濾波器幅頻特性</p><p><b> ?。?)參數(shù)確定</b></p><p>  電容C的容量宜在微法數(shù)量級(jí)以下,電阻器的

52、阻值一般應(yīng)在幾百千歐以內(nèi)。我們現(xiàn)在設(shè)定C1=C2=0.33uF,R1=R2=100K。</p><p><b>  根據(jù)</b></p><p>  可以計(jì)算出,該濾波器的截止頻率為4.8HZ。符合所要達(dá)到的指標(biāo)。同時(shí),為了更好的實(shí)現(xiàn)效果,也可以使用一些稍大的電阻,如110K等。</p><p><b> ?。?)方案確定</b

53、></p><p>  由于使用二階有源濾波器能夠很好的實(shí)現(xiàn)系統(tǒng)的濾波目的,所以選擇使用方案②,即二階有源濾波器。其電路原理圖如圖3.10所示。</p><p>  圖3.10 二階濾波器</p><p>  3.2.3第二級(jí)放大電路</p><p>  第二級(jí)放大采用同相放大器,其電路圖為</p><p> 

54、 圖3.11 同相放大器電路</p><p><b>  其閉環(huán)電壓增益</b></p><p><b>  AVF=1+</b></p><p>  輸入電阻 Ri=ric</p><p>  輸出電阻 R0=0</p><

55、;p>  平衡電阻 RP=R1//RF</p><p>  其中,ric為運(yùn)放本身同相端對(duì)地的共模輸入電阻,一般為108歐姆。</p><p>  同相放大器具有輸入阻抗高,輸出阻抗很低的特點(diǎn),廣泛用于前置放大級(jí)。若RF≈0,R1=∞(開(kāi)路),則為電壓跟隨器,與晶體管電壓跟隨器(射極輸出器)相比,集成運(yùn)放的電壓跟隨器的輸入阻抗更高,幾乎不從信號(hào)源吸取電流;輸

56、出阻抗更小,可視作電壓源,是較理想的阻抗變換器。</p><p>  在設(shè)計(jì)時(shí),選用的運(yùn)放為T(mén)L082,該運(yùn)放具有較小的輸入偏置電壓和偏移電流,輸出設(shè)有短路保護(hù),輸入級(jí)有較高的輸入阻抗,完全可以達(dá)到設(shè)計(jì)要求。同時(shí),設(shè)定RF=100K,R1=1K,</p><p><b>  由AVF=1+</b></p><p>  可以得到第二級(jí)的放大倍數(shù)為

57、101倍,可以實(shí)現(xiàn)系統(tǒng)所要達(dá)到的放大參數(shù)。</p><p>  二級(jí)放大電路的電路圖如圖3.12所示。</p><p>  圖3.12 二級(jí)放大器電路</p><p><b>  3.3 整形電路</b></p><p>  由于單片機(jī)只能檢測(cè)到數(shù)字信號(hào),因此,經(jīng)過(guò)信號(hào)調(diào)理電路后得到的模擬信號(hào)必須轉(zhuǎn)換為數(shù)字信號(hào)。這里有

58、兩個(gè)方案可以選擇。</p><p>  方案一: 使用三極管進(jìn)行整形.</p><p>  圖3.13 三極管整形電路</p><p>  方案二:使用施密特觸發(fā)器來(lái)實(shí)現(xiàn)整形。</p><p>  只要使用一個(gè)施密特觸發(fā)器,就可以實(shí)現(xiàn)對(duì)于信號(hào)的整流作用。</p><p>  由于三極管的調(diào)試較為復(fù)雜,且工作性能不如施

59、密特觸發(fā)器穩(wěn)定,所以我們選用施密特觸發(fā)器?,F(xiàn)在的施密特觸發(fā)器一般分為由555芯片構(gòu)成和用TTL電路構(gòu)成兩種。使用由555芯片構(gòu)成的施密特觸發(fā)器,結(jié)構(gòu)簡(jiǎn)單,使用方便,因此選用555芯片來(lái)完成該項(xiàng)任務(wù)。</p><p>  由555芯片構(gòu)成的施密特觸發(fā)器如下圖圖3.14所示。</p><p>  圖3.14 555施密特觸發(fā)器電路圖</p><p>  使用施密特觸

60、發(fā)器后,其輸入輸出波形的變化如下圖圖3.15所示。</p><p>  圖3.15 施密特觸發(fā)器工作波形</p><p>  由于VCC=5V,所以,當(dāng)輸入電壓大于2/3VCC,也就是3.33V時(shí),電路就可以輸出高電平,然后一直持續(xù)到1/3VCC,也就是1.67V時(shí),電路開(kāi)始輸出低電平。在前面的電路中,脈搏信號(hào)被轉(zhuǎn)化為5V左右的信號(hào),經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,脈搏信號(hào)在本級(jí)可以被轉(zhuǎn)化為能被單片機(jī)識(shí)別

61、的數(shù)字信號(hào)。</p><p>  圖3.16 整形電路</p><p>  3.4 電源濾波電路</p><p>  由于脈搏信號(hào)非常小,很容易收到外部干擾,因此設(shè)計(jì)電源濾波電路。使用該濾波電路,能夠?qū)㈦娫粗械母叩皖l雜波濾去。電路如下圖圖3.17所示。</p><p>  圖3.17 電源濾波電路</p><p>  

62、3.5 單片機(jī)電路</p><p>  在這里,單片機(jī)要實(shí)現(xiàn)對(duì)脈搏信號(hào)的處理。為了能夠在不到10s的時(shí)間內(nèi),測(cè)量出一分鐘的脈搏,可以使用單片機(jī)的定時(shí)器來(lái)實(shí)現(xiàn)。在檢測(cè)到第一個(gè)脈沖到達(dá)時(shí),開(kāi)啟定時(shí)器,然后在下一個(gè)脈沖到達(dá)時(shí),關(guān)閉計(jì)時(shí)器,如此就可以求得一次心跳所需要的時(shí)間,然后由該周期就可以得到一分鐘的脈搏數(shù)。</p><p>  考慮到單片機(jī)要實(shí)現(xiàn)以上功能,選擇使用AT89S51來(lái)構(gòu)成電路。

63、AT89S51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫(xiě)1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。<

64、;/p><p>  AT89S51具有如下特點(diǎn):40個(gè)引腳,4k Bytes Flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門(mén)狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。 </p><p>  此外,AT89S51設(shè)計(jì)和配置了振蕩頻率可為0Hz并可通過(guò)軟

65、件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p><p><b>  該單片機(jī)主要特性:</b></p><p>  ? 8031 CPU與MCS-51

66、兼容</p><p>  ? 4K字節(jié)可編程FLASH存儲(chǔ)器(壽命:1000寫(xiě)/擦循環(huán))</p><p>  ? 全靜態(tài)工作:0Hz-24KHz</p><p>  ? 三級(jí)程序存儲(chǔ)器保密鎖定</p><p>  ? 128*8位內(nèi)部RAM</p><p>  ? 32條可編程I/O線</p><p

67、>  ? 兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b>  ? 6個(gè)中斷源</b></p><p><b>  ? 可編程串行通道</b></p><p>  ? 低功耗的閑置和掉電模式</p><p>  ? 片內(nèi)振蕩器和時(shí)鐘電路</p><p>  經(jīng)過(guò)整形的信

68、號(hào)由單片機(jī)的INT0口輸入,使用單片機(jī)的外部中斷0。單片機(jī)的P0口作為數(shù)據(jù)口,與顯示屏相接,來(lái)輸出單片機(jī)所計(jì)算的脈搏值。單片機(jī)的P2.5,P2.6,P2.7口接到液晶屏的控制端,來(lái)控制單片機(jī)工作。設(shè)置定時(shí)/計(jì)數(shù)器1屏蔽,定時(shí)/計(jì)數(shù)器0工作方式為16位計(jì)數(shù)器,并對(duì)中斷做出定義。</p><p>  當(dāng)?shù)皖l信號(hào)的下降沿到來(lái)時(shí),中斷觸發(fā)。記錄這個(gè)周期內(nèi)計(jì)數(shù)器記錄的時(shí)鐘周期數(shù)。當(dāng)系統(tǒng)時(shí)鐘為12M時(shí),周期T與時(shí)鐘周期數(shù)S的

69、關(guān)系是</p><p>  當(dāng)T>0.065535s時(shí),計(jì)數(shù)器記錄的時(shí)鐘周期數(shù)會(huì)溢出,這時(shí),需要記錄計(jì)數(shù)器溢出次數(shù)C,然后再將計(jì)數(shù)器清零,重新記錄。</p><p>  設(shè)定單片機(jī)在檢測(cè)到5次心跳信號(hào)后再計(jì)算時(shí)間,然后求5次的平均數(shù)來(lái)計(jì)算一次心跳的周期,那么可以得知,一次心跳的周期T為</p><p>  這時(shí)的T即是以秒為單位的。求出T之后,一分鐘的脈搏數(shù)F就可以

70、很容易的得到</p><p>  單片機(jī)電路如下圖圖3.18所示。</p><p>  圖3.18 單片機(jī)電路</p><p><b>  3.6 顯示系統(tǒng)</b></p><p>  顯示系統(tǒng)既可以選擇使用LED,也可以選擇使用LCD。就本系統(tǒng)的功能來(lái)說(shuō),使用LED已經(jīng)可以實(shí)現(xiàn)功能,不過(guò)考慮到使用LCD,可以輸出英文

71、字符,從而使得顯示系統(tǒng)能夠更加美觀,同時(shí)也能更好的達(dá)到提高自己的目的,所以最后選擇使用液晶屏LCD。</p><p>  由于本次設(shè)計(jì)所要顯示的內(nèi)容不多,并不需要太大的液晶屏來(lái)顯示。所以選擇使用1602來(lái)進(jìn)行顯示。1602液晶每次可以顯示2行16個(gè)字符,總共32個(gè)字符,而且可以顯示所有的ASCII碼,包括標(biāo)點(diǎn),數(shù)字,英文大小寫(xiě)等,因此,使用該液晶屏可以很好的實(shí)現(xiàn)顯示功能。</p><p>

72、  1602顯示屏的主要技術(shù)指標(biāo)如表3.4所示。</p><p>  表3.4 1602液晶顯示屏的主要技術(shù)指標(biāo)</p><p>  1602液晶顯示屏共有16個(gè)引腳,其各個(gè)引腳的功能如下表,表3.5中所示。</p><p>  表3.5 1602液晶顯示屏的各個(gè)引腳功能</p><p>  使用1602,所設(shè)計(jì)的顯示電路部分如下圖圖3.

73、19所示。</p><p>  圖3.19 液晶顯示電路</p><p><b>  4 系統(tǒng)軟件設(shè)計(jì)</b></p><p><b>  4.1軟件設(shè)計(jì)</b></p><p>  軟件部分包括兩個(gè)模塊,一個(gè)是主程序模塊,而另一個(gè)則是液晶屏的驅(qū)動(dòng)模塊。下面將分別介紹這兩個(gè)模塊。</p&g

74、t;<p>  4.1.1主程序模塊</p><p>  本程序的主要思路是,利用單片機(jī)的計(jì)數(shù)器,統(tǒng)計(jì)兩次脈沖之間的時(shí)間,即可得出心跳一次的時(shí)間,然后便可以得出一分鐘的脈搏數(shù)。由于單片機(jī)的精確度非常高,所以該方法精度較高,本程序的流程圖如下圖圖4.1所示。</p><p>  圖4.1主程序流程圖</p><p>  4.1.2液晶驅(qū)動(dòng)模塊</p

75、><p>  選用1602液晶屏,在液晶屏的第一行將顯示出字符“your pulse is:”,在第二行顯示出脈搏數(shù)。其數(shù)據(jù)口為P0口。</p><p>  sbit RS = P2^5; //H數(shù)據(jù),L指令</p><p>  sbit RW = P2^6; //H讀,L寫(xiě)</p><p>  sbit E = P2^7;

76、 //片使能信號(hào),控制其工作。</p><p>  #define LCD_Data P0 //數(shù)據(jù)口</p><p><b>  其驅(qū)動(dòng)程序見(jiàn)附錄。</b></p><p>  4.2 軟件開(kāi)發(fā)環(huán)境</p><p>  單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與一般電子系統(tǒng)設(shè)計(jì)的差別在于,它既要構(gòu)成硬件邏輯電路,也要設(shè)計(jì)相

77、應(yīng)的支持軟件。Keil C51是美國(guó)Keil Software 公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),該系統(tǒng)全WINDOWS界面且?guī)旌瘮?shù)豐富,調(diào)試功能強(qiáng)大、生成代碼率很高。因此,本課題軟件的軟件調(diào)試選用該開(kāi)環(huán)境來(lái)完成。</p><p>  5 測(cè)試方案和測(cè)試結(jié)果。</p><p><b>  5.1 測(cè)試方案</b></p><p>

78、;  系統(tǒng)整體功能實(shí)現(xiàn)后,就要對(duì)其進(jìn)行測(cè)試。設(shè)計(jì)使用一個(gè)夾子,將傳感器夾在人的手腕處,這樣能夠減少因此身體抖動(dòng)而產(chǎn)生的干擾。</p><p>  5.2 模擬測(cè)試結(jié)果</p><p>  首先,使用信號(hào)源輸入與脈搏信號(hào)相仿的信號(hào),來(lái)測(cè)試整個(gè)系統(tǒng)的工作情況。我們?cè)O(shè)定輸入信號(hào)幅度為5mv,偏置為2.5mv,則模擬測(cè)試結(jié)果如下表所示。</p><p>  表5.1 模擬測(cè)

79、試結(jié)果表</p><p>  可見(jiàn),在3HZ以前,系統(tǒng)的測(cè)試結(jié)果非常準(zhǔn)確,但是在之后,由于濾波器的作用,結(jié)果無(wú)法顯示。由此可以得知,系統(tǒng)的測(cè)頻和濾波作用都實(shí)現(xiàn)了預(yù)期的效果。</p><p>  5.3 實(shí)際測(cè)試結(jié)果。</p><p>  單片機(jī)上電后會(huì)首先對(duì)液晶進(jìn)行初始化,然后直到檢測(cè)完脈搏,才會(huì)出現(xiàn)顯示內(nèi)容。因此需要大概幾秒的時(shí)間。我們選擇了三位同學(xué)來(lái)測(cè)試本系統(tǒng),

80、其結(jié)果記錄在下面的表中。其實(shí)際值由統(tǒng)計(jì)一分鐘脈搏數(shù)得出。其測(cè)試結(jié)果如下表所示。</p><p>  表5.2 實(shí)際測(cè)試結(jié)果記錄表</p><p>  由上表可以看出,由于傳感器的粗糙,在測(cè)量時(shí),仍然存在著較大的誤差,個(gè)別值的誤差還比較大,不過(guò)結(jié)合模擬測(cè)試結(jié)果,可以看出,本設(shè)計(jì)基本上實(shí)現(xiàn)了對(duì)脈搏的測(cè)量。同時(shí)也知道,該設(shè)計(jì)仍有很多的不足之處,需要進(jìn)行改進(jìn)設(shè)計(jì)。</p><

81、p><b>  附圖1 原理圖</b></p><p><b>  附錄3 主程序</b></p><p>  #include <reg52.h></p><p>  #include "LCD_1602.c"</p><p>  //定義周期測(cè)頻法測(cè)式的周

82、期數(shù),這個(gè)值越大,結(jié)果越精確,但也需</p><p><b>  //要更多的時(shí)間。</b></p><p>  #define TF_TIMES 3</p><p><b>  //頻率暫存字</b></p><p>  unsigned long g_Ftmp;</p>&l

83、t;p>  unsigned long g_Ftmp_All;</p><p>  //單周期信號(hào)結(jié)束標(biāo)志 0未測(cè)試完成 1初始化 2測(cè)試完成</p><p>  unsigned int g_flag;</p><p>  //定時(shí)器T0溢出次數(shù)統(tǒng)計(jì)</p><p>  unsigned long g_T0count;</p&g

84、t;<p><b>  //每分鐘心跳次數(shù)</b></p><p>  unsigned int g_CountMinu;</p><p>  unsigned char code string1[]="Your Pulse Is:";</p><p>  void INT0ISR( void ) interr

85、upt 0 //外部中斷0中斷服務(wù)函數(shù)</p><p><b>  {</b></p><p>  //IE0 = 0; //外部中斷0標(biāo)志位清0 在邊沿觸發(fā)模式下</p><p><b>  //會(huì)由硬件清零</b></p><p>  TR0 = 0;

86、 //停止計(jì)數(shù)</p><p>  if(1 != g_flag)</p><p><b>  {</b></p><p>  g_Ftmp = g_T0count * 65535;</p><p>  g_Ftmp += (unsigned int)(TH0<<8)+TL0;</p&

87、gt;<p>  g_flag = 2;</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  g_flag = 0;</p><p><b&

88、gt;  }</b></p><p><b>  TH0 = 0;</b></p><p><b>  TL0 = 0;</b></p><p>  g_T0count = 0;</p><p>  TR0 = 1; //啟動(dòng)定時(shí)器進(jìn)行下一周期測(cè)頻</p

89、><p><b>  }</b></p><p>  void T0ISR( void ) interrupt 1 //定時(shí)器0溢出中斷服務(wù)函數(shù)</p><p>  {TH0 = 0; </p><p><b>  TL0 = 0;</b></p><p>  g_T0c

90、ount++;</p><p><b>  }</b></p><p>  void TFInit( void ) //初始化函數(shù)</p><p><b>  {</b></p><p>  EX0 = 1; //使能外部中斷0</p><p> 

91、 IT0 = 1; //外部中斷0觸發(fā)方式為邊沿觸發(fā) 高-->低</p><p>  ET0 = 1; //使能T0溢出中斷</p><p>  PX0 = 1; //外部中斷0為高優(yōu)先級(jí)</p><p>  PT0 = 0; //定時(shí)器0溢出中斷為低優(yōu)先級(jí)</p><p>  TMOD = 0x01;

92、 //屏蔽T1,GATE = 0: 軟件控制TR0啟動(dòng)定時(shí)器</p><p>  // C/T = 0: T0工作在定時(shí)器方式</p><p>  // M1\M0= 01:T0工作方式為16位定時(shí)器</p><p>  TF0 = 0; //清零標(biāo)志位,T0溢出中斷請(qǐng)求</p><p>  IE0 = 0;

93、 //清零標(biāo)志位,外部中斷標(biāo)志位</p><p><b>  TH0 = 0; </b></p><p><b>  TL0 = 0;</b></p><p>  g_T0count = 0;//定時(shí)器溢出次數(shù)初始化</p><p>  g_Ftmp = 0;</p><

94、p>  g_CountMinu = 0;</p><p>  g_Ftmp_All = 0;</p><p>  g_flag = 1; //標(biāo)志位初始化</p><p>  EA = 1; //充許全局中斷</p><p><b>  }</b></p><p>  void G

95、etFreq( void ) //求頻率</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  g_Ftmp_All = 0;</p><p><b>  EA = 1;</b></p><

96、p>  for(i=0; i<TF_TIMES; i++) //統(tǒng)計(jì)TF_TIMES次T之和</p><p><b>  {</b></p><p>  while(2 != g_flag || 1 == g_flag);</p><p>  g_flag = 0;</p><p>  LC

97、D_Showchar(31, i+49);</p><p>  g_Ftmp_All += g_Ftmp; //每個(gè)時(shí)鐘周期為1us </p><p><b>  }</b></p><p><b>  EA = 0;</b></p><p>

98、;  g_flag = 1;</p><p>  g_Ftmp = g_Ftmp_All/TF_TIMES;</p><p>  g_CountMinu = (60*1000000)/g_Ftmp;</p><p><b>  }</b></p><p>  void main()</p><p&g

99、t;<b>  {</b></p><p><b>  TFInit();</b></p><p>  LCD_init();</p><p>  LCD_Showstring(0 , string1);</p><p>  GetFreq();</p><p>  TS16

100、02DisInt(22, g_CountMinu);</p><p><b>  }</b></p><p>  附錄4 液晶驅(qū)動(dòng)程序</p><p>  #include <reg52.h></p><p>  #define uchar unsigned char</p><p>

101、  sbit LCD_RS = P2^5;</p><p>  sbit LCD_RW = P2^6;</p><p>  sbit LCD_EN = P2^7;</p><p>  #define LCD_Bus P0</p><p>  void LCD_init();</p><p>  void LCD_Sh

102、owchar(unsigned char position , unsigned char z);//顯示字符函數(shù),并指定相應(yīng)的位置</p><p>  void LCD_Showstring(unsigned char line , unsigned char str[]);//顯示字符串,并指定相應(yīng)的行</p><p>  void TS1602DisInt (unsigned cha

103、r X, unsigned long Num );</p><p>  void delay(unsigned char t)</p><p><b>  {</b></p><p>  unsigned char i , j , k;</p><p>  for(i=0;i<t;i++)</p>&

104、lt;p>  for(j=0;j<2;j++)</p><p>  for(k=0;k<255;k++);</p><p><b>  }</b></p><p>  //------寫(xiě)命令子函數(shù)</p><p>  void WriteCode(unsigned char c)</p>

105、<p><b>  {</b></p><p><b>  delay(5);</b></p><p>  LCD_RS=0;//低電平有效時(shí)寫(xiě)命令,選擇指令寄存器</p><p>  LCD_RW=0; //RW=0,選擇寫(xiě)模式</p><p>  delay(10);</p&g

106、t;<p><b>  LCD_EN=1;</b></p><p>  LCD_Bus=c;</p><p>  delay(10);</p><p>  LCD_EN=0; //lcd使能端,當(dāng)是下降沿的時(shí)候?qū)憯?shù)據(jù)和命令</p><p><b>  }</b></p>

107、;<p>  //-----寫(xiě)數(shù)據(jù)子函數(shù)</p><p>  void WriteData(unsigned char w)</p><p><b>  { </b></p><p><b>  delay(5);</b></p><p>  LCD_RS=1; //選擇數(shù)據(jù)寄存

108、器</p><p>  LCD_RW=0; //選擇寫(xiě)模式</p><p>  delay(10); </p><p><b>  LCD_EN=1;</b></p><p>  LCD_Bus=w;</p><p>  delay(10);</p><p><b

109、>  LCD_EN=0;</b></p><p><b>  }</b></p><p>  //顯示字符子程序,同時(shí)寫(xiě)上要顯示的位置和要顯示的字符</p><p>  void LCD_Showchar(unsigned char position,unsigned char z )</p><p>

110、<b>  {</b></p><p>  unsigned char p;</p><p>  if(position<16)</p><p>  p=position+0x80;</p><p><b>  else</b></p><p>  p=position

111、+0xB0; </p><p>  WriteCode(p);</p><p>  WriteData(z);</p><p><b>  }</b></p><p>  //顯示字符串的程序,同時(shí)寫(xiě)上要顯示第幾行和字符串的名字</p><p>  void LCD_Showstring(u

112、nsigned char line , unsigned char str[])</p><p><b>  {</b></p><p>  unsigned char i , j;</p><p>  i=line*0x10;</p><p>  for(j=0;str[j]!='\0';j++)<

113、;/p><p>  LCD_Showchar(i++,str[j]);</p><p><b>  }</b></p><p>  /*******************在特定位置顯示整數(shù)***********************/</p><p>  void TS1602DisInt (unsigned char

114、X, unsigned long Num )</p><p><b>  {</b></p><p>  unsigned char i = 0, a[7];</p><p><b>  do</b></p><p><b>  {</b></p><p&g

115、t;  a[i++] = Num%10;</p><p>  Num = Num/10;</p><p><b>  }</b></p><p>  while(Num);</p><p>  for( ; i; )</p><p><b>  {</b></p>

116、<p>  LCD_Showchar(X++,a[--i]+48);</p><p><b>  }</b></p><p><b>  }</b></p><p>  //------液晶初始化函數(shù)-----</p><p>  void LCD_init(void)</p&g

117、t;<p><b>  {</b></p><p>  delay(10);</p><p>  WriteCode(0x80);</p><p>  WriteCode(0x01); //應(yīng)該先清屏并復(fù)位光標(biāo)</p><p>  WriteCode(0x38); //設(shè)置8位,

118、2行,5X7點(diǎn)陣</p><p>  WriteCode(0x0C); //開(kāi)顯示器, 開(kāi)啟光標(biāo),且光標(biāo)允許閃爍</p><p>  WriteCode(0x06); //文字不動(dòng),光標(biāo)自動(dòng)右移</p><p>  //寫(xiě)入顯示起始地址</p><p><b>  }</b></p>

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論