[摘要]隨著電子技術(shù)的發(fā)展,對電信號的測量精度要求越來越高,大部分多功能頻率計(jì)均采用普通門電路或可編程邏輯器件PLD作為信號處理系統(tǒng)的控制核心,存在結(jié)構(gòu)復(fù)雜、穩(wěn)定性差、精度不高的弊端。采用單片機(jī)技術(shù)結(jié)合外圍電路設(shè)計(jì)的“多功能數(shù)字頻率計(jì)”可較好的解決這個(gè)問題。該系統(tǒng)以C8051F系列單片機(jī)為控制核心,利用硬件描述語言(Verilog HDL)在現(xiàn)場可編程邏輯門陣列(FPGA)上編程實(shí)現(xiàn)的數(shù)字式多功能計(jì)數(shù)器。設(shè)計(jì)中采用模塊化設(shè)計(jì)方法,適當(dāng)?shù)姆糯蠛驼?提高測量頻率的范圍。由單片機(jī)控制LCD液晶顯示數(shù)據(jù)。該計(jì)數(shù)器能夠接收函數(shù)信號發(fā)生器(Function signal generator)產(chǎn)生的任意信號,實(shí)現(xiàn)周期測量、頻率測量和時(shí)間間隔測量,具有較高的測量精度。
[關(guān)鍵詞]C8051FVerilogHDLFPGA放大整形LCD顯示
中圖分類號:TM-9文獻(xiàn)標(biāo)識近年來頻率測量儀器廣泛的應(yīng)用與學(xué)校,科研院所以及晶體活晶體振蕩器等需求量大和要求高精度的行業(yè),有些頻率計(jì)采用數(shù)字邏輯電路制作,用集成電路焊接實(shí)現(xiàn)。體積大,功耗大,焊點(diǎn)和線路較多將使產(chǎn)品穩(wěn)定度與精確度大大降低,成本高。這里介紹的計(jì)數(shù)器設(shè)計(jì)精良,操作簡便,穩(wěn)定度精確度高,LCD液晶顯示數(shù)據(jù),且能夠隨時(shí)可以記憶10個(gè)測量的歷史數(shù)據(jù)進(jìn)行查看,具有能夠顯示被測信號的峰值;成本低。
一、系統(tǒng)模塊
系統(tǒng)可以分測量部分和單片機(jī)控制部分。測量部分包括:頻率測量模塊,周期測量模塊,時(shí)間間隔測量模塊。單片機(jī)控制部分包括:鍵盤控制模塊,顯示模塊。系統(tǒng)基本框圖如圖1.1所示:
(1)頻率(周期)測量:選用等精度測頻法;(2)時(shí)間間隔測量:用FPGA編程捕捉時(shí)沿測量;(3)顯示電路:用LCD液晶顯示。
圖1.1系統(tǒng)基本框圖
二、系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)
(一)系統(tǒng)硬件主要單元電路設(shè)計(jì)
1.輸入信號整形電路
圖2.1輸入信號整形電路結(jié)構(gòu)圖
2.鍵盤電路
采用4*4鍵盤行列式掃描,其原理圖如圖2.2。
三、系統(tǒng)的軟件設(shè)計(jì)
FPGA的內(nèi)部邏輯用Verilog語言編程。C8051單片機(jī)程序用C語言編寫,在keil UVsion2環(huán)境下編譯,其主要功能是控制頻率計(jì)的操作,處理鍵盤輸入,控制液晶顯示等。
1.頻率測量程序流程圖如圖3.1所示。
圖2.24*4鍵盤原理圖
圖3.1頻率測量程序流程圖
四、系統(tǒng)實(shí)現(xiàn)的功能
設(shè)計(jì)制作的簡易多功能計(jì)數(shù)器能夠接收函數(shù)信號發(fā)生器產(chǎn)生的信號,實(shí)現(xiàn)周期測量、頻率測量和時(shí)間間隔測量的功能;可以用鍵盤選擇上述三種功能之一;周期、時(shí)間間隔測量:0.1mS~1S,誤差≤1%;頻率測量:1Hz~200kHz,誤差≤1%;能夠顯示至少6位數(shù)碼;自制計(jì)數(shù)器的電源。可以記憶10個(gè)測量的歷史數(shù)據(jù),且能夠隨時(shí)查看;能夠顯示被測信號的峰值。
參考文獻(xiàn):
[1]潘松、黃計(jì)業(yè),EDA技術(shù)實(shí)用教程,北京:科學(xué)出版社,2002.
[2]彭軍,實(shí)用電子技術(shù),科學(xué)出版社,2001,9:12-19.
[3]劉征宇,電子電路設(shè)計(jì)與制作,福建科學(xué)技術(shù)出版社.
[4]王懷群,數(shù)字電路技能實(shí)訓(xùn)教程,煤炭工業(yè)出版社.
[5]路勇,電子電路實(shí)驗(yàn)及仿真,北京交通大學(xué)出版社.
作者簡介:
楊東芳,女,山東東營人,實(shí)驗(yàn)師,主要從事電子技術(shù)和實(shí)驗(yàn)室建設(shè)與管理工作。碼:A文章編號:1671-7597(2009)1210047-01