基于51單片機(jī)脈搏測(cè)量?jī)x
本文介紹一種用單片機(jī)制作的脈搏測(cè)量?jī)x,只要把手指放在傳感器內(nèi),很快就可以精確測(cè)出每分鐘脈搏數(shù),測(cè)量的結(jié)果用三位數(shù)字顯示出來。
一、電路工作原理
電路原理見附圖。電路由傳感器電路、信號(hào)放大和整形電路、單片機(jī)電路、數(shù)碼顯示電路等四部分組成。
傳感器由紅外線發(fā)射二極管和接收二極管組成,測(cè)量原理如下:將手指放在紅外線發(fā)射二極管和接收二極管之間,血管中血液的流量隨著心臟的跳動(dòng)變化,由于手指放在光的傳遞路徑中,血管中血液飽和度的變化將引起光的傳遞強(qiáng)度變化,此變化和心跳的節(jié)拍相對(duì)應(yīng),因此紅外接收二極管的電流也跟著心跳的節(jié)拍改變,使得紅外接收二極管輸出與心跳節(jié)拍相對(duì)應(yīng)的脈沖信號(hào)。該脈沖信號(hào)經(jīng)F1~F3、R3~R5。C1、C2等組成的低通放大器放大,F(xiàn)4、R6、R7、C3組成的放大器進(jìn)一步放大后,送給由F5、F6、RP1、R8等組成的施密特觸發(fā)器整形后輸出,作為單片機(jī)的外部中斷信號(hào)。電路中的可變電阻RP1用來調(diào)整施密特觸發(fā)器的閾值壓。
IC2、X1、R10、C5等組成單片機(jī)電路。單片機(jī)對(duì)由P3.2輸入的脈沖信號(hào)進(jìn)行計(jì)算處理后,送到數(shù)碼管顯示。發(fā)光二極管VD3作脈搏測(cè)量狀態(tài)顯示,脈搏每跳動(dòng)一次,VD3點(diǎn)亮一次。
三只數(shù)碼管VT1~VT3、R12-R21等組成數(shù)碼顯示電路。本機(jī)采用動(dòng)態(tài)掃描顯示方式,使用共陽數(shù)碼管,P3.3~P3.5口作三只數(shù)碼管的動(dòng)態(tài)掃描位驅(qū)動(dòng)碼輸出,通過三極管VT1-VT3驅(qū)動(dòng)數(shù)碼管。P1.0-P1.6口作數(shù)碼管段碼輸出。
二、軟件設(shè)計(jì)
程序用C語言編寫,由主程序、外部中斷服務(wù)程序、定時(shí)器TO中斷服務(wù)程序、延時(shí)子程序等模塊組成。主程序主要完成程序的初始化。外部中斷0服務(wù)程序由測(cè)量、計(jì)算、讀數(shù)等部分組成。定時(shí)中斷服務(wù)程序由計(jì)時(shí)、動(dòng)態(tài)掃描顯示、無測(cè)試信號(hào)判斷等部分組成。程序中用變量n對(duì)時(shí)間計(jì)數(shù),用變量m對(duì)脈搏脈沖信號(hào)個(gè)數(shù)計(jì)數(shù)。
從P3.2口輸入的與脈搏相對(duì)應(yīng)的脈沖信號(hào)作為外部中斷0的請(qǐng)求中斷信號(hào),外部中斷采用邊沿觸發(fā)的方式。由于脈沖信號(hào)的頻率很低,所以不適宜用計(jì)數(shù)的方法進(jìn)行測(cè)量,故而采用測(cè)脈沖周期的方法進(jìn)行測(cè)量,即用脈沖來控制計(jì)時(shí)信號(hào),通過計(jì)時(shí)數(shù)計(jì)算出脈沖周期,再由脈沖周期計(jì)算出頻率,從P3.2口每輸入一次脈沖信號(hào)就能顯示一次脈搏數(shù)。
定時(shí)器TO的中斷時(shí)間為5ms,每中斷一次計(jì)時(shí)變量n加1,因此計(jì)時(shí)的基本單位為5ms,例如一個(gè)脈搏脈沖周期對(duì)應(yīng)的n值為240,則對(duì)應(yīng)的時(shí)間為1.2s,由此可得每分鐘脈搏數(shù)為50。如果n的值達(dá)到2000,即10秒鐘仍沒有發(fā)生外部中斷,則表示沒有脈搏脈沖信號(hào)輸入,于是n被清零,測(cè)量結(jié)果顯示也為0。
讀數(shù)采用三位數(shù)碼顯示。定時(shí)器TO每中斷一次顯示一個(gè)位,因此3次中斷就可以刷新一次數(shù)據(jù),即15ms刷新一次數(shù)據(jù)。
三、安裝與調(diào)試
傳感器的制作是一個(gè)關(guān)鍵。可將紅外線發(fā)射二極管和接收二極管分別固定在一個(gè)塑料夾子的兩側(cè),用時(shí)只需將夾子夾在手指上即可。制作時(shí)注意保證紅外線接收二極管在使用時(shí)不要受到外界光線的干擾。
調(diào)試的主要工作是通過對(duì)RP1的調(diào)節(jié)來調(diào)整電路的靈敏度,RP1的阻值越小靈敏度越高,反之靈敏度越低。調(diào)試時(shí)可通過VD3的發(fā)光狀態(tài)進(jìn)行觀察,如果脈搏跳動(dòng)時(shí)VD3不跟隨發(fā)光,則說明靈敏度偏低,不易檢測(cè)到脈搏信號(hào);如果在沒有脈搏跳動(dòng)時(shí)VD3偶爾也點(diǎn)亮發(fā)光,說明靈敏度偏高,容易受到干擾。
評(píng)論