頻率是單位時間內(nèi)周期性過程重復(fù)、循環(huán)或震動的次數(shù),記為f。因此,某一信號在T秒內(nèi)變化了N次,可知該信號的頻率為:f=N/T。下圖是電子計數(shù)式頻率計的原理框圖,它主要由四部分組成。
計數(shù)脈沖形成電路:該部分的作用是將被測的周期信號經(jīng)過放大、整形后轉(zhuǎn)換成可計數(shù)的脈沖。
時間基準(zhǔn)T產(chǎn)生電路:這部分的作用是提供準(zhǔn)確的計數(shù)時間T,又稱為閘門(時間)脈沖。
計數(shù)電路:這部分的作用是計數(shù)被測周期信號的重復(fù)次數(shù)。時間基準(zhǔn)產(chǎn)生電路產(chǎn)生閘門脈沖,只有在閘門脈沖持續(xù)的時間T內(nèi),才允許被測信號輸入到計數(shù)電路進行計數(shù)。
波形圖
顯示電路:該部分的作用是將測量的結(jié)果直觀的顯示出來。
由于單片機的廣泛應(yīng)用,而且單片機的功能也越來越強大,因此電子計數(shù)式頻率計的開發(fā)也轉(zhuǎn)移到以單片機為核心的基礎(chǔ)上?,F(xiàn)在的單片機基本上都帶有一個以上的定時/計數(shù)器功能模塊,因而單片機內(nèi)的定時/計數(shù)器功能模塊就成了實現(xiàn)時間基準(zhǔn)產(chǎn)生電路和計數(shù)電路功能的酋選,以代替?zhèn)鹘y(tǒng)的以分立元件構(gòu)成的電路功能模塊。其中,單片機的定時/計數(shù)器功能模塊的計數(shù)器功能,幾乎是開發(fā)人員做為計數(shù)電路的獨一無二的選擇i時間基準(zhǔn)T產(chǎn)生電路的實現(xiàn)也往往是依賴單片機的定時/計數(shù)器功能模塊的定時器功能,本文將介紹一種基于MSP430系列單片機來產(chǎn)生時間基準(zhǔn)和計數(shù)電路功能的新方法。
MSP430系列單片機是美國德州儀器(TI)公司的一類超低功耗的16位單片機。它采用RISC內(nèi)核結(jié)構(gòu),將大量外圍模塊如看門狗、A/D轉(zhuǎn)換器等集成到片內(nèi)。
利用看門狗實現(xiàn)時間基準(zhǔn)產(chǎn)生電路功能
看門狗定時器(WDT)是MSP430系列單片機中用于系統(tǒng)監(jiān)測和內(nèi)部定時使用的一種模塊,是一個16位的計數(shù)器,有看門狗和定時器兩種模式,有8種可選的定時時間。在本文中是將看門狗定時器( WDT)當(dāng)做內(nèi)部定時器,然后根據(jù)測量的實際需要將看門狗定時器(WDT)設(shè)定在8種可選的定時時間之一(本文中為1000ms),作為時間基準(zhǔn)T,即閘門脈沖持續(xù)的時間。
當(dāng)MSP430系列單片機的某一端[檢測到被測脈沖電平的跳變沿(上升沿利下降沿都可以),就開啟看門狗的定時功能,同時開始對被測信號進行計數(shù)。當(dāng)看門狗的定時時間到,即閘門脈沖的持續(xù)時聞T(時間基準(zhǔn)T),就進入看門狗的中斷服務(wù)程序并停止對被測信號的計數(shù),由霍門狗的中斷服務(wù)程序調(diào)用顯示程序子程序顯示被測信號頻率。
這里有一個值得探討的問題就是時間基準(zhǔn)T的精確度,筆者認(rèn)為單片機的看門狗電路的時間精度應(yīng)該比較高,否則看門狗電路很難應(yīng)用于系統(tǒng)監(jiān)測和內(nèi)部定時。
利用端口中斷實現(xiàn)計數(shù)電路功能
MSP430系列單片機有豐富的端口資源,其中PO、Pl和P2具有輸入/輸出功能和中斷功能,每個信號都可作為一個中斷源和外部模塊功能(除PO外)。
MSP430系列單片機的端口中斷觸發(fā)沿寄存器檢測到被測脈沖電平的跳變沿將使中斷標(biāo)志位置位,并可用軟件的方法使中斷標(biāo)志位復(fù)位。將單片機檢測被測脈沖的輸入端口進行設(shè)置,使其可以響應(yīng)被測脈沖電平的跳變沿并使中斷標(biāo)志位置位,但不進入端口中斷服務(wù)程序。這樣每來一個被測脈沖電平的跳變沿就對中斷標(biāo)志進行一次計數(shù)、復(fù)位、再計數(shù)的方法完成對被測脈沖頻率的測量。
此外,通過外接高速晶體振蕩器并在程序中進行相應(yīng)的設(shè)置可使MSP430系列單片機測量更高的頻率:也可以通過分頻器來提高MSP430系列單片機測量頻率的范圍。將測量的頻率進行簡單地轉(zhuǎn)換可以表示成測周期。
這種對單片機中斷功能“另類”的用法,應(yīng)該可以為我們以后對單片機功能的進一步深入地探索與開發(fā)帶來一些啟示。 本文中所用單片機為MSP430F2274,在實際的實驗驗證中用的是利爾達科技有限公司的430F22×的學(xué)習(xí)套件。本文重在討論時間基準(zhǔn)產(chǎn)生電路和計數(shù)電路功能的實現(xiàn)方法,故對其它部分的電路和各電路間的連接略去。
程序流程圖如下圖所示。