時(shí)頻參數(shù)測量中存儲容量的壓縮方法
在智能儀表、網(wǎng)絡(luò)通訊、過程控制等測控系統(tǒng)應(yīng)用中,經(jīng)常需要對脈沖信號的頻率(或周期)進(jìn)行精確測量。常用的方法是被測信號作為閘門信號,而且一個(gè)標(biāo)準(zhǔn)頻率信號作為填充脈沖,在閘門周期內(nèi)對標(biāo)準(zhǔn)頻率信號計(jì)數(shù),如何壓縮數(shù)據(jù)存儲量,是本文要解決的主要問題。
1 基于單片機(jī)系統(tǒng)的時(shí)頻參數(shù)測量
當(dāng)采用單片機(jī)微處理器測量信號頻率(周期)時(shí),定時(shí)器T0工作在計(jì)數(shù)方式,定時(shí)器T1工作在定時(shí)方式,T1向外部發(fā)固定頻率的脈沖(時(shí)標(biāo)),T0對時(shí)標(biāo)進(jìn)行計(jì)數(shù)。被測脈沖信號產(chǎn)生一個(gè)外部中斷控制信號,向CPU發(fā)出一個(gè)中斷請求,CPU響應(yīng)中斷,在中斷服務(wù)程序中把T0的計(jì)數(shù)值讀入數(shù)據(jù)存儲器,數(shù)據(jù)轉(zhuǎn)移完成后,使T0復(fù)位,重新計(jì)數(shù),開始新的周期測量,其測量原理如圖2所示。
2 線性地址變換
單片機(jī)把計(jì)數(shù)值讀入存儲器,是把每一個(gè)測出的周期值Ti按其時(shí)間先后順序存入存儲器中。這樣,測量出的每一個(gè)Ti無論是否相同都要用一個(gè)單元來存放,且隨著被測信號的平均頻率和測量時(shí)間t的增長,所需要的存儲容量就會增加,即:
存儲容量 M=f·t
如被測信號平均頻率f=10kHz,則1秒的約需存儲容量10KB,10秒約需存儲容量100KB。顯然,單片機(jī)內(nèi)RAM是不能滿足要求的。即使擴(kuò)充外存,也不宜太大,會有一定的限制。
但實(shí)際上,所測出的Ti中,有相當(dāng)多是相同的。如果把相同的Ti值用一個(gè)單元來存放,則可大大壓縮存儲容量。為此,可采用線性變換的方法,把每個(gè)Ti按(1)式轉(zhuǎn)換為單元地址值,并將其內(nèi)容加1,表示已有一個(gè)該Ti值。最后該單元的內(nèi)容Ni就表示測量中共有Ni個(gè)相同的Ti值出現(xiàn)。
存儲地址=起始地址+kTi (1)
式中:起始地址——對應(yīng)于Ti=0的存儲單元地址,根據(jù)所選單片機(jī)型號任意設(shè)定。
接地電阻相關(guān)文章:接地電阻測試方法
評論