摘要:用D觸發(fā)器控制兩個計數(shù)器count1和count2的同步工作,以保證count1和count2計數(shù)時間的一致性:將count1和count2與單片機(jī)的定時器TO和T1相結(jié)合構(gòu)成兩個20位的高精度計數(shù)器,分別對標(biāo)準(zhǔn)頻率脈:中和被測頻率脈沖進(jìn)行計數(shù):利用單片機(jī)串行完成輸出顯示。從而克服了傳統(tǒng)測頻原理的頻率計的測量精度隨被測信號頻率的下降而降低的局限性,提高了頻率測量的精度。
關(guān)鍵詞:單片機(jī)控制 等精度 頻率 計數(shù)器
中圖分類號:TP368.1
文獻(xiàn)標(biāo)識碼:B 文章編號:1002-2422(2008)01-0005-02
用傳統(tǒng)測頻原理制作的頻率計,其測量精度往往隨被測信號頻率的下降而降低,在實(shí)際應(yīng)用過程中有很大的局限性。等精度頻率計能夠大幅提高頻率的測量精度,更有利于教學(xué)和科研中的頻率測試。創(chuàng)新實(shí)驗(yàn)設(shè)計利用單片機(jī)、2個計數(shù)器以及D觸發(fā)器對被測信號脈沖與標(biāo)準(zhǔn)信號脈沖實(shí)現(xiàn)同步計數(shù),完成頻率測量功能。在保證產(chǎn)品質(zhì)量和增加產(chǎn)品功能的同時,突現(xiàn)降低制作成本、取材方便、電路簡單等特點(diǎn),具有實(shí)用價值,在淮安市電子設(shè)計競賽中受到了評委專家們的好評,榮獲三等獎。
1 系統(tǒng)的硬件設(shè)計組成框圖
系統(tǒng)的硬件設(shè)計原理框圖如圖1所示,主要由計數(shù)器、單片機(jī)和顯示電路三部分組成。其中,計數(shù)器實(shí)現(xiàn)對標(biāo)準(zhǔn)頻率與被測頻率進(jìn)行同步檢測計數(shù);單片機(jī)完成對計數(shù)數(shù)據(jù)進(jìn)行運(yùn)算處理;顯示電路對單片機(jī)輸出數(shù)據(jù)進(jìn)行直觀顯示。系統(tǒng)的總體功能即是完成對被測信號脈沖進(jìn)行計數(shù),數(shù)據(jù)處理,輸出顯示控制。
1.1信號輸入電路設(shè)計
兩個外接計數(shù)器Count1與Count2(74LS161),與單片機(jī)內(nèi)部的定時器組合構(gòu)成兩個20位的計數(shù)器,分別用于對標(biāo)準(zhǔn)頻率脈沖和被測頻率脈沖進(jìn)行計數(shù)。D觸發(fā)器用于控制兩個計數(shù)器的同步啟動和停止。D觸發(fā)器的O端接到兩個計數(shù)器的使能端上,當(dāng)Q=1時,兩計數(shù)器同時啟動:當(dāng)Q=0時兩計數(shù)器同時停止計數(shù):保證兩個計數(shù)器計數(shù)時間的一致性。兩個外接計數(shù)器既可作為計數(shù)器,又能起到分頻的作用,使加到T0和T1的頻率不能太高,以保證T0和T1準(zhǔn)確計數(shù);增加兩個計數(shù)器的位數(shù)可以擴(kuò)大測量頻率的頻率范圍。

1.2單片機(jī)控制電路設(shè)計
單片機(jī)89C51用于控制整個系統(tǒng)的運(yùn)行控制,計算處理由兩個計數(shù)器送過來的脈沖計數(shù)數(shù)據(jù)和輸出。由單片機(jī)的數(shù)據(jù)運(yùn)算處理軟件編程功能計算出被測信號頻率,輸出串行數(shù)據(jù),傳送到串行譯碼顯示電路,顯示被測信號的精確頻率值。
1.3串行顯示電路設(shè)計
利用74LS161移位寄存功能(分頻)對單片機(jī)輸出的串行數(shù)據(jù)逐級分頻,從第一級到最后一級總共分頻8次,這樣就把單片機(jī)輸出的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)。由74LS161的譯碼顯示功能,對數(shù)據(jù)進(jìn)行頻段譯碼,分8段進(jìn)行數(shù)碼顯示,直觀明了。電路設(shè)計簡單,避免了并行輸出占用單片機(jī)輸出接口多、線路復(fù)雜,不易布線制作的困難和麻煩。
2 系統(tǒng)的軟件程序設(shè)計
單片機(jī)等精度頻率計的軟件流程框圖如圖2所示。該軟件流程比較簡單,只要按照測頻原理一步步進(jìn)行編程即可。編寫程序時,一定要先允許T0和T1計數(shù),用指令設(shè)置TR0與TR1:然后再使D觸發(fā)器輸入端置1,允許外部計數(shù)器計數(shù)。在停止計數(shù)器時恰好相反,應(yīng)先停止外部計數(shù)器,然后再停T0和T1計數(shù)。被測信號頻率的計算公式為:Fx=FsNx/Ns。為了保證測試結(jié)果的準(zhǔn)確,設(shè)計采用了多字乘除法,先是進(jìn)行Fs與Nx相乘,編寫4字節(jié)乘以4字節(jié)的程序;然后再除以Ns,這是8字節(jié)除以4字節(jié)的除法程序。以上計算程序經(jīng)多次調(diào)試驗(yàn)證,其整數(shù)部分絕對準(zhǔn)確無誤。程序清單從略。
3 結(jié)束語
該設(shè)計制作的等精度頻率計,其測頻范圍很寬,可測量0.1Hz到幾十MHz的脈沖信號。但隨著所測頻率高低的不同,測試方法也不一樣。在高頻段通常是采用測脈沖個數(shù)來進(jìn)行測頻;而在低頻段一般是采用測量信號正負(fù)脈沖的脈寬求得周期計算頻率的方法;能保證測量的精度。實(shí)驗(yàn)制作只做高頻段的測試。下一步還應(yīng)完善低頻段的測試功能,使等精度測頻功能更加全面;在條件允許的情況下,還可以采用EDA等方法進(jìn)一步提高測頻范圍和測試精度。