電子系統(tǒng)課程設計-簡易頻率計_第1頁
電子系統(tǒng)課程設計-簡易頻率計_第2頁
電子系統(tǒng)課程設計-簡易頻率計_第3頁
電子系統(tǒng)課程設計-簡易頻率計_第4頁
電子系統(tǒng)課程設計-簡易頻率計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

..XX科技大學課程設計說明書課程名稱_現(xiàn)代電子系統(tǒng)課程設計__題目_簡易數(shù)字頻率計設計_學院__電子信息工程學院____班級__學生姓名_______指導教師______日期___20XX12月16日__課程設計任務書〔指導教師填寫課程設計名稱現(xiàn)代電子系統(tǒng)課程設計學生姓名專業(yè)班級設計題目簡易數(shù)字頻率計設計課程設計目的掌握高速AD的使用方法;掌握頻率計的工作原理;掌握GW48_SOPC實驗箱的使用方法;了解基于FPGA的電子系統(tǒng)的設計方法。設計內容、技術條件和要求設計一個具有如下功能的簡易頻率計。〔1基本要求:a.被測信號的頻率范圍為1~20kHz,用4位數(shù)碼管顯示數(shù)據(jù)。b.測量結果直接用十進制數(shù)值顯示。c.被測信號可以是正弦波、三角波、方波,幅值1~3V不等。d.具有超量程警告〔可以用LED燈顯示,也可以用蜂鳴器報警。e.當測量脈沖信號時,能顯示其占空比〔精度誤差不大于1%。〔2發(fā)揮部分a.修改設計,實現(xiàn)自動切換量程。b.構思方案,使整形時,以實現(xiàn)擴寬被測信號的幅值范圍。時間進度安排布置課題和講解:1天查閱資料、設計:4天實驗:3天撰寫報告:2天主要參考文獻何小艇《電子系統(tǒng)設計》XX大學出版社2008.1潘松黃繼業(yè)《EDA技術實用教程》科學出版社2006.10指導教師簽字:20XX11月28日..摘要頻率計是數(shù)字電路中的一個典型應用,是計算機、通訊設備、音頻視頻等科研生產(chǎn)領域不可缺少的測量儀器,頻率測量在科技研究和實際應用中的作用日益重要。數(shù)字頻率計是數(shù)字電路中的一個典型應用,實際的硬件設計用到的器件較多,連線比較復雜,而且會產(chǎn)生比較大的延時,造成測量誤差、可靠性差。隨著復雜可編程邏輯器件〔CPLD的廣泛應用,以EDA工具作為開發(fā)手段,運用VHDL語言。將使整個系統(tǒng)大大簡化。提高整體的性能和可靠性。在本文中,我們設計了一個簡易數(shù)字頻率計。主要分為如下幾個部分:A/D模塊: 用VHDL語言寫一個狀態(tài)機,控制ADC0809芯片正常工作,使輸入的被測模擬信號經(jīng)過ADC0809芯片處理,轉化為數(shù)字信號。比較整形模塊:將A/D轉換出來的數(shù)字信號通過比較,高于閾值的為1低于閾值的為0從而將八位數(shù)字信號轉換為脈沖便于頻率計算。頻率測量模塊:常用的頻率測量方法有很多。有計數(shù)法和計時法等,具體的方案論證將在下面進行。占空比計算模塊:計算脈沖波占空比,具體的方案論證將在下面進行。選擇顯示模塊:設置一個二選一電路,通過一個按鍵控制四位數(shù)碼管顯示的內容是頻率還是占空比。關鍵詞:數(shù)字頻率計、模塊、占空比、數(shù)字信號、測量、閾值目錄任務解析……………….……3總體方案與比較論證…………4方案選擇………6頻率測量方法方案論證….………………..…………….……6系統(tǒng)結構….……...…....……...…………….…………….……9A/D模塊設計……………….……..…………10比較整形模塊設計……….…..12頻率測量模塊設計…………..13占空比計算模塊設計………..14選擇顯示模塊設計………......15硬件驗證……...……………...16誤差分析…………………...………………...17心得體會…………..….……...18參考文獻……………...………19任務解析本次課程設計的主要任務就是利用VHDL語言設計一個簡易數(shù)字頻率計。頻率計主要用于測量正弦波、矩形波、三角波和尖脈沖等周期信號的頻率值及脈沖的占空比。其擴展功能可以實現(xiàn)自動切換量程,使整形時,以實現(xiàn)擴寬被測信號的幅值范圍。數(shù)字頻率計的整體系統(tǒng)原理框圖如圖1,被測信號為外部輸入信號,送入測量電路經(jīng)過數(shù)字整形、測量計算、數(shù)據(jù)鎖存和送顯。就完成了頻率計的基本功能,控制選擇用來實現(xiàn)頻率的計算頻率和計算占空比功能的選擇。圖1根據(jù)簡易頻率計設計的任務書可知這次的頻率計的性能指標如下:一、信號波形:正弦波、三角波和矩形波。二、率范圍分二檔:Hz檔和kHz檔a.被測信號的頻率范圍為1~20kHz,用4位數(shù)碼管顯示數(shù)據(jù)。b.測量結果直接用十進制數(shù)值顯示。c.被測信號可以是正弦波、三角波、方波,幅值1~3V不等。d.具有超量程警告〔可以用LED燈顯示,也可以用蜂鳴器報警。e.當測量脈沖信號時,能顯示其占空比〔精度誤差不大于1%。三、發(fā)揮部分a.修改設計,實現(xiàn)自動切換量程。b.構思方案,使整形時,以實現(xiàn)擴寬被測信號的幅值范圍總體方案與比較論證數(shù)字頻率計在具體是現(xiàn)實時,可以采用單片機或者FPGA來實現(xiàn),具體有如下方案:方案一:采用FPGA與單片機為核心來實現(xiàn),可以利用FPGA來實現(xiàn)在單片機系統(tǒng)中的計數(shù)部分。這樣可以節(jié)省單片機的系統(tǒng)資源,考慮到在下面的相移網(wǎng)絡設計中也需要利用單片機和FPGA,但單片機的系統(tǒng)資源相對有限,因此我們建議在這里單片機主要用于控制,而FPGA則可以用來進行計數(shù)之類的事情。簡單原理圖如圖2圖2方案二:分離元件設計方案:本方案利用大量數(shù)字芯片,通過各種邏輯關系構成,但由于芯片無編程性,實現(xiàn)難度較大,只能完成部分功能,同時電路復雜。在實際應用中存在很多問題。方案三:全部利用FPGA來實現(xiàn),即利用FPGA產(chǎn)生時鐘。由于FPGA的工作頻率比單片機的高很多,因此可以考慮直接利用FPGA產(chǎn)生信號的高頻參考頻率,FPGA處理速度快,得到的頻率,占空比相對穩(wěn)定,精度高,容易實現(xiàn)高頻測量。缺點是硬件較為復雜,實現(xiàn)控制相對復雜。簡單原理圖如圖3圖3方案選擇:方案一雖然可行,但是由于在實驗室現(xiàn)有的FPGA實驗板上無法將單片機運用在系統(tǒng)中,因此不能用。方案二在理論上和現(xiàn)有的硬件基礎上都能實現(xiàn),但是復雜度高因此也不能用。方案三不僅符合此次課程設計的要求,且在實驗室的條件下均能實現(xiàn),所以我們選擇方案三作為本次課程設計的方案。頻率測量方法方案論證數(shù)字頻率測量的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準時鐘,對比測量其他信號的頻率。通常情況下有兩種測量方法::一種方法是計數(shù)法,就是在一定閘門時間內測量被測信號的脈沖個數(shù);另外一種是計時法。方案一:計數(shù)法計數(shù)法是將被測信號通過一個定時閘門加到計數(shù)器進行計數(shù)的方法,如果閘門打開的時間為T,計數(shù)器得到的計數(shù)值為N1,則被測頻率為f=N1/T。改變時間T,則可改變測量頻率范圍。如圖4所示。計數(shù)值N1計數(shù)值N1T被測信號標準閘門圖4設在T期間,計數(shù)器的精確計數(shù)值應為N,根據(jù)計數(shù)器的計數(shù)特性可知,N1的絕對誤差是N1=N+1,N1的相對誤差為δN1=<N1-N>/N=1/N。由N1的相對誤差可知,N的數(shù)值愈大,相對誤差愈小,成反比關系。因此,在f以確定的條件下,為減少N的相對誤差,可通過增大T的方法來降低測量誤差。當T為某確定值時〔通常取1s,則有f1=N1,而f=N,故有f1的相對誤差:δf1=<f1-f>/f=1/f從上式可知f1的相對誤差與f成反比關系,即信號頻率越高,誤差越??;而信號頻率越低,則測量誤差越大。因此測頻法適合用于對高頻信號的測量,頻率越高,測量精度也越高。方案二:計時法計時法又稱為測周期法,計時法是用被測信號來控制閘門的開閉,而將標準時基脈沖通過閘門加到計數(shù)器,閘門在外信號的一個周期內打開,這樣計數(shù)器得到的計數(shù)值就是標準時基脈沖外信號的周期值,然后求周期值的倒數(shù),就得到所測頻率值。首先把被測信號通過二分頻,獲得一個高電平時間是一個信號周期T的方波信號;然后用一個一直周期T1的高頻方波信號作為計數(shù)脈沖,在一個信號周期T的時間內對T1信號進行計數(shù),如圖5所示。圖5若在T時間內的計數(shù)值為N2,則有:T2=N2*T1f2=1/T2=1/<N2*T1>=f1/N2N2的絕對誤差為N2=N+1。N2的相對誤差為δN2=<N2-N>/N=1/NT2的相對誤差為δT2=<T2-T>/T=<N2*T1-T>/T=f/f1從T2的相對誤差可以看出,周期測量的誤差與信號頻率成正比,而與高頻標準計數(shù)信號的頻率成反比。當f1為常數(shù)時,被測信號頻率越低,誤差越小,測量精度也就越高。根據(jù)本設計要求的性能與技術指標,首先需要確定能滿足這些指標的頻率測量方法。有上述頻率測量原理與方法的討論可知,計時法適合于對低頻信號的測量,而計數(shù)法則適合于對較高頻信號的測量。但由于用計時法所獲得的信號周期數(shù)據(jù),還需要求倒數(shù)運算才能得到信號頻率,而求倒數(shù)運算用VHDL語言實現(xiàn)起來更占用系統(tǒng)資源且可能帶來更大誤差,因此,計時法不適合本實驗要求。測頻法的測量誤差與信號頻率成反比,信號頻率越低,測量誤差就越大,信號頻率越高,其誤差就越小。如果用測頻法所獲得的測量數(shù)據(jù),將閘門時間設置為一秒時,不需要進行任何換算,計數(shù)器所計數(shù)據(jù)就是信號頻率。用VHDL語言實現(xiàn)起來更加容易,調整時也更為方便。因此,本次課程設計所用的頻率測量方法是計數(shù)法。系統(tǒng)結構根據(jù)本次課程設計的要求,我將這次的頻率計功能實現(xiàn)分為五個模塊:1、A/D模塊2、比較整形模塊3、頻率測量模塊4、占空比計算模塊5、選擇顯示模塊系統(tǒng)結構如圖6:圖6為了節(jié)省系統(tǒng)資源我們的頻率測量模塊與占空比計算模塊都用頻率為3MHz的基準信號。下面是各個模塊的具體描述與功能:A/D模塊設計A/D模塊的主要功能就是控制ADC0809芯片正常工作進行被測模擬信號的采集和數(shù)字化的過程,ADC0809是美國國家半導體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D轉換器。其內部有一個8通道多路開關,它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉換。是目前國內應用最廣泛的8位通用A/D芯片。其主要控制信號:START是轉換啟動信號,高電平有效;ALE是3位通道選擇地址信號的鎖存信號。當模擬量送至某一輸入端,由3位地址信號選擇,而地址信號由ALE鎖存;EOC是轉換情況狀態(tài)信號;在EOC的上升沿后,若使輸出使能信號OE為高電平,則打開三態(tài)緩沖期,把轉換好的8位數(shù)據(jù)結果輸至數(shù)據(jù)總線。其實按照本次課程設計的要求,此次頻率計應該使用一個高速AD芯片,但是由于實驗條件,我們只能用0809這個慢速的AD,所以本次課程設計的測頻范圍就大大縮小了,測頻范圍大概只能從1Hz到4KHz。ADC0809的工作過程:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復位。下降沿啟動A/D轉換,之后EOC輸出信號變低,指示轉換正在進行。直到A/D轉換完成,EOC變?yōu)楦唠娖?指示A/D轉換結束,結果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當OE輸入高電平時,輸出三態(tài)門打開,轉換結果的數(shù)字量輸出到數(shù)據(jù)總線上,至此ADC0809的一次轉換結束。下面是控制ADC0809采樣狀態(tài)圖:st0st0st1st2st3st4圖7用VHDL語言寫了一個狀態(tài)機來控制ADC0809正常工作采集轉化被測信號,下面是A/D模塊的封裝圖以及仿真波形圖:圖8圖9由仿真圖可也看出狀態(tài)機能夠控制ADC0809芯片正常工作完成被測信號的數(shù)字化處理。比較整形模塊設計比較整形模塊的輸入信號是經(jīng)過0809數(shù)字化的被測信號。比較整形模塊的作用就是將輸入的八位信號轉化為誤差較小的高低電平,形成脈沖信號。原理就是在設置一個閾值,當輸入的信號高于這個閾值時輸出高電平,當輸入的信號低于閾值時輸出低電平。這樣就可以把被測的信號轉化為脈沖信號,然后送入頻率計算電路就能方便地計算出被測信號的頻率。閾值的設置與被測信號的幅度有關,任務書要求幅值是1-3V,所以我們取1V設置閾值,當1V滿足時,3V也自然滿足。因為1/5*255=51,所以我們將閾值設為’00100000’,小于50,滿足設計要求。其形成的封裝圖及仿真波形圖如下:圖10D為八位輸入CLKIN為輸出信號圖11圖12如圖11、圖12所示,當輸入信號高于’00100000’時,輸出信號CLKIN是高電平,當輸入信號低于’00100000’時,輸出信號CLKIN是低電平。所以比較整形模塊能夠正常工作,完成輸入信號的整形轉化為脈沖信號。頻率測量模塊設計頻率測量模塊有兩個輸入信號,一個是從比較整形電路輸出的整形后的脈沖信號,這個是被測信號。另外一個是基準頻率,用來進行測量被測頻率使用。頻率測量模塊的工作過程大致是:將基準頻率進行分頻,得到一個周期為2秒的方波,利用方波的電平為正的半個周期作為閘門信號,在半個周期內利用計數(shù)器計算被測頻率的個數(shù),所得的脈沖個數(shù)就是被測信號的頻率。然后將所得個數(shù)送出給后面的選擇模塊。其中頻率計數(shù)具有自動切換量程的功能,有兩個檔位一個是Hz檔,一個是KHz檔。因為用四個數(shù)碼管顯示但是ADC0809是慢速芯片,頻率范圍1Hz到4KHz,所以為了實現(xiàn)自動換量程功能,當被測頻率超過1000Hz就切換為KHz檔了,所以在實驗箱上驗證時最高位的數(shù)碼管一般不會顯示數(shù)字。下面是模塊的封裝圖以及波形仿真圖:圖13圖14由于軟件工具的限制,測頻功能的自動換擋功能仿真起來比較困難,要求的頻率過高,軟件仿真較慢,易出錯,所以僅仿真驗證了了頻率計數(shù)的功能。占空比計算模塊設計占空比計算模塊是用來計算被測信號為方波時的占空比。占空比為在一串理想的脈沖周期序列中〔如方波,正脈沖的持續(xù)時間與脈沖總周期的比值。這個模塊我是這么實現(xiàn)的,將比較整形后的方波信號作為一個輸入信號,再輸入一個高頻脈沖信號作為基準信號,最好要遠遠高于被測信號的頻率,這樣才能更好更準確測量被測脈沖信號的占空比。將被測信號輸入后二分頻后得到一個周期是原被測信號二倍的信號,然后利用原被測信號的半個周期的高電平以及二分頻后的信號的半個周期的高電平作為兩個閘門信號T1、T2,分別記錄這兩個閘門信號下基準信號的個數(shù)A1、A2,然后用A1除以A2就能得到被測脈沖信號的占空比了。特別注意的是這個模塊內要加入一個鎖存器,否則占空比計算后的數(shù)值輸出到數(shù)碼管會不停的閃爍。下面是占空比模塊的封裝圖以及波形仿真圖:圖15圖16輸入信號是占空比為72%的脈沖信號,仿真結果為72%,占空比計算模塊能夠正常工作。選擇顯示模塊設計選擇顯示模塊就是一個二選一電路,頻率測量模塊的四個輸出以及占空比計算模塊的兩個輸出都作為選擇顯示模塊的輸入,還有一個輸入信號由按鍵控制。用來控制選擇顯示模塊的輸出是頻率測量模塊的輸出信號還是占空比計算模塊的兩個輸出。選擇顯示模塊的作用就是,因為實驗箱在模式5的狀態(tài)下,由于適用ADC0809,占用了三個數(shù)碼管,所以占空比及頻率不能同時用數(shù)碼管顯示,要用四個數(shù)碼管顯示頻率就必須通過選擇顯示模塊來控制。當按鍵沒有按下的時候四個數(shù)碼管顯示的是頻率,當按鍵按下后數(shù)高兩位數(shù)碼管顯示占空比,低兩位數(shù)碼管為零。下面是選擇顯示模塊的封裝圖以及波形仿真圖:圖17圖18由圖可以看到二選一模塊能夠完成既定功能。硬件驗證:頻率測量波形方波正弦波三角波輸入頻率〔hz輸出頻率〔hz101011155005005015013000300029982588占空比測試輸入占空比〔%顯示占空比〔%70706059505040413032誤差分析1、頻率測量誤差分析:由于ADC0809芯片是一個低速的AD芯片,所以方波的頻率在4khz以下,測量較為準確,超過4khz就會出現(xiàn)較大的誤差。正弦波的頻率在11hz-3000hz之間測量的較為準確。三角波的頻率在15hz-1800hz之間測量的較為準確。這與AD的轉換速度及精度有一定關系,頻率的測量方法也影響著頻率測量的精確度。所以如果使用高速AD,并且測量高頻與低頻時使用適用與不同情況的頻率測量方法,可以有效降低誤差。2、占空比測量誤差分析:由表可見,占空比整體測量比較準確,誤差并不是特別大。通過提高占空比計算模塊的基準頻率,增長閘門時間可以減小誤差。心得體會這次現(xiàn)代電子系統(tǒng)課程設計的題目是簡易數(shù)字頻率計。通過這次的課程設計,我對頻率計以及硬件描述語言的應用有了更深的認識。雖然以前的數(shù)字邏輯電路的課程設計也是頻率計,但那個頻率計是通過芯片與電路的連接實現(xiàn)的最基本的頻率計功能,并沒有更深入去考慮一個頻率計需要注意的各種問題例如如何完美實現(xiàn)頻率計各項性能指標還有頻率計精度提高的問題等。這次課程設計與開學之初的電子設計自動化的課程設計雖然有類似之處,但是比開學的那個課程設計要求要更高。我在開學初的課程設計的題目是利用FPGA實現(xiàn)一個數(shù)字鐘。在那次設計中,我遇到非常多的問題,基本模塊都是磕磕絆絆寫了出來,而且在寫頂層文件的時候,我用的是元件例化語句將各個模塊連接起來,中間用到了三十多個中間信號,自己記起來亂七八糟的,最后還是都寫到了一張紙上才全部分清,勉強將數(shù)字鐘的功能實現(xiàn)。所以這個課程設計,我先將各個模塊一一認真實現(xiàn),然后將各個模塊生成封裝,然后用原理圖連線的方法完成了總體的連線。這個方法既簡單又清晰,能夠看清整個頻率計工作流程原理,十分容易理解以及修改,不必再去用復雜的元件例化語句節(jié)省了我不少的時間。當然在這次實驗過程中也暴露出不少問題,頻率測量方法選擇不恰當,測量的誤差較大,比較整形模塊的閾值設置我想了好久都沒有想明白,最后還是在同學的耐心講解下才明白了閾值的選擇規(guī)則。最后頻率計完成前的最后一個問題就是占空比的顯示問題,當時做好之后一看占空比顯示不停閃爍,本來沒什么思路,后來聽老師給另外一個同學講解的時候說是加一個寄存器就能解決了,給占空比計算模塊加入了鎖存器果然解決了占空比閃爍的問題??偟膩碚f,這次的課設過程中遇到了不少的問題,但還是完成了任務書要求的功能。最大的收獲就是,我對VHDL語言的應用更加熟悉,大學四年來我覺得我學的最好的就是C語言和VHDL硬件描述語言了,并且語言的應用也在實驗與課程設計中不斷進步。參考文獻:〔1《現(xiàn)代電子系統(tǒng)設計》XX大學出版社何小艇主編〔2《EDA技術使用教程》科學出版社潘松編著〔3《VHDL硬件描述語言與數(shù)字邏輯電路設計》XX電子科技大學出版社侯伯亨劉凱顧新編著〔4《現(xiàn)代電子系統(tǒng)設計實驗指導書》XX科技大學齊晶晶李娜主編附錄課程設計程序:..AD模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYAD0809ISPORT<CLK,EOC:INSTD_LOGIC; D:INSTD_LOGIC_VECTOR<7DOWNTO0>; ALE,START,OE,ADDA,LOCK0:OUTSTD_LOGIC;--ADDA位地址輸入線,用于選通8路模擬輸入中的一路--ALE:地址鎖存允許信號,輸入,高電平有效--START:A/D轉換啟動脈沖輸入端,輸入一個正脈沖〔至少100ns寬使其啟動〔脈沖上升沿使0809復位,下降沿啟動A/D轉換--OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當A/D轉換結束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量 Q:OUTSTD_LOGIC_VECTOR<7DOWNTO0>>;ENDAD0809;ARCHITECTUREBEHAVOFAD0809ISTYPESTATESIS<ST0,ST1,ST2,ST3,ST4>;SIGNALCURRENT_STATE,NEXT_STATE:STATES:=ST0;SIGNALREGL:STD_LOGIC_VECTOR<7DOWNTO0>;SIGNALLOCK:STD_LOGIC;BEGINADDA<='1';Q<=REGL;LOCK0<=LOCK;COM:PROCESS<CURRENT_STATE,EOC>BEGINCASECURRENT_STATEISWHENST0=>ALE<='0';START<='0';LOCK<='0';OE<='0';NEXT_STATE<=ST1;WHENST1=>ALE<='1';START<='1';LOCK<='0';OE<='0';NEXT_STATE<=ST2;WHENST2=>ALE<='0';START<='0';LOCK<='0';OE<='0';IF<EOC='1'>THENNEXT_STATE<=ST3;ELSENEXT_STATE<=ST2;ENDIF;WHENST3=>ALE<='0';START<='0';LOCK<='0';OE<='1';NEXT_STATE<=ST4;WHENST4=>ALE<='0';START<='0';LOCK<='1';OE<='1';NEXT_STATE<=ST0;WHENOTHERS=>NEXT_STATE<=ST0;ENDCASE;ENDPROCESSCOM;REG:PROCESS<CLK>BEGINIF<CLK'EVENTANDCLK='1'>THENCURRENT_STATE<=NEXT_STATE;ENDIF;ENDPROCESSREG;LATCH1:PROCESS<LOCK> BEGIN IFLOCK='1'ANDLOCK'EVENTTHENREGL<=D; ENDIF;ENDPROCESSLATCH1;ENDBEHAV; 比較整形模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYBJISPORT<D:INSTD_LOGIC_VECTOR<7DOWNTO0>; CLKIN:OUTSTD_LOGIC>;ENDENTITYBJ;ARCHITECTUREONEOFBJISBEGINPROCESS<D>BEGIN IFD>"00010000"THEN CLKIN<='1'; ELSECLKIN<='0'; ENDIF;ENDPROCESS;ENDONE;頻率測量模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYPLISPORT<CLK3M:INSTD_LOGIC; CLKIN:INSTD_LOGIC; SMG1,SMG2,SMG3,SMG4:OUTSTD_LOGIC_VECTOR<3DOWNTO0>; --SMG1,SMG2,SMG3,SMG4為記數(shù)碼管的khz,hz的三位 BEEF,HZ,KHZ:OUTSTD_LOGIC:='0'>;ENDENTITYPL;ARCHITECTUREONEOFPLISSIGNALCLKOUT:STD_LOGIC;SIGNALS0,S1,S2,S3,S4,S5:STD_LOGIC_VECTOR<3DOWNTO0>;SIGNALQ0,Q1,Q2,Q3,Q4,Q5:STD_LOGIC_VECTOR<3DOWNTO0>;SIGNALGATE:STD_LOGIC;SIGNALCNT0:INTEGERRANGE0TO3000000;BEGINPROCESS<CLK3M>--將時基信號分頻BEGINIF<RISING_EDGE<CLK3M>>THEN IF<CNT0=3000000>THEN CNT0<=0; GATE<=NOTGATE; ELSECNT0<=CNT0+1; ENDIF;ENDIF;ENDPROCESS;PROCESS<CLKIN>--計數(shù)器BEGINIF<RISING_EDGE<CLKIN>>THENIFGATE='1'THENIFS0="1001"THENS0<="0000";--0個位IFS1="1001"THENS1<="0000";--1十位IFS2="1001"THENS2<="0000";--2百位IFS3="1001"THENS3<="0000";--3千位IFS4="1001"THENS4<="0000";S5<="1111";--4萬位ELSES4<=S4+'1';ENDIF;ELSES3<=S3+'1';ENDIF;ELSES2<=S2+'1';ENDIF;ELSES1<=S1+'1';ENDIF;ELSES0<=S0+'1';ENDIF; ELSIFS0/="0000"ORS1/="0000"ORS2/="0000"ORS3/="0000"ORS4/="0000"ORS5/="0000" THENQ0<=S0;Q1<=S1;Q2<=S2;Q3<=S3;Q4<=S4;Q5<=S5; S0<="0000";S1<="0000";S2<="0000";S3<="0000";S4<="0000";s5<="0000"; ENDIF;ENDIF;ENDPROCESS;PROCESS<Q0,Q1,Q2,Q3,Q4,Q5,CLK3M,S5>BEGINIF<Q3>"0000"ORQ4>"0000">THENSMG4<=Q4;SMG3<=Q3;SMG2<=Q2;SMG1<=Q1;HZ<='0';KHZ<='1';ELSESMG4<=Q3;SMG3<=Q2;SMG2<=Q1;SMG1<=Q0;HZ<='1';KHZ<='0';ENDIF;IF<S5="1111">THEN--超量程警告BEEF<='1';ELSEBEEF<='0';ENDIF;ENDPROCESS;ENDONE;占空比計算模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYZKISPORT<CLKIN,CLK3M:INSTD_LOGIC;ZKOUT0,ZKOUT1:OUTSTD_LOGIC_VECTOR<3DOWNTO0>>;ENDZK;ARCHITECTUREONEOFZKISSIGNALZKB:INTEGERRANGE0TO99;--占空比SIGNALCNT1:INTEGERRANGE0TO3000000:=0;SIGNALCNQ1:INTEGERRANGE0TO3000000:=0;SIGNALCN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論