O 引言
頻率測量是電子測量中最基本的測量之一。隨著電子科學(xué)技術(shù)的發(fā)展,對信號頻率測量的精度要求越來越高。目前采用的測頻方法有直接測頻法、直接測周法和等精度測頻法。直接測頻法在高頻段的精度較高,但在低頻段的精度較低;直接測周法則恰恰相反。而等精度測量法則可在整個(gè)頻率測量范圍內(nèi)保持恒定的測量精度,且測量精度也較高。
C8051F單片機(jī)是SoC芯片,其內(nèi)核是CIP-5l微控制器。CIP-51采用流水線指令結(jié)構(gòu),指令集與標(biāo)準(zhǔn)8051指令集完全兼容。且不再區(qū)分系統(tǒng)時(shí)鐘周期和機(jī)器周期,所有指令時(shí)序都以時(shí)鐘周期計(jì)算,大部分指令只需l~2個(gè)系統(tǒng)時(shí)鐘即可完成。因而其運(yùn)算速度明顯高于傳統(tǒng)805l單片機(jī)。為此,本文給出了基于C805lF單片機(jī)和一些外圍電路的等精度頻率計(jì)的設(shè)計(jì)方案。
1 等精度頻率測量的基本原理
等精度頻率測量又叫多周期同步測量,它是將待測信號和標(biāo)準(zhǔn)信號分別輸入到兩個(gè)計(jì)數(shù)器,它的實(shí)際閘門時(shí)間不是固定值,而是待測信號周期的整數(shù)倍,故可消除對待測信號計(jì)數(shù)時(shí)產(chǎn)生的量化誤差(+1誤差),其精度僅與閘門時(shí)間和標(biāo)準(zhǔn)頻率有關(guān)。等精度測頻系統(tǒng)主要由待測信號計(jì)數(shù)器、標(biāo)準(zhǔn)信號計(jì)數(shù)器、同步閘門控制器、預(yù)置時(shí)間控制器以及運(yùn)算單元等組成。測量的基本流程是在發(fā)出測量觸發(fā)信號后,由同步閘門控制器在預(yù)置時(shí)間控制器產(chǎn)生預(yù)選閘門控制信號,再由待測信號觸發(fā)同步,以形成真正的預(yù)置測量時(shí)間,然后同時(shí)控制兩個(gè)計(jì)數(shù)器,并分別對待測信號和標(biāo)準(zhǔn)信號進(jìn)行計(jì)數(shù)。等精度測量頻率的原理如圖1所示。其待測信號頻率可由下式計(jì)算:
式中:Nx為待測信號計(jì)數(shù)值,No為參考信號計(jì)數(shù)值,fx為待測信號頻率值,fo為參考信號頻率值。
2 頻率計(jì)硬件電路設(shè)計(jì)
本設(shè)計(jì)將待測信號、標(biāo)準(zhǔn)信號的計(jì)數(shù)及產(chǎn)生預(yù)置時(shí)間、計(jì)算頻率值等功能完全用C805lF041單片機(jī)來實(shí)現(xiàn),因而簡化了測量電路。整個(gè)頻率測量系統(tǒng)包括放大整形、LCD液晶顯示、鍵盤控制和串口RS232通信電路等。系統(tǒng)選用高精度的標(biāo)準(zhǔn)10MHz石英晶振作為標(biāo)準(zhǔn)信號源,以保證測頻精度。圖2所示是系統(tǒng)的總體硬件設(shè)計(jì)框圖。
2.1 C8051F041單片機(jī)
本系統(tǒng)中的C8051F041單片機(jī)是一款全集成的混合信號片上系統(tǒng)型MCU,具有32個(gè)數(shù)字I/O引腳和高精度可編程的24.5 MHz內(nèi)部振蕩器,以及64 KB在片F(xiàn)LASH存儲(chǔ)器,同時(shí)片內(nèi)還集成了一個(gè)CAN2.0B控制器、5個(gè)通用16位定時(shí)器、真正12位100 ksps的ADC、兩個(gè)12位DAC以及硬件
實(shí)現(xiàn)的SPI、SMBus/I2C和兩個(gè)UART串行接口。
2.2 硬件電路
系統(tǒng)硬件主要由放大整形電路、鍵盤電路、LCD顯示電路、RS232串口等部分組成。放大整形電路主要對待測信號(如正弦波、三角波、鋸
齒波、方波等)進(jìn)行幅值放大,施密特整形為TTL電平的矩形波,同時(shí)去除噪聲干擾。鍵盤電路采用獨(dú)立鍵盤,可控制測頻的啟停和數(shù)據(jù)是否
上傳等。液晶顯示電路采用16×2字符的LCDl602液晶顯示,可配置成8位接口方式,以對測量頻率進(jìn)行同步顯示。測量數(shù)據(jù)可通過RS232串口上傳至上位機(jī),并在上位機(jī)軟件中保存。這種方式特別適用于長時(shí)間多次測量頻率值的場合。
3 軟件設(shè)計(jì)及調(diào)試
本系統(tǒng)的軟件部分包括C805lF041單片機(jī)的主控程序和上位機(jī)軟件。
3.1 C805lF041主控程序
主控程序可用C語言編寫,采用定時(shí)器T2作為預(yù)置門控制器時(shí)間,定時(shí)器T1用于串口通信,計(jì)數(shù)器C3作為待測信號計(jì)數(shù)器,計(jì)數(shù)器C4作為基準(zhǔn)頻率計(jì)數(shù)器。在主控程序中,可將標(biāo)準(zhǔn)信號計(jì)數(shù)值N0定義為unsigned long int型變量,其計(jì)數(shù)范圍為0~(232一1),即0~4.29496729-5x109。圖3所示是其主程序流程圖。
3.2 上位機(jī)VB軟件
為了提高測量頻率值的可分析性,本系統(tǒng)利用VB6.0提供的用于RS232串行通信的MSCOMM.OCX控件來編寫上位機(jī)串口數(shù)據(jù)的采集和測頻值的保存軟件。軟件可實(shí)時(shí)讀取單片機(jī)測得的頻率值,并在PC機(jī)顯示。同時(shí)該軟件還可將測量數(shù)據(jù)與系統(tǒng)時(shí)間共同保存,以便于多次測量時(shí)對數(shù)據(jù)的記錄和分析計(jì)算。
4 結(jié)束語
本頻率計(jì)在0~10 MHz的頻率范圍內(nèi)具有相同的測量精度??紤]到測頻的精度和穩(wěn)定性,標(biāo)準(zhǔn)信號源應(yīng)選用精度為10-8的lO MHz標(biāo)準(zhǔn)石英晶振,以提高測頻精度,同時(shí)也可縮短測頻時(shí)間。此外,利用C805lF單片機(jī)的性能優(yōu)勢,將等精度測頻系統(tǒng)的主要部分用C805lF041實(shí)現(xiàn),也簡化了電路結(jié)構(gòu),縮短了測頻時(shí)間,提高了系統(tǒng)設(shè)計(jì)的可靠性,具有較高的實(shí)用價(jià)值。