基于MCS-51系列單片機(jī)測(cè)量頻率的設(shè)計(jì)與實(shí)現(xiàn)
對(duì)于周期波頻率的測(cè)量方法很多,但大多是通過(guò)測(cè)量間接計(jì)算頻率。本文介紹了用目前應(yīng)用比較廣泛的MCS-51系列單片機(jī)對(duì)周期波頻率進(jìn)行測(cè)量,并通過(guò)LED以數(shù)字形式直觀地示出頻率,實(shí)現(xiàn)測(cè)量的智能化,省去間接對(duì)頻率計(jì)算的麻煩與錯(cuò)誤。文章對(duì)其測(cè)量原理,設(shè)計(jì)和實(shí)現(xiàn)作了說(shuō)明,介紹了主要程序,并進(jìn)行了誤差分析。
目前單片機(jī)廣泛應(yīng)用到國(guó)民經(jīng)濟(jì)建設(shè)和日常生活的許多領(lǐng)域,成為測(cè)控技術(shù)現(xiàn)代化不可缺少的重要工具。而本文適應(yīng)這一發(fā)展趨勢(shì),把MCS-51系列單片機(jī)應(yīng)用于對(duì)周期波頻率的測(cè)量,并通過(guò)LED顯示器自動(dòng)顯示出來(lái),這對(duì)于頻率的測(cè)量帶來(lái)了極大的方便。
設(shè)計(jì)思想
利用施密特觸發(fā)器將邊緣緩慢變化的周期性信號(hào)如正弦波、三角波或任意形狀的模擬信號(hào)變換成同頻率的矩形脈沖。通過(guò)MCS-51系列單片機(jī)內(nèi)部的兩個(gè)十六位定時(shí)/計(jì)數(shù)器測(cè)量某段時(shí)間內(nèi)的外加脈沖數(shù),經(jīng)過(guò)處理并通過(guò)LED直接顯示出所加信號(hào)的頻率。單片機(jī)內(nèi)部的TO用來(lái)定時(shí),Tl用來(lái)計(jì)數(shù)(下降沿觸發(fā))。當(dāng)來(lái)一個(gè)計(jì)數(shù)脈沖則計(jì)數(shù)一次。在TO開(kāi)始定時(shí)的同時(shí),T1開(kāi)始計(jì)數(shù);TO定時(shí)1s時(shí)間到時(shí),T1停止計(jì)數(shù)。方框圖如下圖所示。
硬件設(shè)計(jì)
測(cè)量頻率的硬件電路主要由計(jì)數(shù)脈沖形成電路和計(jì)數(shù)顯示電路兩大部分組成。計(jì)數(shù)脈沖形成電路用“555”定時(shí)器接成施密特觸發(fā)器對(duì)外加的周期波進(jìn)行變換,使之輸出為矩形脈沖。電路如上圖所示,計(jì)數(shù)顯示電路如下圖所示,主要包括:
(1)由INTEL公司生產(chǎn)、晶振頻率為12MHz的89S02單片機(jī)。通過(guò)軟件編程使它內(nèi)部的定時(shí)器TO定時(shí),Tl對(duì)外部的所加脈沖計(jì)數(shù)。然后把測(cè)量結(jié)果值通過(guò)PO口輸出。89S02自帶8K閃存,可以有90~100個(gè)現(xiàn)場(chǎng)測(cè)量數(shù)據(jù),供回放調(diào)檢。
(2)4位七段共陰極的LED顯示器。
(3)由于采用的是4位共陰極的動(dòng)態(tài)掃描方式顯示,段代碼由89S02的PO口提供,位選線(xiàn)則由89S02P2口的P2.0~P2.3提供。由于89S02的輸入,輸出口不能提供足夠的灌電流,因此用G1~G4提供給LED足夠的顯示電流。
軟件設(shè)計(jì)
用MCS-51單片機(jī)測(cè)量頻率的程序主要包括:初始化程序,定時(shí)計(jì)數(shù)程序、LED顯示程序。初始化程序略。定時(shí)計(jì)數(shù)主要程序:
測(cè)量范圍
在上述程序下的最大測(cè)量頻率為255Hz。適當(dāng)調(diào)整程序后的最大測(cè)量頻率可為89S02主頻的1/12,但在保證測(cè)量精度的前提下最大測(cè)量頻率宜安排在主頻的1/100以下。
誤差分析
上述程序的最大測(cè)量頻率為255Hz,由于單片機(jī)在響應(yīng)中斷的時(shí)候有2~6個(gè)機(jī)器周期,按最大誤差計(jì)算,6-2=4個(gè)機(jī)器周期,在1s鐘中斷響應(yīng)一共發(fā)生20次,最不利的累計(jì)誤差時(shí)間為4×20=80微秒,因此在此程序下的最大誤差為80/1000000=0.08/1000,這樣的精度完全能滿(mǎn)足現(xiàn)場(chǎng)檢測(cè)的需要。