基于51單片機和CPLD的數(shù)字頻率計的設(shè)計
等精度測頻原理
本系統(tǒng)采用等精度測頻的原理來測量頻率,其原理如圖2所示。
圖2 等精度測頻原理圖
圖2中的門控信號是可預(yù)置的寬度為Tpr的一個脈沖。CNT1和CNT2是兩個可控計數(shù)器。標準頻率信號從CNT1的時鐘輸入端FS輸入,其頻率為Fs;被測信號經(jīng)整形后從CNT2的時鐘輸入端FIN輸入,設(shè)其實際頻率為Fxe,測量頻率為Fx。
當門控信號為高電平時,被測信號的上沿通過D觸發(fā)器的Q端同時啟動計數(shù)器CNT1和CNT2。對被測信號Fx和標準頻率信號Fs同時計數(shù)。當門控信號為 低電平時,隨后而至的被測信號的上沿將使這兩個計數(shù)器同時關(guān)閉。設(shè)在一次門控時間Tpr中對被測信號計數(shù)值為Nx,對標準頻率信號的計數(shù)值為Ns,則:
Fx/Nx=Fs/Ns(標準頻率和被測頻率的門寬時間Tpr完全相同)就可以得到被測信號的頻率值為:
Fx=(Fs/Ns)×Nx
系統(tǒng)硬件電路設(shè)計
1 系統(tǒng)總體設(shè)計
本系統(tǒng)的硬件電路包括鍵盤控制模塊、顯示模塊、輸入信號整形模塊以及單片機主控和CPLD模塊。鍵盤控制模塊設(shè)置5個功能鍵和3個時間選擇鍵,鍵值的讀入采用一片74LS165來完成,顯示模塊用8只74LS164完成LED的串行顯示。
系統(tǒng)由一片CPLD完成各種測試功能,對標準頻率和被測信號進行計數(shù)。單片機對整個測試系統(tǒng)進行控制,包括對鍵盤信號的讀入與處理;對CPLD測量過程 的控制、測量結(jié)果數(shù)據(jù)的處理;最后將測量結(jié)果送LED顯示輸出。被測信號整形電路主要對被測信號進行限幅、放大、再經(jīng)施密特觸發(fā)器整形后送入CPLD。用 50MHz的有源晶振作為CPLD的測試標準頻率。單片機由外接12MHz標準晶振提供時鐘電路。系統(tǒng)組成原理如圖3所示。
圖3 系統(tǒng)原理框圖
2 CPLD邏輯模塊設(shè)計
根據(jù)等精度測頻原理,利用VHDL實現(xiàn)的測頻頂層電路模塊邏輯結(jié)構(gòu)如圖4所示。
圖4 系統(tǒng)頂層模塊圖
該模塊由4個子模塊構(gòu)成。其中CONTROL1為測頻或測周期控制模塊;CONTROL2為測脈寬和占空比控制模塊;CHOICE為自校與測量選擇模塊;COUNT為基準頻率和被測頻率計數(shù)器模塊。
評論