基于單片機(jī)的數(shù)字頻率計(jì)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:基于單片機(jī)的數(shù)字頻率計(jì)的設(shè)計(jì),目的是設(shè)計(jì)一款數(shù)字頻率計(jì),能夠測量1 Hz~20 MHz的數(shù)字頻率,包括三角波、正弦波及方波的測量,支持0.5 V~20 V電壓。本頻率計(jì)的特點(diǎn)是突破普通單片機(jī)頻率計(jì)喜歡選用的直接測量法,選擇了高頻用多周期同步法,低頻用周期法來測量頻率。這樣可以使頻率計(jì)達(dá)到更高的精度。而且本頻率計(jì)通過程序來控制分頻芯片自動(dòng)分頻,無需測量者對(duì)信號(hào)進(jìn)行預(yù)估計(jì),超出測量范圍會(huì)自動(dòng)警報(bào),更加人性化。
關(guān)鍵詞:單片機(jī);頻率計(jì);自動(dòng)分頻
1 總述
單片機(jī)頻率計(jì)不僅反應(yīng)快、精度高,操作也非常人性化,而且應(yīng)用范圍大、帶寬大以及成本低廉、小巧方便。它可以用來測量一定電壓范圍內(nèi)正弦波、三角波及方波。本設(shè)計(jì)是基于單片機(jī)為主控制電路,配合著一定的外圍芯片及電路而設(shè)計(jì)的一款處理數(shù)字信號(hào)的高頻頻率計(jì),測量范圍能達(dá)到1 Hz~20 MHz,其新穎之處在于用運(yùn)了兩種測頻方法,且采用自動(dòng)分頻的方式使基于單片機(jī)的頻率計(jì)能夠在低成本的前提下完成較高精度的高頻數(shù)字信號(hào)的頻率測量。
2 總體設(shè)計(jì)
本設(shè)計(jì)欲設(shè)計(jì)一款基于單片機(jī)的數(shù)字頻率計(jì),其特色是測量范圍為1 Hz~20 MHz。對(duì)待低頻和高頻信號(hào)的測量分別使用不同的測頻方法去對(duì)待。具體總的思想是以單片機(jī)為核心,被測信號(hào)先進(jìn)入信號(hào)放大電路進(jìn)行放大,再被送到波形整形電路整形,把被測得正弦波或者三角波轉(zhuǎn)化為方波。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對(duì)被測信號(hào)進(jìn)行計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測量的量程,并把測出的頻率數(shù)據(jù)送到顯示電路顯示。該頻率計(jì)系統(tǒng)設(shè)計(jì)共包括五大模塊:主芯片控制模塊、分頻選擇模塊、放大整形模塊、基準(zhǔn)頻率模塊和顯示模塊。各模塊作用如下:
主芯片控制模塊:以AT89S52單片機(jī)為控制核心,來完成對(duì)待測信號(hào)的計(jì)數(shù),譯碼和顯示以及對(duì)分頻比的控制。利用其內(nèi)部的定時(shí)/計(jì)數(shù)器完成待測信號(hào)周期/頻率的測量。單片機(jī)AT89S52內(nèi)部具有3個(gè)16位定時(shí)/計(jì)數(shù)器,定時(shí)/計(jì)數(shù)器的工作可以由編程來實(shí)現(xiàn)定時(shí)、計(jì)數(shù)和產(chǎn)生計(jì)數(shù)溢出時(shí)中斷要求的功能。
分頻選擇模塊:考慮單片機(jī)外部計(jì)數(shù),使用12 MHz時(shí)鐘時(shí),最大計(jì)數(shù)速率為500 kHz,因此需要外部分頻。分頻電路用于擴(kuò)展單片機(jī)頻率測量范圍,并實(shí)現(xiàn)單片機(jī)頻率測量使用統(tǒng)一信號(hào),可使單片機(jī)測頻更易于實(shí)現(xiàn),而且也降低了系統(tǒng)的測頻誤差。本設(shè)計(jì)使用的分頻芯片是74HC4040,選擇芯片是74LS153。
放大整形模塊:放大電路是對(duì)待測信號(hào)的放大,降低對(duì)待測信號(hào)幅度的要求。整形電路是對(duì)一些不是方波的待測信號(hào)轉(zhuǎn)化成方波信號(hào),便于測量。本設(shè)計(jì)使用的放大芯片是LT1358,整形芯片是74LS132。
基準(zhǔn)頻率模塊:為了產(chǎn)生一個(gè)標(biāo)準(zhǔn)的頻率,這里使用了AT89C2051。這是一款類似于AT89S51的8051內(nèi)核的非總線單片機(jī)。這里運(yùn)用其一個(gè)定時(shí)器產(chǎn)生一個(gè)穩(wěn)定的頻率。
顯示模塊:鑒于大部分頻率計(jì)采用的是數(shù)碼管形式的顯示方式,為了節(jié)約用電,減小體積本設(shè)計(jì)采用液晶顯示屏顯示,融入了文字提示等信息,方便使用者觀察選擇。本設(shè)計(jì)選用LCD1602。
2.1 高頻方案
本設(shè)計(jì)對(duì)待高頻信號(hào)(>10 kHz)欲選用多周期同步測量法,在充分利用單片機(jī)計(jì)數(shù)器的條件下,實(shí)現(xiàn)更精確的測量。圖1所示即為多周期同步法測頻原理框圖。參考閘門產(chǎn)生大概的取樣時(shí)間為T,實(shí)際閘門的開啟由參考閘門和被測信號(hào)同步產(chǎn)生。當(dāng)參考閘門給出后,由隨后到來的被測信號(hào)的第一個(gè)脈沖打開兩個(gè)計(jì)數(shù)器的閘門開始計(jì)數(shù)。被測信號(hào)fx通過閘門1由計(jì)數(shù)器A計(jì)數(shù),得到計(jì)數(shù)值Nx,標(biāo)頻信號(hào)脈沖fs通過閘門2由計(jì)數(shù)器B進(jìn)行計(jì)數(shù),得到計(jì)數(shù)值Ns。當(dāng)參考閘門關(guān)閉后,由隨后到來的被測信號(hào)脈沖關(guān)閉兩個(gè)計(jì)數(shù)器的閘門,停止計(jì)數(shù)。則被測頻率的表達(dá)式為:fx=fs×(Nx/Ns)。
多周期同步法的測量誤差主要由Ns產(chǎn)生。當(dāng)頻率較低(<10 kHz),且測量信號(hào)信噪比較小(40 dB)時(shí),觸發(fā)誤差較大,是誤差的主要來源。當(dāng)被測頻率大于10 kHz時(shí),誤差取決于標(biāo)頻信號(hào)的準(zhǔn)確度和分辨率帶來的誤差,兩者基本相當(dāng)。所以低頻測量時(shí),運(yùn)用多周期測量法誤差會(huì)很大。
如圖2所示,高頻測量時(shí)首先利用單片機(jī)的定時(shí)器TO進(jìn)行軟件分頻,根據(jù)定時(shí)時(shí)間的不同分出一個(gè)或幾個(gè)閘門信號(hào),利用這些不同周期的閘門去做不同的基準(zhǔn)時(shí)間。對(duì)于不同基準(zhǔn)時(shí)間內(nèi)的頻率測量,其精度是不同的,隨著基準(zhǔn)時(shí)間的加長,精度會(huì)越來越高。測頻時(shí),根據(jù)測量精度要求,預(yù)置閘門TO控制起閉時(shí)間為t,開啟TO,同時(shí)放出待測信號(hào)和標(biāo)準(zhǔn)信號(hào)。這時(shí)計(jì)數(shù)器T2和計(jì)數(shù)器T1分別對(duì)待測信號(hào)fx和標(biāo)準(zhǔn)信號(hào)fc(頻率已知)同時(shí)計(jì)數(shù),當(dāng)預(yù)置閘門控制時(shí)間Tn到達(dá)閘門關(guān)閉時(shí),兩個(gè)計(jì)數(shù)器停止計(jì)數(shù)。若兩個(gè)計(jì)數(shù)器T2、T1的計(jì)數(shù)值分別為M和N,則待測頻率的值為fx=fc×(M/N)。
2.2 低頻方案選擇
對(duì)低頻段信號(hào)(<10 kHz)的信號(hào)采用周期測頻法。周期測量法也是頻率測量的一種常用方法,而且常常用于低頻的測量。其原理是在被測頻率fx的一個(gè)周期內(nèi)Tx,記錄標(biāo)準(zhǔn)頻率fc的變化次數(shù)M,則有fc=M/Tx,即待測信號(hào)頻率為fx=fc/M。采用這種方法時(shí),我只用到了單片機(jī)的T2定時(shí)器,由于T2定時(shí)器擁有捕獲功能,可以在被測信號(hào)脈沖的下降沿到來之際實(shí)現(xiàn)對(duì)此時(shí)時(shí)間的捕獲,這樣在被測頻率兩個(gè)下降沿之間就形成一個(gè)周期,產(chǎn)生兩次捕獲,而這兩側(cè)捕獲的時(shí)間差就是被測頻率的周期,其頻率就是周期的倒數(shù)。運(yùn)用這種方法可以對(duì)頻率為65 535 Hz以內(nèi)的頻率進(jìn)行測量,如圖3所示。
3 結(jié)論
本論文中對(duì)高頻測量進(jìn)行了軟件仿真,從表1中我們可以看出,隨著所測頻率的位數(shù)的增大,頻率的誤差越小。在甚低頻階段,由于仿真時(shí)只開啟高頻測量,用的是多周期同步測量法,所以可以看到由于基準(zhǔn)頻率±1的誤差而引起的±1的誤差,而對(duì)于甚低頻及低頻的測量,±1的誤差是極其影響測量效果的。這和理論預(yù)測的效果是完全吻合的。由于一些不明原因,低頻測量程序無法得到仿真。如果低頻測量程序可以開啟的話,在低頻測量時(shí)就會(huì)轉(zhuǎn)化成周期法測量。這樣由于低頻的頻率很低,其周期很大,所以單片機(jī)的反應(yīng)速度是可以跟得上的,從而避免了±1的誤差,使得低頻測量也可以達(dá)到誤差為0%。對(duì)于中頻及高頻階段,我們可以在表中看到,雖然差值隨著頻率的增大而越來越大,但是誤差百分比卻越來越小,尤其對(duì)于高頻的測量,其誤差可以小到十萬分之幾,完全可以滿足一般用戶的需求。
由此,該頻率計(jì)驗(yàn)證了多周期同步測量法對(duì)中高頻信號(hào)的測量能力是不錯(cuò)的,但是對(duì)于低頻及甚低頻的測量卻缺陷很大。而正好周期法的優(yōu)點(diǎn)就是測量低頻信號(hào)非常準(zhǔn)確。這兩種方法的結(jié)合正好彌補(bǔ)了兩者的缺陷,凸顯了兩者的優(yōu)點(diǎn)。再加上智能分頻使單片機(jī)的測量帶寬提高了一千倍以上,僅用幾個(gè)芯片搭成的低成本簡單電路,使該頻率計(jì)擁有了不錯(cuò)的性價(jià)比。