版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)設(shè)計(jì)(論文)</b></p><p> 題 目: 基于單片機(jī)的智能 </p><p><b> 電子計(jì)數(shù)器的設(shè)計(jì) </b></p><p> 學(xué) 院:電信學(xué)院 </p><p> 專 業(yè):電子科學(xué)與技術(shù) </p>&
2、lt;p> 學(xué)生姓名: </p><p> 指導(dǎo)教師: </p><p><b> 摘 要</b></p><p> 數(shù)字頻率計(jì)是電子測(cè)量領(lǐng)域中最常見的測(cè)量?jī)x器之一。它可以測(cè)量方波和正弦波的頻率、周期和脈沖寬度等時(shí)間參數(shù)。</p><p> 本
3、設(shè)計(jì)是由單片機(jī)控制的數(shù)字頻率計(jì)設(shè)計(jì)。本文在討論頻率測(cè)量的常用方法與原理的基礎(chǔ)上,闡述了等精度測(cè)頻系統(tǒng)的設(shè)計(jì)。系統(tǒng)包括穩(wěn)壓電源電路、信號(hào)放大整形電路、測(cè)頻電路、單片機(jī)電路模塊、標(biāo)準(zhǔn)頻率信號(hào)源、鍵盤模塊、數(shù)碼顯示模塊等。采用軟硬件結(jié)合的方法,頻率、周期、脈寬和占空比的計(jì)算由單片機(jī)89C51完成,外圍電路其數(shù)字電路部分使用了CPLD,并采用VHDL語言進(jìn)行設(shè)計(jì)描述,其輸入通道由模擬電路來實(shí)現(xiàn)。</p><p> 系統(tǒng)
4、將單片機(jī)89C51的控制靈活性及CPLD芯片的現(xiàn)場(chǎng)可編程性相結(jié)合,不但大大縮短了開發(fā)研制周期,而且使本系統(tǒng)具有結(jié)構(gòu)緊湊、體積小、可靠性高、測(cè)頻范圍寬、精度高等優(yōu)點(diǎn)。</p><p> 關(guān)鍵詞: 頻率計(jì) 單片機(jī) CPLD 等精度</p><p><b> Abstract</b></p><p> Digital cymometer
5、is one of the most common instruments of electronic measurement. It can measure time parameters such as the square wave and the sine wave frequency, cycle and pulse width, and so on.</p><p> The design is t
6、he digital cymometer based on the signal chip computer control. Based on the discussion of the commonly used method of measuring frequency and on the basis of principle, it describes the design of frequency measurement s
7、ystem with the same accuracy including the power supply system circuit, signal amplification plastic circuit, measuring frequency circuits, MCU circuit module, the standard frequency signal source, keyboard module, the d
8、igital display module, and so on. It takes th</p><p> Key Words: cymometer; signal chip computer; CPLD; equal precision</p><p><b> 目錄</b></p><p><b> 第一章 引言1&l
9、t;/b></p><p> 1.1 課題研究的現(xiàn)狀與發(fā)展趨勢(shì)1</p><p> 1.2 課題研究的意義與作用1</p><p> 1.3 數(shù)字頻率計(jì)的基本原理1</p><p> 1.4 系統(tǒng)設(shè)計(jì)技術(shù)指標(biāo)2</p><p> 1.4.1 基本指標(biāo)2</p><p>
10、 1.4.2 發(fā)揮部分2</p><p> 第二章 系統(tǒng)硬件設(shè)計(jì)3</p><p> 2.1 頻率測(cè)量的方法的研究3</p><p> 2.1.1 數(shù)字化直接測(cè)量頻率的原理3</p><p> 2.1.2 數(shù)字化直接測(cè)量周期的原理4</p><p> 2.1.3 組合法測(cè)量頻率的原理5</
11、p><p> 2.1.4 多周期同步等精度測(cè)量的原理6</p><p> 2.2 系統(tǒng)硬件設(shè)計(jì)8</p><p> 2.2.1 穩(wěn)壓電源電路9</p><p> 2.2.2 信號(hào)放大整形電路10</p><p> 2.2.3 單片機(jī)控制電路11</p><p> 2.2.4 標(biāo)
12、準(zhǔn)頻率信號(hào)源13</p><p> 2.2.5 數(shù)碼管顯示模塊13</p><p> 第三章 系統(tǒng)軟件設(shè)計(jì)15</p><p> 3.1 CPLD測(cè)頻專用模塊的設(shè)計(jì)15</p><p> 3.1.1 頻率計(jì)CPLD部分的VHDL程序16</p><p> 3.1.2 頻率計(jì)CPLD部分的仿真22&
13、lt;/p><p> 3.2 單片機(jī)控制與運(yùn)算程序的設(shè)計(jì)24</p><p> 3.2.1 單片機(jī)主程序的設(shè)計(jì)24</p><p> 3.2.2 頻率、周期計(jì)數(shù)子程序的設(shè)計(jì)25</p><p> 3.2.3 脈寬、占空比子程序的設(shè)計(jì)18</p><p> 3.2.4 鍵盤掃描及數(shù)碼管顯示子程序的設(shè)計(jì)30
14、</p><p> 第四章 仿真方法及調(diào)試32</p><p> 4.1 系統(tǒng)調(diào)試的環(huán)境32</p><p> 4.2 軟硬件的調(diào)試32</p><p> 4.3 系統(tǒng)的硬件驗(yàn)證32</p><p><b> 4.4 小結(jié)32</b></p><p>
15、 4.5 系統(tǒng)擴(kuò)展思路32</p><p><b> 參考文獻(xiàn)33</b></p><p><b> 致謝33</b></p><p><b> 第一章 引言</b></p><p> 1.1 課題研究的現(xiàn)狀與發(fā)展趨勢(shì)</p><p>
16、 隨著大規(guī)模集成電路技術(shù)的發(fā)展及電子產(chǎn)品市場(chǎng)運(yùn)作節(jié)奏的進(jìn)一步加快,涉及諸如計(jì)算機(jī)應(yīng)用、通信、智能儀表、醫(yī)用設(shè)備、軍事、民用電器等領(lǐng)域的現(xiàn)代電子設(shè)計(jì)技術(shù)已邁入一個(gè)全新的階段。</p><p> 頻率是反映信號(hào)特性的基本參量之一,頻率測(cè)量在應(yīng)用電子技術(shù)領(lǐng)域有著重要的地位。</p><p> 在電子測(cè)量中,頻率的測(cè)量精確度是非常高的。利用計(jì)數(shù)法測(cè)量頻率具有精度高、使用方便、容易實(shí)現(xiàn)測(cè)量過程自
17、動(dòng)化等一系列突出優(yōu)點(diǎn),已成為目前頻率測(cè)量的重要方法。人們將許多參數(shù)的測(cè)量轉(zhuǎn)換為頻率量來測(cè)量和處理。</p><p> 傳統(tǒng)的頻率計(jì)通常采用組合電路和時(shí)序電路等大量的硬件電路構(gòu)成,在使用過程中存在電路結(jié)構(gòu)復(fù)雜,測(cè)量精度低、故障率高、維護(hù)不易等問題,其產(chǎn)品不但體積較大,運(yùn)行速度慢,而且測(cè)量低頻信號(hào)時(shí)不宜直接使用。頻率測(cè)量在科技研究和實(shí)際應(yīng)用中的作用日益重要。測(cè)量的數(shù)字化、智能化是當(dāng)前測(cè)量技術(shù)發(fā)展的趨勢(shì)。</p
18、><p> 1.2 課題研究的意義與作用</p><p> 數(shù)字頻率計(jì)數(shù)器又稱通用計(jì)數(shù)器,是電子測(cè)量領(lǐng)域中最常見的測(cè)量?jī)x器之一。它可以測(cè)量正弦波的頻率(周期),脈沖波的頻率(周期),脈沖寬度等時(shí)間參數(shù)。</p><p> 隨著單片機(jī)技術(shù)的不斷發(fā)展,用單片機(jī)通過軟件設(shè)計(jì),采用適當(dāng)?shù)乃惴ㄈ〈@部分電路不僅能彌補(bǔ)上述不足,而且性能也將大有提高。針對(duì)普通頻率計(jì)存在讀數(shù)難、
19、測(cè)量精度不高等問題, 目前采用單片機(jī)控制的數(shù)字頻率計(jì), 用于測(cè)量方波、正弦波或其它脈沖信號(hào)的頻率, 并用數(shù)字顯示, 具有精度高、測(cè)量迅速、讀數(shù)方便等優(yōu)點(diǎn), 已經(jīng)在電子測(cè)量領(lǐng)域里得到了廣泛應(yīng)用。</p><p> MCS—51系列單片機(jī)具有體積小,功能強(qiáng),性能價(jià)格比較高等特點(diǎn),因此被廣泛應(yīng)用于工業(yè)控制和智能化儀器,儀表等領(lǐng)域。本次設(shè)計(jì)的數(shù)字頻率計(jì)以89C51單片機(jī)為核心,具有性能優(yōu)良,精度高,可靠性好等特點(diǎn)。&l
20、t;/p><p> 1.3 數(shù)字頻率計(jì)的基本原理</p><p> 頻率計(jì)的基本原理是用一個(gè)頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時(shí)鐘,對(duì)比測(cè)量其他信號(hào)的頻率。通常情況下計(jì)算每秒內(nèi)待測(cè)信號(hào)的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為1秒。閘門時(shí)間也可以大于或小于一秒。閘門時(shí)間越長(zhǎng),得到的頻率值就越準(zhǔn)確,但閘門時(shí)間越長(zhǎng),則每測(cè)一次頻率的間隔就越長(zhǎng)。閘門時(shí)間越短,測(cè)的頻率值刷新就越快,但測(cè)得的頻率精度就受影響。&l
21、t;/p><p> 數(shù)字頻率計(jì)是用數(shù)字顯示被測(cè)信號(hào)頻率的儀器,被測(cè)信號(hào)可以是正弦波,方波或其它周期性變化的信號(hào)。如配以適當(dāng)?shù)膫鞲衅鳎梢詫?duì)多種物理量進(jìn)行測(cè)試,比如機(jī)械振動(dòng)的頻率,轉(zhuǎn)速,聲音的頻率以及產(chǎn)品的計(jì)件等等。</p><p> 1.4 系統(tǒng)設(shè)計(jì)技術(shù)指標(biāo)</p><p> 基于傳統(tǒng)測(cè)頻原理的頻率計(jì)的測(cè)量精度將隨被測(cè)信號(hào)頻率的下降而降低,在實(shí)用中有較大的局限性,
22、而等精度頻率計(jì)不但具有較高的測(cè)量精度,而且在整個(gè)測(cè)頻區(qū)域內(nèi)保持恒定的測(cè)試精度。</p><p> 課題要求運(yùn)用單片機(jī)或者CPLD技術(shù),結(jié)合傳統(tǒng)直接測(cè)量頻率方法和等精度測(cè)量頻率的方法,實(shí)現(xiàn)高頻和低頻的測(cè)量,本系統(tǒng)設(shè)計(jì)的基本指標(biāo)如下。</p><p> 1.4.1 基本指標(biāo)</p><p> (1) 頻率:10Hz~30MHz</p><p&g
23、t; (2) 精度:《10-6</p><p> (3) 閘門時(shí)間為0.1秒、1秒</p><p> (4)實(shí)現(xiàn)對(duì)頻率、周期和時(shí)間間隔的測(cè)量功能</p><p> 1.4.2 發(fā)揮部分</p><p> (1) 信號(hào):方波、正弦波</p><p> (2) 幅度:0.02V~0.5V</p>
24、<p> (3) 周期脈沖寬度幅度(0.5V~5V、頻率1Hz~1KHz)的占空比,占空比變化范圍為10%~90%,測(cè)試誤差≤1%。</p><p> 第二章 系統(tǒng)硬件設(shè)計(jì)</p><p> 2.1 頻率測(cè)量的方法的研究</p><p> 頻率的測(cè)量實(shí)際上就是在1s時(shí)間內(nèi)對(duì)信號(hào)進(jìn)行計(jì)數(shù),計(jì)數(shù)值就是信號(hào)頻率。實(shí)現(xiàn)對(duì)頻率量測(cè)量的方法有許多種。測(cè)量方法大
25、致可分為如下幾類:</p><p> 表2-1 頻率測(cè)量方法</p><p> 直讀法又稱無源網(wǎng)絡(luò)頻率特性測(cè)量法;</p><p> 比較法是將被測(cè)頻率信號(hào)與已知頻率信號(hào)相比較 ,通過觀、聽比較結(jié)果 ,獲得被測(cè)信號(hào)的頻率;</p><p> 電容充放電式計(jì)數(shù)法是利用電子電路控制電容器充放電的次數(shù) ,再用電磁式儀表測(cè)量充放電電流的大小
26、,從而測(cè)出被測(cè)信號(hào)的頻率值;</p><p> 電子計(jì)數(shù)法是根據(jù)頻率定義進(jìn)行測(cè)量的一種方法 ,它是用電子計(jì)數(shù)器顯示單位時(shí)間內(nèi)通過被測(cè)信號(hào)的周期個(gè)數(shù)來實(shí)現(xiàn)頻率的測(cè)量。</p><p> 利用電子計(jì)數(shù)式測(cè)量頻率具有精度高、測(cè)量范圍寬、顯示醒目直觀、測(cè)量迅速 ,以及便于實(shí)現(xiàn)測(cè)量過程自動(dòng)化等一系列優(yōu)點(diǎn) ,所以下面將重點(diǎn)介紹電子計(jì)數(shù)式測(cè)量頻率的幾種方法。</p><p>
27、 2.1.1 數(shù)字化直接測(cè)量頻率的原理</p><p> 無論頻率、周期還是時(shí)間間隔的數(shù)字化測(cè)量,均是基于主門加計(jì)數(shù)器的結(jié)構(gòu)而實(shí)現(xiàn)的,圖2.1(a)示出了這種計(jì)數(shù)式直接測(cè)頻的原理框圖。其中主門具有“與門”的邏輯功能。主門的一個(gè)輸入端送入的是頻率為的窄脈沖,它是由被測(cè)信號(hào)經(jīng)A通道放大整形后得到的。主門的另一個(gè)輸入端送來的是來自門控雙穩(wěn)的閘門時(shí)間信號(hào)Ts。因?yàn)殚T控雙穩(wěn)是受時(shí)基(標(biāo)準(zhǔn)頻率)信號(hào)控制的,所以Ts即準(zhǔn)確
28、又穩(wěn)定。設(shè)計(jì)時(shí)通過晶體震蕩器和分頻器的配合,可以獲得10S、1S、0.1S等閘門時(shí)間。由</p><p> 于主門的“與”功能,它的輸出端只有在閘門信號(hào)Ts有效時(shí)間才有頻率的窄脈沖輸出,并送到計(jì)數(shù)器去計(jì)數(shù)。設(shè)計(jì)數(shù)器的值為N,由頻率定義式可以計(jì)算得到被測(cè)信號(hào)頻率為=N/Ts (2-1)</p><p> 各種中規(guī)模計(jì)數(shù)器集成電路就非常適合于這種場(chǎng)合的應(yīng)用,如CD4518、CD4017等
29、。其原理框圖和時(shí)序圖如圖2.1所示。</p><p> 直接測(cè)頻法原理框圖
30、
31、 </p><p> (b) 直接測(cè)頻法時(shí)序圖</p><p> 圖2.1 (a)直接測(cè)頻法原理框圖; (b)直接測(cè)頻法時(shí)序圖</p><p> 由式(2-1
32、)可知,當(dāng)閘門時(shí)間T為1S時(shí),N值即為被測(cè)量信號(hào)的頻率。該測(cè)量方法由于主門的開啟時(shí)間與被測(cè)信號(hào)之間不同步,而使計(jì)數(shù)值N帶有±1量化誤差;且當(dāng)被測(cè)信號(hào)頻率越低時(shí),該量化誤差的影響越大。若再考慮由晶體振蕩器引起的閘門時(shí)間誤差,對(duì)式(2-1)進(jìn)行誤差的累積與合成運(yùn)算后,可以得到直接測(cè)量測(cè)頻率誤差的計(jì)算公式如下:</p><p><b> ?。?-2)</b></p><
33、;p> 上式右邊第一項(xiàng)為量化誤差的相對(duì)值,其中=±1;第二項(xiàng)為閘門時(shí)間的相對(duì)誤差,數(shù)值上等于晶體振蕩器基準(zhǔn)頻率的相對(duì)不確定度。在一定時(shí),閘門時(shí)</p><p> 間T越長(zhǎng),測(cè)量準(zhǔn)確度越高。而當(dāng)T選定后,越高,由于±1誤差對(duì)測(cè)量結(jié)果的影響減小,測(cè)量準(zhǔn)確度越高。但是隨著±1誤差的影響的減小,閘門時(shí)間(也即基準(zhǔn)頻率)自身的準(zhǔn)確度對(duì)測(cè)量結(jié)果的影響不可忽略,這時(shí)可以認(rèn)為是計(jì)數(shù)式直接測(cè)
34、頻率準(zhǔn)確度的極限。</p><p> 2.1.2 數(shù)字化直接測(cè)量周期的原理</p><p> 雖然直接測(cè)頻法可以測(cè)出單位時(shí)間內(nèi)脈沖的個(gè)數(shù)即頻率,但是對(duì)于較低頻率的信號(hào)其檢測(cè)誤差會(huì)大大增大,解決辦法就是改直接測(cè)頻法為直接測(cè)周期法。圖2.2(a)為計(jì)數(shù)式直接測(cè)周期的原理框圖。與測(cè)頻原理框圖相比,其中門控雙穩(wěn)改由輸入信號(hào)放大、整形和分頻后的脈沖控制,所以閘門時(shí)間的寬度就等于k倍被測(cè)信號(hào)的周期
35、k;而主門的另一個(gè)輸入端,送入由晶體震蕩器和分頻器產(chǎn)生的周期為T0的時(shí)標(biāo)脈沖信號(hào)。由于主門的“與”功能,它的輸出端只有在閘門信號(hào)k期間有時(shí)標(biāo)脈沖輸出,并送到計(jì)數(shù)器去計(jì)數(shù),計(jì)數(shù)器的值為N。不難看出,被測(cè)信號(hào)的周期為: (2-3) 其原理框圖和時(shí)序圖如圖2.2所示:</p><p><b> 測(cè)周期法原理框圖</b></p><p> ?。╞)測(cè)周期法時(shí)序圖&l
36、t;/p><p> 圖2.2 (a)測(cè)周期法原理框圖; (b)測(cè)周期法時(shí)序圖</p><p> 與計(jì)數(shù)式測(cè)頻率相似,由于和T0之間也不是同步的,所以計(jì)數(shù)值N也帶有±1量化誤差;此外由于晶振的不確定度,時(shí)標(biāo)的周期T0也存在誤差;最后,由于被測(cè)輸入信號(hào)噪聲的影響,使經(jīng)B通道放大整形后的脈沖周期中還引入了一種觸發(fā)誤差。對(duì)式(2-3)進(jìn)行誤差的積累和合成運(yùn)算,可以得到測(cè)周期誤差的計(jì)算公式
37、如下:</p><p> (2-4) </p><p> 上式右邊第一項(xiàng)為量化誤差的相對(duì)值,其中計(jì)數(shù)誤差Δ=±1;第二項(xiàng)為時(shí)標(biāo)的相對(duì)誤差;第三項(xiàng)為觸發(fā)誤差θ,其中R為被測(cè)信號(hào)與噪聲比,可由公式R=20㏒計(jì)算(單位為dB)。要降低觸發(fā)誤差就必須增大信噪比R,并采用多周期測(cè)量,還可以在整形電路中采用具有滯回特性電路來減小噪聲的影響。 </p>
38、<p> 在倍率k和時(shí)標(biāo)T0固定時(shí),與測(cè)頻率相反,測(cè)量周期的誤差隨被測(cè)信號(hào)的頻率升高而增大,此外由于有限的信噪比,使觸發(fā)誤差成為影響測(cè)量周期準(zhǔn)確度的主要因素。采用多周期測(cè)量可以有效的降低觸發(fā)誤差的影響。 </p><p> 2.1.3 組合法測(cè)量頻率的原理</p><p> 組合測(cè)頻法是指在低頻時(shí)采用直接測(cè)量周期法測(cè)信號(hào)周期,然后換算成頻率。經(jīng)以上分析可知,直接測(cè)周期法在
39、低頻段精度高,直接測(cè)頻法在高頻段有著很高的精度。由此可見,為了獲得較高的測(cè)量精度,在高頻段,宜采用直接測(cè)頻法;在低頻段,宜采用直接測(cè)周期法。根據(jù)式(2-3)、(2-4)可以導(dǎo)出計(jì)算中界頻率的公式如下:</p><p> (2-5) 為了獲得較高的測(cè)量準(zhǔn)確度,當(dāng)≥時(shí),直接測(cè)頻,間接測(cè)周期;當(dāng)≤時(shí),直接測(cè)周期,間接測(cè)頻。</p><p> 2.1.4 多周期同步等精度測(cè)量的原理</p
40、><p> 無論是直接測(cè)頻法還是測(cè)周期法,都無法保證閘門信號(hào)和另一信號(hào)的首尾實(shí)現(xiàn)同步,這就難以保證獲得較高的測(cè)量精度,其誤差在一個(gè)脈沖之內(nèi)。由此,當(dāng)引入多周期同步等精度測(cè)量法時(shí),可以較好的解決這個(gè)問題。</p><p> 多周期同步等精度測(cè)量法的原理是:電路需引入一個(gè)比被測(cè)信號(hào)頻率高若干倍的內(nèi)部時(shí)基信號(hào),測(cè)量結(jié)果的誤差范圍便在這一個(gè)時(shí)基信號(hào)范圍內(nèi)。首先由相應(yīng)的控制電路給出閘門開啟信號(hào),此時(shí)
41、計(jì)數(shù)器并不開始計(jì)數(shù),而是等到被測(cè)信號(hào)的上升沿到來時(shí)才真正開始</p><p> 計(jì)數(shù)。然后,兩組計(jì)數(shù)器分別對(duì)被測(cè)信號(hào)和時(shí)基信號(hào)脈沖計(jì)數(shù),當(dāng)控制電路給出閘門關(guān)閉信號(hào),此時(shí)計(jì)數(shù)器并不停止計(jì)數(shù),而是等到被測(cè)信號(hào)的上升沿到來時(shí)才真正停止計(jì)數(shù)。圖2.3中為輸入信號(hào)頻率,為時(shí)鐘脈沖的頻率。A、B兩個(gè)計(jì)數(shù)器在同一閘門時(shí)間T內(nèi)分別對(duì)和進(jìn)行計(jì)數(shù),計(jì)數(shù)器A的計(jì)數(shù)值,計(jì)數(shù)器B的計(jì)數(shù)值為。由于,則被測(cè)頻率和周期分別為:</p&g
42、t;<p> (2-6) (2-7)</p><p> 式(2-6)中=1/,為時(shí)鐘的周期。圖2.3中同步電路(D觸發(fā)器)的作用在于使計(jì)數(shù)閘門信號(hào)與被測(cè)信號(hào)同步,實(shí)現(xiàn)同步開門,并且開門時(shí)間T準(zhǔn)確地等于被測(cè)信號(hào)周期的整數(shù)倍,故式(2-6)、(2-7)中的計(jì)數(shù)沒有±1量化誤差。計(jì)數(shù)器雖然有量化誤差,但由于很高,遠(yuǎn)大于1,所以的±1量化誤差的相對(duì)值(±
43、1/)很小,且該誤差與被測(cè)頻率無關(guān),因此在整個(gè)測(cè)頻范圍內(nèi),多周期同步等精度測(cè)量法能夠?qū)崿F(xiàn)等精度的測(cè)量。該測(cè)試方法需要的除法功能運(yùn)算,對(duì)于使用微處理器的儀器來說,是不難實(shí)現(xiàn)的。</p><p> 考慮計(jì)數(shù)值的±1量化誤差、時(shí)鐘的不確定度和同步門的觸發(fā)誤差時(shí),根據(jù)式(2-6)和式(2-7)可以推導(dǎo)出倒數(shù)計(jì)數(shù)器的測(cè)頻、測(cè)周期誤差的計(jì)算公式:</p><p><b> (2
44、-8)</b></p><p> 上式中R=20㏒,為被測(cè)信號(hào)與噪聲比,k為多周期倍率。與式(2-2)、(2-4)相比較,式(2-8)中沒有對(duì)被測(cè)信號(hào)計(jì)數(shù)引起的±1量化誤差,只有計(jì)數(shù)器在同步門T周期的±1計(jì)數(shù)誤差/,而且與被測(cè)量信號(hào)的頻率無關(guān),即在整個(gè)測(cè)量頻段上是等精度的。假定,輸入通道放大器的制作工藝較高,它所產(chǎn)生的噪聲可以忽略,這時(shí)觸發(fā)誤差僅由被測(cè)量信號(hào)本身的質(zhì)量所決定,即由
45、外因決定。在評(píng)價(jià)測(cè)量方法時(shí)只應(yīng)考慮內(nèi)因,而不考慮外因,也即不考慮上式中的第三項(xiàng)。以典型數(shù)據(jù)為例,頻率的不確定度通常為~,假定時(shí)鐘頻率為10MHZ,則等于0.1,若閘門時(shí)間選為1S,則的±1計(jì)數(shù)誤差/僅為,由此可見,這時(shí)多周期同步等精度測(cè)量法的測(cè)頻、測(cè)周期的精度在整個(gè)測(cè)量頻段上均可達(dá)到量級(jí)。</p><p> 其原理框圖和時(shí)序圖如圖2.3所示。</p><p> ?。╝)多周期同
46、步等精度測(cè)量法原理框圖</p><p> ?。╞)多周期同步等精度測(cè)量法時(shí)序圖</p><p> 圖2.3 (a)多周期同步等精度測(cè)量法原理框圖; (b) 多周期同步等精度測(cè)量法時(shí)序圖</p><p> 2.2 系統(tǒng)硬件設(shè)計(jì)</p><p> 根據(jù)頻率計(jì)的設(shè)計(jì)要求,我們可將整個(gè)電路系統(tǒng)劃分為幾個(gè)基本模塊,組成模塊框圖如圖2.5所示。&
47、lt;/p><p> 圖2.5 頻率計(jì)組成模塊框圖</p><p> 其主要由以下幾個(gè)部分構(gòu)成:</p><p> (1) 信號(hào)整形電路。用于對(duì)待測(cè)信號(hào)進(jìn)行放大和整形,以便作為CPLD的輸入信號(hào)。</p><p> (2) 測(cè)頻電路。是測(cè)頻的核心電路模塊,由CPLD器件擔(dān)任。</p><p> (3) 單片機(jī)電路
48、模塊。用于控制CPLD的測(cè)頻操作和讀取測(cè)頻數(shù)據(jù),并作出相應(yīng)數(shù)據(jù)處理。</p><p> (4) 50MHz的標(biāo)準(zhǔn)頻率信號(hào)源。本模塊采用高頻率穩(wěn)定度和高精度的晶振作為標(biāo)準(zhǔn)頻率發(fā)生器,產(chǎn)生50MHz的標(biāo)準(zhǔn)頻率信號(hào)直接進(jìn)入CPLD。</p><p> (5) 鍵盤模塊??梢杂?個(gè)鍵執(zhí)行測(cè)試控制,一個(gè)是復(fù)位鍵,其余是命令鍵。</p><p> (6) 數(shù)碼顯示模塊???/p>
49、以用7個(gè)數(shù)碼管顯示測(cè)試結(jié)果,最高可表示百萬分之一的精度。</p><p> 2.2.1 穩(wěn)壓電源電路</p><p> 本項(xiàng)設(shè)計(jì)要求的電源均為±5V的直流穩(wěn)壓電源。7905空載時(shí)測(cè)量輸出在6V左右.加上負(fù)載,輸出正常。7805驅(qū)動(dòng)電流可達(dá)1A,運(yùn)行時(shí)電流200~300mA,7805溫度有50度左右。</p><p> 頻率計(jì)穩(wěn)壓電源電路圖如圖2.6所
50、示。</p><p> 圖2.6 頻率計(jì)穩(wěn)壓電源電路</p><p> 2 2.2 信號(hào)放大整形電路</p><p> 信號(hào)放大整形電路包括放大級(jí)和整形級(jí)兩部分。</p><p> 放大級(jí)的設(shè)計(jì)主要考慮增益和帶寬的指標(biāo)。因?yàn)楹竺娴恼渭?jí)采用了電壓比較器,所以放大級(jí)的增益應(yīng)根據(jù)頻率計(jì)指標(biāo)提出的最小輸入信號(hào)幅度(0.02V)和電壓比較器所
51、要求的輸入電壓的最小壓擺率來決定。由Maxim公司的集成電路手冊(cè)上查得Max902電壓比較器在過零比較時(shí)所要求的輸入電壓的最小壓擺率為0.5V/s,如果壓擺率的值低于此值,輸出就會(huì)引起震蕩,這是應(yīng)當(dāng)避免的。因?yàn)樵诒就ǖ乐校妷罕容^器整形級(jí)是設(shè)計(jì)過零觸發(fā)方式的,因此必須對(duì)輸入信號(hào)過零處的壓擺率予以審查。眾所周知,當(dāng)輸入信號(hào)為峰值的正弦波時(shí),其過零處的壓擺率可有公式計(jì)算,其中的為被測(cè)信號(hào)的頻率,發(fā)揮指標(biāo)要求其最低值為0.1HZ。將和SR=0
52、.5V/s代入上式可以求出。這個(gè)結(jié)果表明,當(dāng)加到電壓比較器輸入端的信號(hào)頻率為0.1Hz,只要其幅度大于0.8V,它的過零壓擺率就能滿足大于0.5V/s的要求,顯然所有的頻率大于0.1Hz的信號(hào)其過零壓擺率無疑將大于0.5V/s。若再考慮頻率設(shè)計(jì)指標(biāo)提出的 最小輸入信號(hào)幅度的峰值,不難求出所要求的放大級(jí)的增益。整形級(jí)用TTL器件時(shí),起正常工作的最小輸入電壓為2V,由此可估算前置放大器的增益為2/0.02=</p><p
53、> 慮。圖2.6中用雙運(yùn)放MAX4016中的兩個(gè)運(yùn)放構(gòu)成相互級(jí)聯(lián)的兩級(jí)反相放大器。第一級(jí)反相放大器期的增益1、10 兩種值,由開關(guān)S2切換,第二級(jí)反相放大器的增益4,因此級(jí)聯(lián)后的增益4、40兩種值。當(dāng)被測(cè)信號(hào)較大時(shí)(0.5~5V),選用4倍的增益,當(dāng)被測(cè)信號(hào)為小信號(hào)時(shí)(0.02~0.5V),選用40倍的增益。集成運(yùn)放MAX4016在閉環(huán)增益為1時(shí)的帶寬為150MHz,當(dāng)A2增益為4、10時(shí)帶寬分別約為37.5MHz(150MHz
54、/4)和15MHz(150MHz/10)。綜合起來,從輸入級(jí)到第二放大級(jí)其帶寬大于10MHz的指標(biāo)要求完全可以達(dá)到的。</p><p> 因?yàn)槟M通道部分所用的器件都是帶寬高速器件,為了防止寄生振蕩,在每個(gè)器件的電源引腳附近到地之間均需要加上去耦電容,每組去耦電容由兩種電容并聯(lián)起來,以取得良好的寬頻帶寬去耦效果。其中容量小的(0.1μF)用陶瓷電容,對(duì)高頻分量有良好的去耦作用;容量大的(6.8μF)用鉭電解電容
55、,對(duì)低頻分量有良好的去耦作用。</p><p> 整形級(jí)選用輸出為TTL電平的高速集成雙壓比較器MAX902來構(gòu)成,它比TTL電路有觸發(fā)靈敏度高、因而可降低放大級(jí)增益的優(yōu)點(diǎn);上面已討論過,根據(jù)手冊(cè)提示,使用高速電壓比較器時(shí)必須保證輸入信號(hào)的壓擺率大于手冊(cè)上所給的最小容許值,以免在比較器輸出信號(hào)的前后沿部位產(chǎn)生振蕩。此外電源引腳附近也需要加接良好的去耦電容,布線短,數(shù)字電源和模擬電源的接地要分開,以免比較器輸出端
56、的數(shù)字信號(hào)干擾模擬電路部分的工作。</p><p> 為了防止輸入信號(hào)過大而損壞后面的元器件,在輸入端加上由一個(gè)470電阻和兩個(gè)二極管組成的限幅保護(hù)電路。限幅二極管應(yīng)選用結(jié)電容小,開關(guān)時(shí)間短,容許的正向電流大且正向壓降小的管子,2DK17A開關(guān)二極管是符合上述要求的一種。有時(shí)被測(cè)信號(hào)中含有較高的直流分量,為了保證通道放大器正常工作,輸入信號(hào)應(yīng)通過隔直流電容耦合到輸入級(jí)的輸入端,為此還要加上交、直流耦合切換開關(guān)S
57、1。</p><p> 圖2.7 信號(hào)放大整形電路</p><p> 2.2.3 單片機(jī)控制電路</p><p> 對(duì)單片機(jī)這部分的主要指標(biāo)考慮如下:①由+5V電源供電,I/O口與TTL電平兼容,并有足夠數(shù)目的I/O口;②要有豐富的四則算術(shù)運(yùn)算和邏輯運(yùn)算指令,指令執(zhí)行速度要快;③片內(nèi)除RAM外還要有EPROM;④至少有兩個(gè)16位的定時(shí)器/計(jì)數(shù)器;⑤有外部中斷輸
58、入引腳;⑥具有串行通信口;⑦價(jià)格要低廉。</p><p> 根據(jù)以上條件,查閱相關(guān)資料,發(fā)現(xiàn)8位單片機(jī)89C51的指標(biāo)已經(jīng)能夠滿足要求。</p><p> 而對(duì)于實(shí)驗(yàn)環(huán)境的限制,能選擇的CPLD有限,所以根據(jù)實(shí)驗(yàn)室的情況選用了XILINX公司的XC9572。</p><p> 由于等精度數(shù)字頻率計(jì)涉及到的計(jì)算包括加、減、乘、除,耗用的資源比較大。因此,我們選擇
59、單片機(jī)和CPLD的結(jié)合來實(shí)現(xiàn)。單片機(jī)控制電路如圖2.8所示,其中單片機(jī)完成整個(gè)測(cè)量電路的測(cè)試控制、數(shù)據(jù)處理和顯示輸出;CPLD完成各種測(cè)試功能;鍵盤信號(hào)由89C51單片機(jī)進(jìn)行處理,它從CPLD讀回計(jì)數(shù)器數(shù)據(jù)并進(jìn)行運(yùn)算,然后向顯示電路輸出測(cè)量結(jié)果。等精度數(shù)字頻率計(jì)電路系統(tǒng)原理框圖如圖2.8所示。</p><p> 系統(tǒng)的基本工作方式如下:</p><p> (1) P2口是單片機(jī)與CPL
60、D的數(shù)據(jù)傳送通信口,P0口為雙向控制口。P3口利用鍵盤顯示管理芯片ZLG7289作為數(shù)碼管顯示,實(shí)現(xiàn)數(shù)據(jù)顯示。系統(tǒng)的P1口設(shè)置5個(gè)功能鍵:占空比、脈寬、周期、頻率、自檢,進(jìn)行各測(cè)試功能的轉(zhuǎn)換。</p><p> (2) 7個(gè)LED數(shù)碼管組成測(cè)量數(shù)據(jù)顯示器,另一個(gè)獨(dú)立的數(shù)碼管用于狀態(tài)顯示。</p><p> (3) Fs為測(cè)頻標(biāo)準(zhǔn)頻率50MHz信號(hào)輸入端,由晶體振蕩源電路提供。</
61、p><p> (4) Fx為被測(cè)信號(hào)輸入,此待測(cè)信號(hào)是經(jīng)放大整形后輸入CPLD的。</p><p> 圖2.8 等精度數(shù)字頻率計(jì)電路系統(tǒng)原理框圖</p><p> 2.2.4 標(biāo)準(zhǔn)頻率信號(hào)源</p><p> 本設(shè)計(jì)采用50MHZ的晶體振蕩器產(chǎn)生標(biāo)準(zhǔn)頻率方波信號(hào)(頻標(biāo))供數(shù)字測(cè)量電路使用。由公式(2-8)及其討論可知,多周期同步等精度測(cè)
62、量法所達(dá)到的測(cè)量精度和系統(tǒng)時(shí)鐘源的精度量級(jí)相近。晶體振蕩器采用恒溫晶振,穩(wěn)定度可以達(dá)到為:2.0×107/24小時(shí)。這樣,完成所要求的測(cè)量誤差已經(jīng)綽綽有余。</p><p> 2.2.5 數(shù)碼管顯示模塊</p><p> 從實(shí)驗(yàn)條件等實(shí)際出發(fā)考慮,數(shù)碼管顯示模塊采用了ZLG7289。</p><p> ZLG7289是一片具有串行接口的,可同時(shí)驅(qū)動(dòng)8
63、位共陰式數(shù)碼管的顯示驅(qū)動(dòng)芯片,同時(shí)還可連接多達(dá)64鍵的鍵盤矩陣,單片即可完成LED顯示的全部功能。ZLG7289具有的特點(diǎn)和豐富的指令系統(tǒng),使得由其組成的LED顯示和鍵盤電路具有外圍電路簡(jiǎn)單,功能強(qiáng)大,使用方便,可靠性高,與MCU接口簡(jiǎn)單等特點(diǎn),是LED顯示和鍵盤電路的首選器件。</p><p> ZLG7289與單片機(jī)的連接如下圖2.9所示。 </p><p> 圖2.9 ZLG72
64、89與單片機(jī)的連接</p><p> 因?yàn)楸驹O(shè)計(jì)用高精度恒誤差的頻率和周期測(cè)試方法,預(yù)置門時(shí)間為1s,在標(biāo)準(zhǔn)頻率信號(hào)為50MHz的情況下,根據(jù)上文討論的高精度恒誤差的頻率和周期測(cè)試方法相對(duì)誤差計(jì)算公式可以算出測(cè)量精度為</p><p> 1/(1×50×106)=2×10-8</p><p> 即能夠顯示接近8位有效數(shù)字,所以,電
65、路中采用了8位LED顯示器.</p><p> 其中7個(gè)LED數(shù)碼管組成測(cè)量數(shù)據(jù)顯示器,另一個(gè)獨(dú)立的數(shù)碼管用于狀態(tài)顯示。</p><p> 當(dāng)測(cè)頻率時(shí),有顯示指示,為了保證頻率計(jì)有足夠的顯示時(shí)間,并且在打開門控信號(hào)之前,要先清零,以使測(cè)量數(shù)字計(jì)數(shù)器每次從零開始計(jì)數(shù)。</p><p> 第三章 系統(tǒng)軟件設(shè)計(jì)</p><p> 設(shè)計(jì)包括頻
66、率計(jì)的測(cè)頻模塊和利用對(duì)單片機(jī)的編程。單片機(jī)的編程又由三部分構(gòu)成:對(duì)CPLD的數(shù)據(jù)讀取及控制信號(hào)輸出,鍵盤電路的掃描以及數(shù)碼管顯示輸出。</p><p> 3.1 CPLD測(cè)頻專用模塊的設(shè)計(jì)</p><p> 利用VHDL設(shè)計(jì)的測(cè)頻模塊主邏輯結(jié)構(gòu)如圖3.1所示:</p><p> 圖3.1 等精度頻率計(jì)主邏輯結(jié)構(gòu)圖</p><p> 圖
67、3.1中,預(yù)置門控信號(hào)CL可由單片機(jī)發(fā)出,可以證明,在1秒至0.1秒間選擇的范圍內(nèi),CL的時(shí)間寬度對(duì)測(cè)頻精度幾乎沒有影響,在此設(shè)其寬度為Tpr。BZH和TF模塊是兩個(gè)可控的32位高速計(jì)數(shù)器,BENA和ENA分別是他們的允許信號(hào)端,高電平有效。標(biāo)準(zhǔn)頻率信號(hào)從BZH的時(shí)鐘輸入端BLCK輸入,設(shè)其頻率為Fs;經(jīng)整形后的被測(cè)信號(hào)從與BZH相似的32位計(jì)數(shù)器TF的時(shí)鐘輸入端TCLK輸入,設(shè)其真實(shí)頻率值為,被測(cè)量頻率為。測(cè)頻原理說明如下:</
68、p><p> 測(cè)頻開始前,首先發(fā)出一個(gè)清零信號(hào)CLR,使兩個(gè)計(jì)數(shù)器和D的觸發(fā)器置零,同時(shí)通過信號(hào)ENA,禁止兩個(gè)計(jì)數(shù)器計(jì)數(shù)。這是一個(gè)初始化的操作。然后由單片機(jī)發(fā)出允許測(cè)頻命令,即令預(yù)置門控信號(hào)CL為高電平,這時(shí)D觸發(fā)器要一直等到被測(cè)信號(hào)的上升沿通過時(shí)Q端才被置1(即令START為高電平),與此同時(shí),將同時(shí)啟動(dòng)計(jì)數(shù)器BZH和TF,進(jìn)入計(jì)數(shù)允許周期。在此期間,BZH和TF分別對(duì)被測(cè)信號(hào)(頻率為)和標(biāo)準(zhǔn)頻率信號(hào)(頻率為F
69、s)同時(shí)計(jì)數(shù)。當(dāng)Tpr秒后,預(yù)置門信號(hào)被單片機(jī)置為低電平,但此時(shí)兩個(gè)計(jì)數(shù)器并沒有停止計(jì)數(shù),一直等到被測(cè)信號(hào)的上升沿到來時(shí),才通過D觸發(fā)器將這兩個(gè)計(jì)數(shù)器同時(shí)關(guān)閉。 </p><p> 由圖3.2可見,CL的寬度和發(fā)生的時(shí)間都不會(huì)影響計(jì)數(shù)使能信號(hào)(START)允許計(jì)數(shù)的周期總是恰好等于待測(cè)信號(hào)TLCK的完整周期數(shù),這正是確保TLCK在任何頻率條件下都能保持恒定精度的關(guān)鍵。而且,CL寬度的改變以及隨機(jī)的出現(xiàn)時(shí)間造成的
70、誤差最多只有BCLK信號(hào)的一個(gè)時(shí)鐘周期,如果BCLK由精確穩(wěn)定的晶體振蕩器發(fā)出,則任何時(shí)刻的絕對(duì)測(cè)量誤差只有億分之一秒。這樣就達(dá)到了技術(shù)要求的標(biāo)準(zhǔn)。</p><p> 圖3.2 頻率計(jì)測(cè)控時(shí)序</p><p> 被測(cè)頻率值為,標(biāo)準(zhǔn)頻率值為Fs,設(shè)在一次預(yù)置門時(shí)間Tpr中對(duì)被測(cè)信號(hào)計(jì)數(shù)值為Nx,對(duì)標(biāo)準(zhǔn)頻率信號(hào)的計(jì)數(shù)值為Ns,則下式成立:</p><p><
71、b> (3-1)</b></p><p> 不難得到測(cè)得的頻率為: (3-2)</p><p> 最后通過控制SEL選擇信號(hào)和64位至8位的多路選擇器MUX,將計(jì)數(shù)器BHZ和TF中的兩個(gè)32位數(shù)據(jù)按照SEL[2..0]的編碼次序,分8次依次讀入單片機(jī),并按照各個(gè)模塊的計(jì)算公式進(jìn)行計(jì)算和顯示。</p><p>
72、 3.1.1 頻率計(jì)CPLD部分的VHDL程序</p><p> 根據(jù)圖3.1的主邏輯結(jié)構(gòu)圖和圖3.2的測(cè)控時(shí)序,以及測(cè)頻原理,可以寫出相應(yīng)的VHDL功能描述。相應(yīng)的RTL電路圖如圖3.3。</p><p> 頻率計(jì)CPLD部分的VHDL程序設(shè)計(jì)如下:</p><p> LIBRARY IEEE;
73、 --等精度頻率計(jì)CPLD設(shè)計(jì)部分</p><p> USE IEEE.STD_LOGIC_1164.ALL; </p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL; </p><p> ENTITY etester IS </p><p> PORT(BCLK:IN STD_LOGIC;
74、 --標(biāo)準(zhǔn)頻率時(shí)鐘信號(hào)clock2,50MHZ</p><p> TCLK:IN STD_LOGIC; --待測(cè)頻率時(shí)鐘信號(hào)</p><p> CLR:IN STD_LOGIC; --
75、清零和初始化信號(hào)</p><p> CL:IN STD_LOGIC; --當(dāng)SPUL為高電平時(shí),CL為預(yù)置門控信號(hào),用于測(cè)頻計(jì)數(shù)</p><p> --時(shí)間控制當(dāng)SPUL為低電平時(shí),CL為測(cè)脈寬控制信號(hào)</p><p> --CL高電平時(shí)測(cè)高電平脈寬而當(dāng)CL為低電平時(shí),測(cè)低電平脈寬</p><p> SPUL:IN
76、STD_LOGIC; --測(cè)頻或測(cè)脈寬控制</p><p> START:OUT STD_LOGIC; --起始計(jì)數(shù)標(biāo)志信號(hào)</p><p> EEND:OUT STD_LOGIC; --由低電
77、平變到高電平時(shí)指示脈寬計(jì)數(shù)結(jié)束</p><p> SEL:IN STD_LOGIC_VECTOR(2 DOWNTO 0); --數(shù)據(jù)讀出選同控制</p><p> DATA:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); --8位數(shù)據(jù)讀出</p><p
78、> END etester; </p><p> ARCHITECTURE behav OF etester IS </p><p> SIGNAL BZQ : STD_LOGIC_VECTOR(31 DOWNTO 0); --標(biāo)準(zhǔn)計(jì)數(shù)器</p><p> SIGNAL TSQ : STD_LOGIC_VEC
79、TOR(31 DOWNTO 0); --測(cè)頻計(jì)數(shù)器</p><p> SIGNAL ENA : STD_LOGIC; --計(jì)數(shù)使能</p><p> SIGNAL MA, CLK1, CLK2, CLK3: STD_LOGIC; </p>&
80、lt;p> SIGNAL Q1, Q2, Q3, BENA, PUL: STD_LOGIC;</p><p> SIGNAL SS: STD_LOGIC_VECTOR (1 DOWNTO 0); </p><p><b> BEGIN </b></p><p> START <= ENA; </p><p
81、> DATA <= BZQ(7 DOWNTO 0) WHEN SEL="000" ELSE --標(biāo)準(zhǔn)頻率計(jì)數(shù)低8位輸出</p><p> BZQ (15 DOWNTO 8) WHEN SEL="001" ELSE </p><p> BZQ (23 DOWNTO 16) WHEN SEL="010&qu
82、ot; ELSE </p><p> BZQ(31 DOWNTO 24) WHEN SEL="011" ELSE --標(biāo)準(zhǔn)頻率計(jì)數(shù)值最高8位輸出</p><p> TSQ(7 DOWNTO 0) WHEN SEL="100" ELSE --待測(cè)頻率計(jì)數(shù)值最低8位輸出</p><
83、;p> SQ (15 DOWNTO 8) WHEN SEL="101" ELSE </p><p> TSQ (23 DOWNTO 16) WHEN SEL="110" ELSE </p><p> TSQ(31 DOWNTO 24) WHEN SEL="111" ELSE --待測(cè)頻率計(jì)數(shù)值最
84、高8位輸出</p><p> TSQ (31 DOWNTO 24); </p><p> BZH : PROCESS(BCLK, CLR) --標(biāo)準(zhǔn)頻率測(cè)試計(jì)數(shù)器,標(biāo)準(zhǔn)計(jì)數(shù)器</p><p><b> BEGIN </b></p><p> IF CLR = '1
85、' THEN BZQ <= (OTHERS=>'0');</p><p> ELSIF BCLK'EVENT AND BCLK = '1' THEN</p><p> IF BENA = '1' THEN BZQ <= BZQ + 1; END IF;</p><p><b&
86、gt; END IF; </b></p><p> END PROCESS; </p><p> TF : PROCESS(TCLK, CLR, ENA) --待測(cè)頻率計(jì)數(shù)器,測(cè)頻計(jì)數(shù)器</p><p><b> BEGIN </b></p><p> IF
87、 CLR = '1' THEN TSQ <= (OTHERS=>‘0’); </p><p> ELSIF TCLK'EVENT AND TCLK = '1' THEN </p><p> IF ENA = '1' THEN TSQ <= TSQ + 1; END IF; </p><p>
88、;<b> END IF; </b></p><p> END PROCESS; </p><p> PROCESS (TCLK, CLR) </p><p><b> BEGIN </b></p><p> IF CLR = '1' THEN ENA <= ‘0’;
89、 </p><p> ELSIF TCLK'EVENT AND TCLK='1' THEN ENA <= CL; END IF; </p><p> END PROCESS; </p><p> MA<=(TCLK AND CL) OR NOT(TCLK OR CL) ;
90、 --測(cè)脈寬邏輯</p><p> CLK1<=NOT MA ; CLK2<=MA AND Q1 ; CLK3<=NOT CLK2; SS<=Q2 & Q3;</p><p> DD1: PROCESS (CLK1, CLR) </p><p><b> BEGIN</b></p><p
91、> IF CLR = '1' THEN Q1 <= ‘0’;</p><p> ELSIF CLK1'EVENT AND CLK1 = '1' THEN Q1 <= ‘1’; </p><p><b> END IF; </b></p><p> END PROCESS; <
92、;/p><p> DD2: PROCESS (CLK2, CLR) </p><p><b> BEGIN </b></p><p> IF CLR = '1' THEN Q2 <= ‘0’; </p><p> ELSIF CLK2'EVENT AND CLK2 = '1
93、39; THEN Q2 <= ‘1’; END IF; </p><p> END PROCESS; </p><p> DD3: PROCESS (CLK3, CLR) </p><p><b> BEGIN </b></p><p> IF CLR = '1' THEN Q3 <=
94、 ‘0’; </p><p> ELSIF CLK3'EVENT AND CLK3 = '1' THEN Q3 <= ‘1’; END IF; </p><p> END PROCESS; </p><p> PUL<='1' WHEN SS="10" ELSE</p>&l
95、t;p> --當(dāng)SS=“10”時(shí),PUL高電平,允許標(biāo)準(zhǔn)計(jì)數(shù)器計(jì)數(shù)</p><p> '0' ; --禁止計(jì)數(shù)</p><p> EEND<='1' WHEN SS="11" ELSE </p&
96、gt;<p> --EEND為低電平時(shí),表示正在計(jì)數(shù),由低電平變到高電平</p><p> '0'; --時(shí),表示計(jì)數(shù)結(jié)束,可以從標(biāo)準(zhǔn)計(jì)數(shù)器中讀數(shù)據(jù)了</p><p> BENA<=ENA WHEN SPUL='1' ELSE </p><p> --標(biāo)準(zhǔn)
97、計(jì)數(shù)器時(shí)鐘使能控制信號(hào),當(dāng)SPUL為1時(shí),測(cè)頻率</p><p> PUL WHEN SPUL='0' ELSE --當(dāng)SPUL為0時(shí),測(cè)脈寬和占空比</p><p><b> PUL; </b></p><p> END behav;</p><p>
98、; 利用VHDL設(shè)計(jì)的測(cè)頻模塊其中有關(guān)的接口信號(hào)規(guī)定如下:</p><p> 1、BCLK:標(biāo)準(zhǔn)頻率輸入信號(hào),50MHz。 </p><p> 2、TCLK:待測(cè)頻率輸入信號(hào),0.1Hz–10MHz。最高可以為50MHZ。 </p><p> 3、CLR:全局清0和初始化輸入,高電平有效,由單片機(jī)向CPLD發(fā)出。 </p><p>
99、 4、CL:預(yù)置門控制輸入,時(shí)間為1s,高電平有效,由單片機(jī)向CPLD發(fā)出。 </p><p> 5、SPUL:高電平測(cè)頻率,低電平測(cè)脈寬,由單片機(jī)向CPLD發(fā)出。 </p><p> 6、START:此信號(hào)由單片機(jī)讀取。在測(cè)頻時(shí),高電平時(shí)表示進(jìn)入計(jì)數(shù)周期,低電平時(shí)表示計(jì)數(shù)結(jié)束,單片計(jì)可以讀取CPLD中的計(jì)數(shù)。 </p><p> 7、EEND:在測(cè)脈寬期間(
100、SPUL=‘0’),由低電平變?yōu)楦唠娖?,表示脈寬計(jì)數(shù)結(jié)束,EEND信號(hào)由單片機(jī)讀取。 </p><p> 8、DATA:計(jì)數(shù)數(shù)據(jù)輸出,8位,由單片機(jī)根據(jù)SEL選擇信號(hào)分別讀取。 </p><p> 9、SEL:計(jì)數(shù)數(shù)據(jù)讀出控制,3位,由單片機(jī)輸出控制。 </p><p> 當(dāng)SEL分別等于:“000”、“001”、“010”、“011”;可由DATA分別讀出:
101、BZQ[7..0]、[15..8]、[23..16]、[31..24]共32位。 </p><p> 當(dāng)SEL分別等于:“100”、“101”、“110”、“111”;可由DATA分別讀出:TSQ[7..0]、[15..8]、[23..16]、[31..24]共32位。</p><p> 圖3.3 RTL電路圖</p><p> 3.1.2 頻率計(jì)CPLD部分
102、的仿真</p><p> 圖3.4和圖3.5分別是頻率測(cè)試仿真波形和脈寬測(cè)試仿真波形。</p><p> 從圖3.4可以看出,SPUL='1'時(shí),系統(tǒng)進(jìn)行等精度測(cè)頻。這時(shí),CLR一個(gè)正脈沖后,系統(tǒng)被初始化。然后CL被置為高電平,但這時(shí)兩個(gè)計(jì)數(shù)器并未開始計(jì)數(shù)(START='0'),直到此后被測(cè)信號(hào)TCLK出現(xiàn)一個(gè)上升沿,START=‘1’時(shí)2個(gè)計(jì)數(shù)器同時(shí)啟
103、動(dòng)分別對(duì)被測(cè)信號(hào)和標(biāo)準(zhǔn)信號(hào)開始計(jì)數(shù),其中BZQ和TSQ分別為標(biāo)準(zhǔn)頻率計(jì)數(shù)器和被測(cè)頻率計(jì)數(shù)器的計(jì)數(shù)值。由圖可見,在CL變?yōu)榈碗娖胶?,?jì)數(shù)仍未停止,直到TCLK出現(xiàn)一個(gè)上升沿為止,這時(shí)START='0',可作為單片機(jī)了解計(jì)數(shù)結(jié)束的標(biāo)志信號(hào)。</p><p> 仿真波形中TCLK和BCLK的周期分別設(shè)置為10μs和500ns。由圖可見,計(jì)數(shù)結(jié)果是,對(duì)TCLK的計(jì)數(shù)值是5,對(duì)BCLK的計(jì)數(shù)值是64(十六
104、進(jìn)制)。通過控制SEL就能按照8個(gè)8位將兩個(gè)計(jì)數(shù)器中的32位數(shù)讀入單片機(jī)中進(jìn)行計(jì)算。從圖中的波形可以看出,VHDL部分描述的測(cè)頻的功能完全正確。</p><p> 圖3.4 頻率/周期測(cè)量仿真圖</p><p> 圖3.5 脈寬/占空比測(cè)量仿真圖</p><p> 圖3.5中,取SPUL='0'時(shí),則系統(tǒng)進(jìn)行脈寬測(cè)試。為了便于觀察,圖中仿真波形
105、中的TCLK和BCLK的周期分別設(shè)置為75μs和500ns。由VHDL程序和RTL電路圖可以分析,CL和CLR的功能都發(fā)生了變化,前者為'1'時(shí)測(cè)信號(hào)高電平的脈寬,為'0'時(shí)測(cè)低電平的脈寬;而后者CLR變?yōu)椤?’時(shí)作系統(tǒng)初始化,由‘1’變?yōu)椤?’后啟動(dòng)電路系統(tǒng)的標(biāo)準(zhǔn)信號(hào)計(jì)數(shù)器BZQ準(zhǔn)備對(duì)標(biāo)準(zhǔn)頻率進(jìn)行計(jì)數(shù)。而允許計(jì)數(shù)的條件是此后出現(xiàn)的第一個(gè)脈寬的寬度。由圖3.5可見,當(dāng)CL=‘1’,TCLK的高電平脈沖到來
106、時(shí),即啟動(dòng)了BZQ進(jìn)行計(jì)數(shù),而在TCLK的低電平到來時(shí)停止計(jì)數(shù),狀態(tài)信號(hào)EEND則由低電平變?yōu)楦唠娖剑嬖V單片機(jī)計(jì)數(shù)結(jié)束。計(jì)數(shù)值可以通過SEL讀出,這里是4BH。</p><p> 由此不難算出,TCLK的高電平脈寬應(yīng)該等于4BH乘以BCLK的周期。改變CL為‘0’,又能測(cè)出TCLK的低電平脈寬,從而可以獲得TCLK的周期和占空比。</p><p> 3.2 單片機(jī)控制與運(yùn)算程序的設(shè)計(jì)
107、</p><p> 完成VHDL硬件語言編程,系統(tǒng)內(nèi)CPLD芯片中的邏輯資源尚缺一點(diǎn)即可大功告成,系統(tǒng)需要單片機(jī)為它實(shí)現(xiàn)控制,運(yùn)算,顯示等功能。所以,采用89C51單片機(jī)控制模塊對(duì)各種信號(hào)進(jìn)行處理并顯示。</p><p> 與單片機(jī)可以按照如下方式接口:</p><p> (1) 單片機(jī)的P0口接八位數(shù)據(jù)DATA[7..0],負(fù)責(zé)讀取測(cè)頻數(shù)據(jù)。</p&g
108、t;<p> (2) 單片機(jī)可以通過信號(hào)START(P2.7),指示計(jì)數(shù)是否結(jié)束,以確定何時(shí)可以讀取數(shù)據(jù)。</p><p> (3) P2.0、P2.1、P2.2與SEL[2..0]相接,用于控制多路通道的數(shù)據(jù)選擇。當(dāng)SEL分別為“000”、“001”、“010”、“011”時(shí),由低八位到高八位讀出標(biāo)準(zhǔn)頻率計(jì)數(shù)值;當(dāng)SEL分別為“100”、“101”、“110”、“111”;由低八位到高八位讀出
109、待測(cè)頻率計(jì)數(shù)值。</p><p> (4) EEND(P2.3)與START功能基本相同,當(dāng)其由低電平變到高電平使指示脈沖寬度計(jì)數(shù)結(jié)束。</p><p> (5) P2.5和P2.6分別接控制信號(hào)CL和SPUL。CL和SPUL協(xié)同控制測(cè)試操作。即當(dāng)為‘1’時(shí),CL作為測(cè)脈寬控制信號(hào)。這時(shí),CL若為‘1’,測(cè)TCLK的高電平脈寬,而當(dāng)CL為‘0’,則測(cè)TCLK的低電平脈寬。然后分別從DA
110、TA數(shù)據(jù)口讀出BZH對(duì)標(biāo)準(zhǔn)頻率的計(jì)數(shù),即只需令SEL的取值分別為 “000”、 “001”、 “010”、 “011” 即可。</p><p> (6) P0.0接清零信號(hào)CLR,高電平有效。每一測(cè)頻周期開始時(shí),都應(yīng)該首先清零。</p><p> 3.2.1 單片機(jī)主程序的設(shè)計(jì)</p><p> 當(dāng)系統(tǒng)通過5V電源供電時(shí),自動(dòng)進(jìn)入自檢狀態(tài),由單片機(jī)發(fā)出按鍵掃描
111、信號(hào)對(duì)各個(gè)按鍵進(jìn)行掃描。系統(tǒng)進(jìn)行初始化后,此時(shí)當(dāng)某鍵按下時(shí),程序跳轉(zhuǎn)到相應(yīng)的子程序執(zhí)行功能,然后返回繼續(xù)執(zhí)行鍵盤掃描主程序。</p><p> 單片機(jī)控制主程序流程圖如圖3.6。</p><p> 圖3.6 單片機(jī)主程序流程圖</p><p> 3.2.2 頻率、周期計(jì)數(shù)子程序的設(shè)計(jì)</p><p> 如果按下測(cè)頻鍵,則開始測(cè)量過程:
112、首先,由單片機(jī)的P2.4發(fā)出一個(gè)清零信號(hào)P2.4=1,把計(jì)數(shù)使能信號(hào)START的預(yù)置門控信號(hào)CL置成0。然后P2.5(CL控制端)給出一個(gè)高電平的脈沖,長(zhǎng)度控制在0.1秒至1秒之間。在此過程中,CPLD部分已經(jīng)完成測(cè)頻的任務(wù)。P2.5(CL控制端)下跳成0后,要有一個(gè)延遲時(shí)間單片機(jī)再開始讀取CPLD信息,這個(gè)延遲由單片機(jī)控制,長(zhǎng)度要大于等于待測(cè)量信號(hào)的一個(gè)周期。然后就是讀取待測(cè)頻率的過程了,P0口負(fù)責(zé)讀取數(shù)據(jù)。 P2.0、P2.1、P2
113、.2與SEL[2..0]相接,用于控制多路通道的數(shù)據(jù)選擇。當(dāng)SEL分別為“000”、“001”、“010”、“011”時(shí),由低八位到高八位讀出標(biāo)準(zhǔn)頻率計(jì)數(shù)值;當(dāng)SEL分別為“100”、“101”、“110”、“111”;由低八位到高八位讀出待測(cè)頻率計(jì)數(shù)值。然后單片機(jī)計(jì)算(Fs/Ns)·Nx的</p><p> 值,通過ZLG7289傳給LED顯示。</p><p> 在測(cè)量周
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)的智能電子計(jì)數(shù)器的設(shè)計(jì)畢業(yè)論文
- 智能電子計(jì)數(shù)器的畢業(yè)論文
- 機(jī)械電子工程畢業(yè)論文-基于單片機(jī)的生產(chǎn)線成品計(jì)數(shù)器設(shè)計(jì)
- 基于單片機(jī)的紅外計(jì)數(shù)器畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的紅外計(jì)數(shù)器畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的計(jì)數(shù)器畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的紅外計(jì)數(shù)器畢業(yè)設(shè)計(jì)論文.doc
- 畢業(yè)論文--基于51單片機(jī)的流水線產(chǎn)品計(jì)數(shù)器設(shè)計(jì)
- 畢業(yè)論文--基于51單片機(jī)的流水線產(chǎn)品計(jì)數(shù)器設(shè)計(jì)
- 基于at89s52單片機(jī)的紅外計(jì)數(shù)器畢業(yè)論文
- 基于單片機(jī)的紅外自動(dòng)計(jì)數(shù)器設(shè)計(jì)
- 電子秒表畢業(yè)論文--基于單片機(jī)的電子秒表的設(shè)計(jì)
- 基于單片機(jī)的電子計(jì)算器設(shè)計(jì)【畢業(yè)論文】
- 基于單片機(jī)的智能小車設(shè)計(jì)-電子信息工程畢業(yè)論文
- 基于單片機(jī)的智能小車設(shè)計(jì)-電子信息工程畢業(yè)論文
- 單片機(jī)多功能計(jì)數(shù)器的方案畢業(yè)方案論文
- 畢業(yè)論文范文——單片機(jī)手動(dòng)計(jì)數(shù)器
- 畢業(yè)論文范文——單片機(jī)手動(dòng)計(jì)數(shù)器
- 電子專業(yè)畢業(yè)論文--led流水燈單片機(jī)的設(shè)計(jì)
- 基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論