固緯數(shù)字頻率計(jì)提供頻率與周期測(cè)量,在高頻與低頻,均具有高解析度。頻率范圍在0.01Hz-1.3GHz,高靈敏度為10mVrms,1Hz檔解析度為100nHz,可調(diào)式觸發(fā)電平控制,具備顯示鎖定功能。 固緯數(shù)字頻率計(jì)的軟件子程序的設(shè)計(jì):
1.鍵盤(pán)中斷服務(wù)子程序
因頻率計(jì)的測(cè)量項(xiàng)目較多,所以在系統(tǒng)初始化時(shí),將默認(rèn)測(cè)量項(xiàng)目設(shè)置為測(cè)頻,且預(yù)置閘門(mén)時(shí)間設(shè)置為1ms。具體做法就是在主程序的系統(tǒng)初始化部分,將測(cè)頻選擇鍵的鍵值以及預(yù)置閘門(mén)時(shí)間設(shè)置代碼寫(xiě)入單片機(jī)RAM單元中去。這樣開(kāi)機(jī)后即使用戶(hù)沒(méi)有選擇任何測(cè)量項(xiàng)目鍵,也能進(jìn)行頻率測(cè)量。
2.軟件計(jì)數(shù)器子程序
頻率計(jì)所需要的不同閘門(mén)預(yù)置時(shí)間信號(hào)是由單片機(jī)產(chǎn)生的。由于預(yù)置閘門(mén)時(shí)間的范圍很寬,max為10s,min為1ms,僅用單片機(jī)中的定時(shí)器硬件是不能實(shí)現(xiàn)的,需采用軟硬件相結(jié)合的方法來(lái)實(shí)現(xiàn)。其具體實(shí)現(xiàn)方案為將C/T0定時(shí)器/計(jì)數(shù)器設(shè)置為由引腳高電平啟動(dòng)的方式定時(shí)器T0,初始化將其初值設(shè)為0。該計(jì)數(shù)器的啟動(dòng)過(guò)程如下:
主程序首先將單片機(jī)6腳置為高電平(邏輯1)發(fā)出預(yù)置閘門(mén)信號(hào),該信號(hào)經(jīng)同步電路而產(chǎn)生高電平的同步門(mén)信號(hào),從而使單片機(jī)引腳變?yōu)楦唠娖?,C/T0定時(shí)器中的計(jì)數(shù)器就被啟動(dòng)開(kāi)始計(jì)數(shù)。
3.數(shù)據(jù)處理子程序
當(dāng)事件計(jì)數(shù)器和時(shí)間計(jì)數(shù)器的計(jì)數(shù)值NA,NB被讀到單片機(jī)中后,通過(guò)調(diào)用數(shù)據(jù)處理子程序,根據(jù)過(guò)去讀入并保存在單片機(jī)RAM單元中的測(cè)量項(xiàng)目的鍵值,預(yù)置閘門(mén)值代碼,判斷出所要測(cè)量的參數(shù)項(xiàng)目,對(duì)計(jì)數(shù)值NA,NB進(jìn)行相應(yīng)的處理,求出所測(cè)參數(shù)的值和單位,最后應(yīng)將參數(shù)值轉(zhuǎn)換為十進(jìn)制數(shù),再轉(zhuǎn)換為驅(qū)動(dòng)LED數(shù)碼顯示器的段碼以及驅(qū)動(dòng)三個(gè)單位符號(hào)指示燈之一的位碼,作為顯示子程序的輸入數(shù)據(jù),存放在9個(gè)RAM單元組成的顯示緩沖區(qū)中。對(duì)計(jì)數(shù)值NA,NB的處理運(yùn)算要用到除法和乘法,為了提高運(yùn)算精度,應(yīng)當(dāng)采用浮點(diǎn)運(yùn)算。顯然,采用C語(yǔ)言來(lái)編寫(xiě)這些運(yùn)算程序可大大提高編程效率。