第一篇:頻率計(jì)的發(fā)展簡(jiǎn)介
頻率計(jì)的發(fā)展簡(jiǎn)介
一、數(shù)字頻率計(jì)的簡(jiǎn)介
數(shù)字式頻率計(jì)即DFM-Digital Frequencymeter,也稱為數(shù)字頻率表或電子計(jì)數(shù)器。它不僅是電子測(cè)量和儀器儀表專業(yè)領(lǐng)域中測(cè)量頻率與周期、測(cè)量頻率比和進(jìn)行計(jì)數(shù)、測(cè)時(shí)的重要儀器,而且比示波器測(cè)頻更方便、經(jīng)濟(jì)得多,特別是現(xiàn)代電子計(jì)數(shù)器產(chǎn)品與足見和具有多種測(cè)量功能的數(shù)字式頻率計(jì),已廣泛應(yīng)用于計(jì)算機(jī)系統(tǒng)、通訊廣播設(shè)備、生產(chǎn)過程自動(dòng)化測(cè)控裝置、帶有LED、LCD數(shù)字顯示單元的多種儀器儀表以及諸多的可許技術(shù)領(lǐng)域。可以說,伴隨著數(shù)字化技術(shù)的發(fā)展,電子計(jì)算機(jī)、通訊設(shè)備、音頻和視頻技術(shù)進(jìn)入科研、生產(chǎn)、軍事技術(shù)和經(jīng)濟(jì)生活領(lǐng)域,直至家庭和個(gè)人,使得電子計(jì)數(shù)器和測(cè)頻手段與上述電子設(shè)備耦連為形影不離的技術(shù)。
數(shù)字頻率計(jì)是一種用十進(jìn)制數(shù)字顯示被測(cè)信號(hào)頻率的數(shù)字測(cè)量?jī)x器。它的基本功能是測(cè)量正弦信號(hào).方波信號(hào),尖脈沖信號(hào)及其他各種單位時(shí)間內(nèi)變化的物理量.頻率計(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è)得的頻率精度就受影響。本文。數(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ì)件等等。因此,數(shù)字頻率計(jì)是一種應(yīng)用很廣泛的儀器,電子系統(tǒng)非常廣泛的應(yīng)用領(lǐng)域內(nèi),到處可見到處理離散信息的數(shù)字電路。數(shù)字電路制造工業(yè)的進(jìn)步,使得系統(tǒng)設(shè)計(jì)人員能在更小的空間內(nèi)實(shí)現(xiàn)更多的功能,從而提高系統(tǒng)可靠性和速度。
二、數(shù)字頻率計(jì)的發(fā)展
在電子技術(shù)中,頻率是最基本的參數(shù)之一,并且與許多點(diǎn)參量的測(cè)量方案、測(cè)量結(jié)果都有十分密切的關(guān)系,因此頻率的測(cè)量就顯得更為重要。測(cè)量頻率的方法有很多種,其中電子計(jì)數(shù)器測(cè)量頻率具有精度高、使用方便、測(cè)量迅捷,以及便于實(shí)現(xiàn)測(cè)量過程自動(dòng)化等優(yōu)點(diǎn),是頻率測(cè)量的重要手段之一。電子計(jì)數(shù)器測(cè)頻有兩種方法:一是直接測(cè)頻法,即在一定閘門時(shí)間內(nèi)測(cè)量被測(cè)信號(hào)的脈沖個(gè)數(shù);二是間接測(cè)頻法,如周期測(cè)頻法。直接測(cè)頻法使用于高頻信號(hào)的頻率測(cè)量,間接測(cè)頻法適用于低頻信號(hào)的頻率測(cè)量。50年代初期,儀 1 器儀表取得了重大突破,數(shù)字技術(shù)的出現(xiàn)使各種數(shù)字儀器得以問世,把模擬儀器的精度、分辨力與測(cè)量速度提高了幾個(gè)量級(jí),為實(shí)現(xiàn)測(cè)試自動(dòng)化打下了良好的基點(diǎn)。60年代中期,測(cè)量技術(shù)又一次取得了進(jìn)展,計(jì)算機(jī)的引入,使儀器的功能發(fā)生了質(zhì)的變化,個(gè)別電量的測(cè)量轉(zhuǎn)變成測(cè)量整個(gè)系統(tǒng)的待征參數(shù),從單純的接收、顯示轉(zhuǎn)變?yōu)榭刂啤⒎治?、處理、?jì)算與顯示輸出,從用單個(gè)儀器進(jìn)行測(cè)量轉(zhuǎn)變成用測(cè)量系統(tǒng)進(jìn)行測(cè)量。70年代,計(jì)算機(jī)技術(shù)在儀器儀表中的進(jìn)一步滲透,使電子儀器在傳統(tǒng)的時(shí)域與頻域之外,又出現(xiàn)了數(shù)據(jù)或(Data domain)測(cè)試。80年代,由于微處理器被用到儀器中,儀器前面板開始朝鍵盤化方向發(fā)展,過去直觀的用于調(diào)節(jié)時(shí)基或幅度的旋轉(zhuǎn)度盤,選擇電壓電流等量程或功能的滑動(dòng)開關(guān),通、斷開關(guān)鍵已經(jīng)消失。測(cè)量系統(tǒng)的主要模式,是采用機(jī)柜形式,全部通過IEEE-488總線送到一個(gè)控制品上。測(cè)試時(shí),可用豐富的BASIC語言程序來高速測(cè)試。不同于傳統(tǒng)獨(dú)立儀器模式的個(gè)人儀器已經(jīng)得到了發(fā)展。90年代,儀器儀表與測(cè)量科學(xué)進(jìn)步取得重大的突破性進(jìn)展。這個(gè)進(jìn)展的主要標(biāo)志是儀器儀表智能化程度的提高。突出表現(xiàn)在以下幾個(gè)方面:微電子技術(shù)的進(jìn)步將更深刻地影響儀器儀表的設(shè)計(jì):DSP芯片的大量問世,使儀器儀表數(shù)字信號(hào)處理功能大大加強(qiáng);微型機(jī)的發(fā)展,使儀器儀表具有更強(qiáng)的數(shù)據(jù)處理能力;圖像處理功能的增加十分普遍;VXI總線得到廣泛的應(yīng)用。這些儀器儀表的發(fā)展也很好的解釋了頻率計(jì)的發(fā)展歷程。
經(jīng)典的振簧式頻率表業(yè)已成為電測(cè)與儀表技術(shù)發(fā)展史上用來鑒證測(cè)頻儀器歷史的陳列品;電動(dòng)式、鐵磁電動(dòng)式結(jié)構(gòu)的指針型頻率表只在電力系統(tǒng)具有應(yīng)用,也日漸被數(shù)字式頻率計(jì)所取代;具有分立電子元件的數(shù)字式頻率計(jì),如國產(chǎn)E323A型、E325型和E312型等已發(fā)展成為采用大規(guī)模集成電路的電子計(jì)數(shù)式頻率計(jì)與只能電子計(jì)數(shù)器。例如:E312A就是采用大規(guī)模集成電路的E312的換代產(chǎn)品,而EE3301(機(jī)內(nèi)引入MC6800)、EE3366(采用MC6800,帶GP-IB接口,可程控)則為智能型數(shù)字頻率計(jì)。
三、數(shù)字頻率計(jì)的當(dāng)前進(jìn)展
傳統(tǒng)的數(shù)字頻率計(jì)可以通過普通的硬件電路組合來實(shí)現(xiàn),其開發(fā)過程、調(diào)試過程十分繁鎖,而且由于電子器件之間的互相干擾,影響頻率計(jì)的精度,也由于其體積較大,已不適應(yīng)電子設(shè)計(jì)的發(fā)展要求。所以現(xiàn)在的數(shù)字頻率計(jì)一般都使用FPGA,VHDL,單片機(jī)等一系列基于各種軟硬件或大規(guī)模集成電路制作成的數(shù)字頻率測(cè)頻計(jì),在大量的產(chǎn)品開發(fā)、研制和電子儀表生產(chǎn)與試驗(yàn)工作中多是需要自行設(shè)計(jì)測(cè)頻與計(jì)數(shù)電路的組件單元,有時(shí)不必購置貴重的專用測(cè)頻計(jì)數(shù)儀器。數(shù)字頻率計(jì)的發(fā)展一直在向更精確,更方便的方向發(fā)展。在大量的產(chǎn)品開發(fā)、研制和電子儀表產(chǎn)生與試驗(yàn)工作中,多是需要自行設(shè)計(jì)測(cè)頻與計(jì)數(shù)電路和組件單元,有時(shí)不必購置上述貴重的專用測(cè)頻計(jì)數(shù)儀器。
集成電路的類型很多,從大的方面可以分為模擬電路和數(shù)字集成電路2大類。數(shù)字集成電路廣泛用于計(jì)算機(jī)、控制與測(cè)量系統(tǒng),以及其它電子設(shè)備中。一般說來,數(shù)字系統(tǒng)中 2 運(yùn)行的電信號(hào),其大小往往并不改變,但在實(shí)踐分布上卻有著嚴(yán)格的要求,這是數(shù)字電路的一個(gè)特點(diǎn)。數(shù)字集成電路作為電子技術(shù)最重要的基礎(chǔ)產(chǎn)品之一,已廣泛地深入到各個(gè)應(yīng)用領(lǐng)域
四、當(dāng)前存在的問題
當(dāng)前電子技術(shù)日新月異,更換速度非???,對(duì)于頻率計(jì)來說也是更新很快,但是價(jià)格相對(duì)較高,因此應(yīng)該多研究和開發(fā)一些芯片集成電路的運(yùn)用,以達(dá)到使頻率計(jì)能像數(shù)字化、智能化、簡(jiǎn)易化、微型化的方向發(fā)展。
五、系統(tǒng)組成
本系統(tǒng)由CD40110、CD4017、CD4060、CD6069等集成電路組成,通過對(duì)輸入脈沖進(jìn)行計(jì)數(shù)的方式實(shí)現(xiàn)測(cè)頻的。
六、主要參考文獻(xiàn)
[1] 鄭世林,余佑財(cái).頻率差計(jì)基本原理的探討[J].電子測(cè)量技術(shù), 2006,(06)P7-P8 [2] 李存永.基于555定時(shí)器電路的多功能數(shù)字頻率計(jì)的設(shè)計(jì)[J].水利電力機(jī), 2006(08)P47-P50 [3] 高明華.簡(jiǎn)易數(shù)字頻率計(jì)的設(shè)計(jì)[J].大眾科技, 2006(2)P59-P60 [4] 史軍,雷正紅.數(shù)字頻率計(jì)的設(shè)計(jì)[J].河西學(xué)院學(xué)報(bào), 2005(5)P37-P38 [5] 鄒道生,李銘.多功能數(shù)字頻率計(jì)的設(shè)計(jì)[J].贛南師范學(xué)院學(xué)報(bào), 2004(3)P16-P18 [6] 林建英,伍勇.數(shù)字頻率計(jì)在綜合設(shè)計(jì)實(shí)驗(yàn)教學(xué)中的多方案實(shí)現(xiàn)[J].實(shí)驗(yàn)科學(xué)與技術(shù), 2005(4)P64-P69 [7] 金暉,何潔,鐘晴紅,張泳,張高燕.頻率計(jì)的數(shù)字化實(shí)現(xiàn)[J].電子工程師 2005(1)P11-P12 [8] 張秀娟,倪麗娜,程勇.基于自適應(yīng)數(shù)字頻率計(jì)系統(tǒng)設(shè)計(jì)的研究[J].煤炭科學(xué)技, 2004(8)P49-P52 [9] 王晨炳.自復(fù)位數(shù)字頻率計(jì)的設(shè)計(jì)[J].實(shí)用電子制作, 2007(7)P14-P16 [10] Pablo V.Holm-Nielsen,Christophe Peucheret,Idelfonso Tafur Monroy,Palle Jeppesen.Experimental Investigation of Transmission Properties and All-Optical Label Swapping of Orthogonal IM/FSK Labeled Signals[J].光學(xué)學(xué)報(bào), 2003,(S1).[11] A Direct Digital Frequency Synthesizer based on CORDIC algorithm Implemented with FPGA[A].2003 5~(th)International Conference on ASIC Proceedings Book 2 of 2 [C], 2003
第二篇:頻率計(jì)(格式)數(shù)字邏輯
課程設(shè)計(jì)任務(wù)書
(指導(dǎo)教師填寫)
課程設(shè)計(jì)名稱 電子技術(shù)課程設(shè)計(jì) 學(xué)生姓名
專業(yè)班級(jí)
設(shè)計(jì)題目
簡(jiǎn)易數(shù)字頻率計(jì)
一、課程設(shè)計(jì)的任務(wù)和目的
任務(wù): 設(shè)計(jì)一個(gè)簡(jiǎn)易數(shù)字頻率計(jì),用來測(cè)量單位時(shí)間內(nèi)數(shù)字信號(hào)的脈沖個(gè)數(shù),并用數(shù)碼管顯示出來。
目的:
掌握簡(jiǎn)易數(shù)字頻率計(jì)的設(shè)計(jì)、組裝、調(diào)試方法。掌握有關(guān)集成電路的工作原理。
二、設(shè)計(jì)內(nèi)容、技術(shù)條件和要求
1.設(shè)計(jì)簡(jiǎn)易數(shù)字頻率計(jì):
⑴.設(shè)計(jì)一個(gè)簡(jiǎn)易數(shù)字頻率計(jì),用于測(cè)量數(shù)字信號(hào)的頻率并顯示,用一個(gè)開關(guān)控制頻率計(jì)的起動(dòng)和停止,并可對(duì)頻率計(jì)置數(shù)。
⑵.測(cè)頻范圍為0.1Hz到9999Hz。
⑶.測(cè)量所需時(shí)基時(shí)間可調(diào),分1秒和10秒兩檔。
⑷.能連續(xù)循環(huán)測(cè)量顯示,若用1秒檔時(shí)要求6秒完成一個(gè)循環(huán),其中1秒計(jì)數(shù)測(cè)量;4秒顯示結(jié)果;1秒清零。然后依次循環(huán)。
2.根據(jù)上述要求,畫出電路框圖、原理總圖。3.對(duì)原理圖進(jìn)行仿真。4.在實(shí)驗(yàn)箱上組裝、調(diào)試。5.撰寫設(shè)計(jì)總結(jié)報(bào)告。
三、時(shí)間進(jìn)度安排
本課程設(shè)計(jì)共兩周時(shí)間。第一周:理論設(shè)計(jì)
周二
布置設(shè)計(jì)任務(wù);提出課程設(shè)計(jì)的目的和要求;講解電子電路的一般設(shè)計(jì)方法和電子電路的安裝、調(diào)試技術(shù);明確對(duì)撰寫總結(jié)報(bào)告和繪制原理總圖的要求;安排答疑、實(shí)驗(yàn)時(shí)間。
周二至周五
學(xué)生查資料,進(jìn)行理論設(shè)計(jì),其中安排三次答疑,指導(dǎo)學(xué)生設(shè)計(jì)。第二周:仿真和安裝調(diào)試、撰寫設(shè)計(jì)總結(jié)報(bào)告 周一
交設(shè)計(jì)草圖供老師審閱。
周二至周三
在EDA實(shí)驗(yàn)室對(duì)其設(shè)計(jì)的電路進(jìn)行仿真,并可根據(jù)仿真情況修正設(shè)計(jì)以確定設(shè)計(jì)正確,能完成設(shè)計(jì)要求。周三至周四
在實(shí)驗(yàn)箱上進(jìn)行安裝、調(diào)試,并通過老師驗(yàn)收。最后,撰寫設(shè)計(jì)總結(jié)報(bào)告、繪制原理總圖。
四、主要參考文獻(xiàn)
1.各種版本的數(shù)字電子技術(shù)基礎(chǔ)教材; 2.各種版本的電子技術(shù)課程設(shè)計(jì)指導(dǎo)書;
3.集成電路手冊(cè)。
指導(dǎo)教師簽字:
2013 年12月 16 日
第三篇:VHDL課程設(shè)計(jì)報(bào)告 頻率計(jì)
目錄
1.前言...........................................................................................................................2 2.設(shè)計(jì)要求...................................................................................................................2 3.整體設(shè)計(jì)..................................................................................................................3 4.設(shè)計(jì)原理...................................................................................................................3 5.設(shè)計(jì)程序...................................................................................................................3
5.1頂層文件.............................................................................................................3 5.2 8位是進(jìn)制計(jì)數(shù)器..............................................................................................4 5.3 10進(jìn)制計(jì)數(shù)器...................................................................................................5 5.4 測(cè)頻控制電路.....................................................................................................6 5.5 32位鎖存器及其控制器.....................................................................................6
6.引腳鎖定...................................................................................................................8 7.綜合結(jié)果...................................................................................................................8
7.1 RTL電路.............................................................................................................8 7.2 測(cè)頻控制電路.....................................................................................................9 7.3 8位十進(jìn)制計(jì)數(shù)器..............................................................................................9 7.3 32位鎖存器......................................................................................................9
8.實(shí)驗(yàn)結(jié)果.................................................................................................................10 7.實(shí)驗(yàn)總結(jié)...................................................................................................................10 參考文獻(xiàn)......................................................................................................................12
自適應(yīng)數(shù)字頻率計(jì)數(shù)器設(shè)計(jì)
1.前言
傳統(tǒng)的數(shù)字頻率計(jì)一般是由分離元件搭接而成,用到的器件較多,連線比較復(fù)雜,而且會(huì)產(chǎn)生比較大的延時(shí),造成測(cè)量誤差大、可靠性差。后來隨著單片機(jī)的大規(guī)模的應(yīng)用, 出現(xiàn)了不少用單片機(jī)控制的頻率測(cè)量系統(tǒng)。相對(duì)于以前用分離元件搭接起來的頻率測(cè)量系統(tǒng), 單片機(jī)控制的頻率測(cè)量系統(tǒng)在頻率測(cè)量范圍、頻率測(cè)量精度和頻率測(cè)量速度上都有了很大的提高。但由于單片機(jī)工作頻率的限制、單片機(jī)內(nèi)部計(jì)數(shù)器位數(shù)的限制等因素, 由單片機(jī)控制的頻率測(cè)量系統(tǒng)無法在頻率測(cè)量范圍、頻率測(cè)量精度和頻率測(cè)量速度上取得重大突破。若再增加別的器件, 以彌補(bǔ)單片機(jī)的不足, 不僅會(huì)大大增加系統(tǒng)的復(fù)雜性, 而且不利于系統(tǒng)的集成化。以E D A 工具作為開發(fā)平臺(tái),運(yùn)用V H D L 語言,將使整個(gè)系統(tǒng)大大簡(jiǎn)化,從而提高整體的性能和可靠性。本課題采用的是等精度數(shù)字頻率計(jì),在一片F(xiàn)PGA開發(fā)板里實(shí)現(xiàn)了數(shù)字頻率計(jì)的絕大部分功能, 它的集成度遠(yuǎn)遠(yuǎn)超過了以往的數(shù)字頻率計(jì)。又由于數(shù)字頻率計(jì)最初的實(shí)現(xiàn)形式是用硬件描述語言寫成的程序, 具有通用性和可重用性。所以在外在的條件(如基準(zhǔn)頻率的提高, 基準(zhǔn)頻率精度的提高)的允許下,只需對(duì)源程序作很小的改動(dòng), 就可以使數(shù)字頻率計(jì)的精度提高幾個(gè)數(shù)量級(jí)。同時(shí)對(duì)于頻率精度要求不高的場(chǎng)合, 可以修改源程序, 使之可以用較小的器件實(shí)現(xiàn), 從而降低系統(tǒng)的整體造價(jià)。
2.設(shè)計(jì)要求
設(shè)計(jì)一個(gè)頻率計(jì),頻率測(cè)量范圍為1-9999KHZ,量程分別為10、100、1M三檔,要求如下: a.當(dāng)讀數(shù)大于999時(shí),頻率計(jì)處于超量程狀態(tài),下一次測(cè)量時(shí),量程自動(dòng)增大1檔 b.當(dāng)讀數(shù)小于099時(shí),頻率計(jì)處于欠量程狀態(tài),下一次測(cè)量時(shí),量程自動(dòng)減小1檔
c.當(dāng)超過頻率范圍時(shí),顯示器自動(dòng)溢出
3.整體設(shè)計(jì)
當(dāng)被測(cè)頻率進(jìn)入時(shí)候,檔位1、2能自動(dòng)換擋實(shí)現(xiàn)功能,在檔位1中,有一個(gè)LED燈亮(表示Hz);檔位2中有2個(gè)LED燈亮(表示kHz);當(dāng)計(jì)數(shù)頻率超出9999kHz的時(shí)候,顯示“E”而且LED燈全部熄滅,表示溢出功能。在程序代碼中,必須要清晰表示出計(jì)數(shù)的運(yùn)行狀況。
檔位1:當(dāng)被測(cè)頻率為0—9999Hz時(shí)候,直接顯示f x的值(單位為Hz); 檔位2:當(dāng)被測(cè)頻率為10k—9999kHz時(shí)候,顯示10-9999(單位kHz);
4.設(shè)計(jì)原理
根據(jù)頻率的定義和頻率測(cè)量的基本原理,測(cè)定信號(hào)的頻率必須有一個(gè)脈寬為1 秒的輸入信號(hào)脈沖計(jì)數(shù)允許的信號(hào);1 秒計(jì)數(shù)結(jié)束后,計(jì)數(shù)值被鎖入鎖存器,計(jì)數(shù)器清0,為下一測(cè)頻計(jì)數(shù)周期作好準(zhǔn)備。測(cè)頻控制信號(hào)可以由一個(gè)獨(dú)立的發(fā)生器來產(chǎn)生。
5.設(shè)計(jì)程序
5.1頂層文件
LIBRARY IEEE;--頻率計(jì)頂層文件 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY FREQTEST IS PORT(CLK1HZ : IN STD_LOGIC;FSIN : IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0);LED : OUT STD_LOGIC_VECTOR(1 DOWNTO 0));END FREQTEST;ARCHITECTURE struc OF FREQTEST IS COMPONENT FTCTRL PORT(CLKK : IN STD_LOGIC;--1Hz CNT_EN : OUT STD_LOGIC;--計(jì)數(shù)器時(shí)鐘使能 RST_CNT : OUT STD_LOGIC;--計(jì)數(shù)器清零 Load : OUT STD_LOGIC);--輸出鎖存信號(hào) END COMPONENT;COMPONENT COUNTER PORT(FIN : IN STD_LOGIC;--時(shí)鐘信號(hào) CLR : IN STD_LOGIC;--清零信號(hào) ENABL : IN STD_LOGIC;--計(jì)數(shù)使能信號(hào)
DOUT : OUT STD_LOGIC_VECTOR(31 DOWNTO 0));--計(jì)數(shù)結(jié)果 END COMPONENT;COMPONENT REG32B PORT(LK : IN STD_LOGIC;DIN : IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0);LEDOUT : OUT STD_LOGIC_VECTOR(1 DOWNTO 0));END COMPONENT;SIGNAL TSTEN1 : STD_LOGIC;SIGNAL CLR_CNT1 : STD_LOGIC;SIGNAL Load1 : STD_LOGIC;SIGNAL DTO1 : STD_LOGIC_VECTOR(31 DOWNTO 0);SIGNAL CARRY_OUT1 : STD_LOGIC_VECTOR(6 DOWNTO 0);BEGIN U1 : FTCTRL PORT MAP(CLKK =>CLK1HZ,CNT_EN=>TSTEN1, RST_CNT =>CLR_CNT1,Load =>Load1);U2 : REG32B PORT MAP(LK => Load1, DIN=>DTO1, DOUT => DOUT,LEDOUT=>LED);
U3 : COUNTER PORT MAP(FIN => FSIN, CLR => CLR_CNT1, ENABL => TSTEN1, DOUT=>DTO1);END struc;
5.2 8位是進(jìn)制計(jì)數(shù)器
LIBRARY IEEE;--8位十進(jìn)制計(jì)數(shù)器 USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNTER IS PORT(FIN : IN STD_LOGIC;--時(shí)鐘信號(hào) CLR : IN STD_LOGIC;--清零信號(hào) ENABL : IN STD_LOGIC;--計(jì)數(shù)使能信號(hào)
DOUT : OUT STD_LOGIC_VECTOR(31 DOWNTO 0));--計(jì)數(shù)結(jié)果 END COUNTER;ARCHITECTURE behav OF COUNTER IS
COMPONENT COUNTER10 IS PORT(FIN : IN STD_LOGIC;--時(shí)鐘信號(hào) CLR : IN STD_LOGIC;--清零信號(hào) ENABL : IN STD_LOGIC;--計(jì)數(shù)使能信號(hào)
DOUT : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--計(jì)數(shù)結(jié)果 COUT : OUT STD_LOGIC);END COMPONENT;
SIGNAL CLK1,CLK2,CLK3,CLK4,CLK5,CLK6,CLK7: STD_LOGIC;BEGIN u1 : COUNTER10 PORT MAP(FIN=>FIN,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(3 DOWNTO 0),COUT=>CLK1);u2 : COUNTER10 PORT MAP(FIN=>CLK1,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(7 DOWNTO 4),COUT=>CLK2);u3 : COUNTER10 PORT MAP(FIN=>CLK2,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(11 DOWNTO 8),COUT=>CLK3);u4 : COUNTER10 PORT MAP(FIN=>CLK3,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(15 DOWNTO 12),COUT=>CLK4);u5 : COUNTER10 PORT MAP(FIN=>CLK4,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(19 DOWNTO 16),COUT=>CLK5);u6 : COUNTER10 PORT MAP(FIN=>CLK5,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(23 DOWNTO 20),COUT=>CLK6);u7 : COUNTER10 PORT MAP(FIN=>CLK6,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(27 DOWNTO 24),COUT=>CLK7);u8 : COUNTER10 PORT MAP(FIN=>CLK7,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(31 DOWNTO 28));
END ARCHITECTURE behav;
5.3 10進(jìn)制計(jì)數(shù)器
LIBRARY IEEE;--10位計(jì)數(shù)器 USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNTER10 IS PORT(FIN : IN STD_LOGIC;--時(shí)鐘信號(hào) CLR : IN STD_LOGIC;--清零信號(hào) ENABL : IN STD_LOGIC;--計(jì)數(shù)使能信號(hào)
DOUT : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--計(jì)數(shù)結(jié)果 COUT : OUT STD_LOGIC);END COUNTER10;ARCHITECTURE behav OF COUNTER10 IS SIGNAL CQI : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCESS(FIN, CLR, ENABL)BEGIN IF CLR = '1' THEN CQI <=(OTHERS=>'0');--清零 ELSIF FIN'EVENT AND FIN = '1' THEN IF ENABL = '1' THEN IF CQI<9 THEN CQI <= CQI + 1;ELSE CQI <=(OTHERS=>'0');END IF;END IF;END IF;
IF CQI=“1001” THEN COUT<='1';ELSE COUT<='0';END IF;END PROCESS;DOUT <= CQI;END behav;
5.4 測(cè)頻控制電路
LIBRARY IEEE;--測(cè)頻控制電路 USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY FTCTRL IS PORT(CLKK : IN STD_LOGIC;--1Hz CNT_EN : OUT STD_LOGIC;--計(jì)數(shù)器時(shí)鐘使能 RST_CNT : OUT STD_LOGIC;--計(jì)數(shù)器清零 Load : OUT STD_LOGIC);--輸出鎖存信號(hào) END FTCTRL;ARCHITECTURE behav OF FTCTRL IS SIGNAL Div2CLK : STD_LOGIC;BEGIN PROCESS(CLKK)BEGIN IF CLKK'EVENT AND CLKK = '1' THEN--1Hz時(shí)鐘2分頻 Div2CLK <= NOT Div2CLK;END IF;END PROCESS;PROCESS(CLKK, Div2CLK)BEGIN IF CLKK='0' AND Div2CLK='0' THEN RST_CNT<='1';--產(chǎn)生計(jì)數(shù)器清零信號(hào) ELSE RST_CNT <= '0';END IF;END PROCESS;Load <= NOT Div2CLK;CNT_EN <= Div2CLK;END behav;
5.5 32位鎖存器及其控制器
LIBRARY IEEE;--32位鎖存器及控制器 USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY REG32B IS PORT(LK : IN STD_LOGIC;DIN : IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0);LEDOUT : OUT STD_LOGIC_VECTOR(1 DOWNTO 0));END REG32B;ARCHITECTURE behav OF REG32B IS SIGNAL DD : STD_LOGIC_VECTOR(31 DOWNTO 0);BEGIN
PROCESS(LK, DIN)BEGIN IF LK'EVENT AND LK = '1' THEN DD<=DIN;END IF;if DD(31 DOWNTO 28)=“0000” then IF DD(27 DOWNTO 16)=“000000000000” THEN DOUT<=DD(15 DOWNTO 0);LEDOUT<=“01”;ELSIF DD(27 DOWNTO 16)/=“000000000000” THEN DOUT<=DD(27 DOWNTO 12);LEDOUT<=“11”;end if;else DOUT(15 DOWNTO 0)<=“***0”;LEDOUT<=“00”;END IF;END PROCESS;END behav;
6.引腳鎖定
7.綜合結(jié)果
7.1 RTL電路
7.2 測(cè)頻控制電路
7.3 8位十進(jìn)制計(jì)數(shù)器
7.3 32位鎖存器
8.實(shí)驗(yàn)結(jié)果
當(dāng)計(jì)數(shù)頻率為4Hz(范圍在0-9999Hz)的時(shí)候,此時(shí)LED燈有一個(gè)亮,計(jì)數(shù)為:0004;當(dāng)計(jì)數(shù)頻率為500KHz(范圍在10K-9999KHz)的時(shí)候,此時(shí)設(shè)定兩個(gè)LED燈都亮,計(jì)數(shù)為0500;當(dāng)計(jì)數(shù)頻率大于9999KHz的時(shí)候,設(shè)定此時(shí)兩個(gè)LED燈都處于熄滅狀態(tài),而計(jì)數(shù)則輸出一個(gè)‘E’值,表示范圍超出計(jì)數(shù)范圍。
7.實(shí)驗(yàn)總結(jié)
經(jīng)系統(tǒng)測(cè)試表明,本圖頻率計(jì)的各項(xiàng)功能正常,能實(shí)現(xiàn)對(duì)頻率的0~9999kHz頻率范圍的測(cè)量,并通過LED指示和數(shù)碼管顯示,操作簡(jiǎn)單,是理想頻率計(jì)解決方案。
經(jīng)過一個(gè)多星期的努力,本設(shè)計(jì)系統(tǒng)終于完成了。通過該課程設(shè)計(jì),掌握了編譯程序工作的基本過程及其各階段的基本任務(wù),熟悉了VHDL程序開發(fā)的總流程框圖,了解了編譯程序的生成過程及其相關(guān)的技術(shù),對(duì)課本上的知識(shí)也有了更深的理解。老師常說,課本上的知識(shí)是機(jī)械的,要學(xué)會(huì)去運(yùn)用,要舉一反三?,F(xiàn)在終于深刻的了解了這句話。經(jīng)過這次的課程設(shè)計(jì),發(fā)現(xiàn)書本上很深?yuàn)W的知識(shí)變的更為簡(jiǎn)單,同樣,對(duì)實(shí)驗(yàn)原理也了有更深的理解。知道和理解了該理論在計(jì)算機(jī)中是怎樣執(zhí)行的,對(duì)該理論在實(shí)踐中的應(yīng)用有深刻的理解。通過該課程設(shè)計(jì),把死板的課本知識(shí)變得生動(dòng)有趣,激發(fā)了學(xué)習(xí)的積極性。能夠把課堂上學(xué)的知識(shí)通過自己設(shè)計(jì)的程序表示出來,加深了對(duì)理論知識(shí)的理解。
課程設(shè)計(jì)中的電路和程序比較復(fù)雜,因此調(diào)試的過程更是考驗(yàn)我們耐性和細(xì)心。除了課堂外,課程設(shè)計(jì)是最能學(xué)到東西的,最考驗(yàn)人的。在做課程設(shè)計(jì)的這段時(shí)間,時(shí)刻都感到自己學(xué)的知識(shí)有多么的貧瘠。經(jīng)過這次課程設(shè)計(jì),讓我對(duì)VHDL語言和FPGA有了更深的認(rèn)識(shí),操作能力有了一定的提高。明白了,要想是寫出的代碼能運(yùn)行,需要耐心細(xì)心,毅力以及充沛的體力。只有經(jīng)過多次編輯,多次編譯,再多次運(yùn)行,才能編寫出更好的程序,有時(shí)候需要多次的更正才能達(dá)到所要的運(yùn)行結(jié)果。
參考文獻(xiàn)
[1] 潘松、黃繼業(yè),EDA技術(shù)應(yīng)用教程 VHDL篇[J].北京:高等教育出版社.2010
[2] 徐成劉彥李仁發(fā),一種全同步數(shù)字頻率測(cè)量方法的研究[J].北京:高等教育出版社.2004 [3] 李云鵬王思明,基于FPGA 的等精度頻率計(jì)設(shè)計(jì)[J].北京:高等教育出版社.2007
第四篇:VHDL八位數(shù)碼管頻率計(jì)課程設(shè)計(jì)
一、課程設(shè)計(jì)要求
設(shè)計(jì)一個(gè)8位數(shù)碼管顯示的頻率計(jì)(頻率分辨率為1Hz)。
二、總體結(jié)構(gòu)框圖
系統(tǒng)時(shí)鐘分頻及控制待測(cè)頻率計(jì)數(shù)數(shù)據(jù)鎖存動(dòng)態(tài)掃描數(shù)碼管段選數(shù)碼管位選數(shù)碼管顯示
圖1 總體結(jié)構(gòu)框圖
三、課程設(shè)計(jì)原理
在電子技術(shù)中,頻率是最基本的參數(shù)之一,并且與許多點(diǎn)參量的測(cè)量方案、測(cè)量結(jié)果都有十分密切的關(guān)系,因此,頻率的測(cè)量就顯得尤為重要。測(cè)量頻率的方法有很多種,其中電子計(jì)數(shù)器測(cè)量頻率具有精度高、使用方便、測(cè)量迅速,以及便于實(shí)現(xiàn)測(cè)量過程自動(dòng)化等優(yōu)點(diǎn),是頻率測(cè)量的重要手段之一。
數(shù)字式頻率計(jì)的測(cè)量原理有兩類:一是直接測(cè)頻法,即在一定的閘門時(shí)間內(nèi)測(cè)量被測(cè)信號(hào)的脈沖個(gè)數(shù);二是間接測(cè)頻法即周期法,如周期測(cè)頻法。直接測(cè)頻法適用于高頻信號(hào)的頻率測(cè)量,通常采用計(jì)數(shù)器、數(shù)據(jù)鎖存器及控制電路實(shí)現(xiàn),并通過改變計(jì)數(shù)閥門的時(shí)間長(zhǎng)短以達(dá)到不同的測(cè)量精度;間接測(cè)頻法適用于低頻信號(hào)的頻率測(cè)量。
本次課程設(shè)計(jì)中使用的是直接測(cè)頻法,即用計(jì)數(shù)器在計(jì)算機(jī)1s內(nèi)輸入信號(hào)周期的個(gè)數(shù),其測(cè)頻范圍為0Hz-99999999Hz。
四、器件的選擇
1、裝有QuartusII軟件的計(jì)算機(jī)一臺(tái)。
2、芯片:本實(shí)驗(yàn)板中為EP芯片。
3、EDA實(shí)驗(yàn)箱一個(gè)。
4、下載接口是數(shù)字芯片的下載接口(JTAG)主要用于FPGA芯片的數(shù)據(jù)下載。
5、時(shí)鐘源。
五、功能模塊和信號(hào)仿真圖以及源程序
(1)系統(tǒng)時(shí)鐘分頻及控制的功能模塊圖及其源程序
圖2 功能模塊圖
作用:將試驗(yàn)箱上的50MHz的晶振分頻,輸出CLOCK為數(shù)碼管提供1kHz的動(dòng)態(tài)掃描頻率。CNT_EN輸出為0.05s的信號(hào),對(duì)頻率計(jì)中的32位十進(jìn)制計(jì)數(shù)器CNT10的ENA使能端進(jìn)行同步控制,當(dāng)TSTEN高電平時(shí)允許計(jì)數(shù),低電平時(shí)停止計(jì)數(shù),并保持其所計(jì)的脈沖數(shù)。在停止計(jì)數(shù)期間,首先需要一個(gè)鎖存信號(hào)LOAD的上跳沿將計(jì)數(shù)器在前一秒的計(jì)數(shù)值鎖存進(jìn)鎖存器REG32B中,并由外部的十進(jìn)制7段數(shù)碼管顯示計(jì)數(shù)值。設(shè)置鎖存器的好處是數(shù)據(jù)顯示穩(wěn)定,不會(huì)由于周期性的清零信號(hào)而不斷閃爍。鎖存信號(hào)后,必須有一個(gè)清零信號(hào)RST_CNT對(duì)計(jì)數(shù)器進(jìn)行清零,為下一秒的計(jì)數(shù)操作做準(zhǔn)備。該模塊的信號(hào)仿真圖如下:
圖3 仿真波形圖
源程序如下:
--分頻
library ieee;use ieee.std_logic_1164.all;entity fdivwangzheng is port(clk0:in std_logic;--輸入系統(tǒng)時(shí)鐘
clk1:out std_logic;--輸出1hz時(shí)鐘信號(hào)
clk2:out std_logic);--輸出顯示掃描時(shí)鐘信號(hào)
end fdivwangzheng;architecture a of fdivwangzheng is begin
p1:process(clk0)variable cnt:integer range 0 to 49999999;--分頻系數(shù)為24999999 variable ff:std_logic;begin if clk0'event and clk0='1' then if cnt<49999999 then cnt:=cnt+1;else cnt:=0;ff:=not ff;--反向 end if;end if;clk1<=ff;end process p1;p2:process(clk0)
variable cnn:integer range 0 to 999;--分頻系數(shù)為499 variable dd:std_logic;begin if clk0'event and clk0='1' then if cnn<999 then cnn:=cnn+1;else cnn:=0;dd:=not dd;--反向 end if;end if;clk2<=dd;end process p2;end a;
--測(cè)頻控制器(testctl.vhd)LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TESTCTLwanzheng IS
PORT(CLKK : IN STD_LOGIC;--1Hz
CNT_EN,RST_CNT,LOAD : OUT STD_LOGIC);
END TESTCTLwanzheng;ARCHITECTURE behav OF TESTCTLwanzheng IS
SIGNAL DIV2CLK : STD_LOGIC;BEGIN
PROCESS(CLKK)
BEGIN
IF CLKK'EVENT AND CLKK = '1' THEN DIV2CLK <= NOT DIV2CLK;
END IF;
END PROCESS;
PROCESS(CLKK, DIV2CLK)
BEGIN
IF CLKK='0' AND Div2CLK='0' THEN RST_CNT <= '1';
ELSE RST_CNT <= '0';
END IF;
END PROCESS;
LOAD <= NOT DIV2CLK;
CNT_EN <= DIV2CLK;END behav;(2)十進(jìn)制計(jì)數(shù)器的功能模塊圖及其源程序
圖4 功能模塊圖
作用:當(dāng)使能端為高電平,清零端為低電平時(shí),實(shí)現(xiàn)十進(jìn)制計(jì)數(shù)功能。
第一個(gè)CNT10計(jì)數(shù)輸出CQ=9時(shí),下一秒時(shí)鐘上升沿到來時(shí),將產(chǎn)生一個(gè)CARRY_OUT信號(hào)作為下一個(gè)CNT10的時(shí)鐘信號(hào),同時(shí)CQ清零,依次遞推到8個(gè)CNT10。
當(dāng)清零端為低電平,使能端為低電平時(shí)停止計(jì)數(shù)。當(dāng)清零端為高電平時(shí),計(jì)數(shù)器清零。該模塊的信號(hào)仿真圖如下:
圖5 仿真波形圖
源程序如下:
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CNT10 IS PORT(CLK: IN STD_LOGIC;
CLR: IN STD_LOGIC;
ENA: IN STD_LOGIC;
CQ : OUT INTEGER RANGE 0 TO 9;
CARRY_OUT: OUT STD_LOGIC);END CNT10;ARCHITECTURE behav OF CNT10 IS SIGNAL CQI: INTEGER RANGE 0 TO 9;BEGIN PROCESS(CLR,CLK,ENA)BEGIN IF(CLR='1')THEN CQI<=0;ELSIF(CLK'EVENT AND CLK='1')THEN
IF(ENA='1')THEN
IF(CQI=9)THEN
CQI<=0;
CARRY_OUT<='1';
ELSE
CQI<=CQI+1;
CARRY_OUT<='0';
END IF;
END IF;END IF;END PROCESS;CQ<=CQI;END behav;
(3)32位鎖存器的功能模塊圖及其源程序
圖6 功能模塊圖
實(shí)現(xiàn)方式:LOAD信號(hào)上升沿到來時(shí)將對(duì)輸入到內(nèi)部的CNT10計(jì)數(shù)信號(hào)進(jìn)行鎖存。作用:鎖存信號(hào),并將結(jié)果輸出給SELTIME。該模塊的信號(hào)仿真圖如下:
圖7 仿真波形圖
源程序如下:
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG32B IS
PORT(LOAD: IN STD_LOGIC;DIN: IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT: OUT STD_LOGIC_VECTOR(31 DOWNTO 0));END ENTITY REG32B;ARCHITECTURE behav OF REG32B IS BEGIN
PROCESS(LOAD,DIN)IS BEGIN
IF LOAD'EVENT AND LOAD='1' THEN DOUT<=DIN;
END IF;END PROCESS;END ARCHITECTURE behav;
(4)數(shù)碼管掃描的功能模塊圖及其源程序
圖8 功能模塊圖
作用:鎖存信號(hào)輸出DIN[31..0],然后由SELTIME進(jìn)行掃描輸出,當(dāng)SEL為”000”時(shí)選通第一個(gè)CNT10,輸出到LED7進(jìn)行譯碼輸出。依次類推。該模塊的信號(hào)仿真圖如下:
圖9 仿真波形圖
源程序如下:
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SELTIME IS PORT(CLK : IN STD_LOGIC;
DIN : IN STD_LOGIC_VECTOR(31 DOWNTO 0);
DAOUT: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
SEL : OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END SELTIME;ARCHITECTURE behav OF SELTIME IS SIGNAL SEC : STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN PROCESS(CLK)BEGIN
IF(CLK'EVENT AND CLK='1')THEN
IF(SEC=“111”)THEN
SEC<=“000”;
ELSE
SEC<=SEC+1;
END IF;
END IF;END PROCESS;
PROCESS(SEC,DIN(31 DOWNTO 0))BEGIN CASE SEC IS WHEN “000”=>DAOUT<=DIN(3 DOWNTO 0);WHEN “001”=>DAOUT<=DIN(7 DOWNTO 4);WHEN “010”=>DAOUT<=DIN(11 DOWNTO 8);WHEN “011”=>DAOUT<=DIN(15 DOWNTO 12);WHEN “100”=>DAOUT<=DIN(19 DOWNTO 16);WHEN “101”=>DAOUT<=DIN(23 DOWNTO 20);WHEN “110”=>DAOUT<=DIN(27 DOWNTO 24);WHEN “111”=>DAOUT<=DIN(31 DOWNTO 28);WHEN OTHERS=>NULL;END CASE;END PROCESS;SEL<=SEC;END behav;
(5)七段數(shù)碼管譯碼顯示的功能模塊圖及其源程序
圖10 功能模塊圖
作用:將實(shí)驗(yàn)結(jié)果使用數(shù)碼管直觀的顯示出來。該模塊的信號(hào)仿真圖如下:
圖11 仿真波形圖
源程序如下:
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY LED7 IS PORT(DIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END LED7;ARCHITECTURE behav OF LED7 IS--SIGNAL LED7:STD_LOGIC_VECTOR(6 DOWNTO 0);BEGIN PROCESS(DIN)BEGIN CASE DIN IS WHEN “0000”=>DOUT<=“0111111”;WHEN “0001”=>DOUT<=“0000110”;WHEN “0010”=>DOUT<=“1011011”;WHEN “0011”=>DOUT<=“1001111”;WHEN “0100”=>DOUT<=“1100110”;WHEN “0101”=>DOUT<=“1101101”;WHEN “0110”=>DOUT<=“1111101”;WHEN “0111”=>DOUT<=“0000111”;WHEN “1000”=>DOUT<=“1111111”;WHEN “1001”=>DOUT<=“1101111”;WHEN “1010”=>DOUT<=“1110111”;WHEN “1011”=>DOUT<=“1111100”;WHEN “1100”=>DOUT<=“0111001”;WHEN “1101”=>DOUT<=“1011110”;WHEN “1110”=>DOUT<=“1111001”;WHEN “1111”=>DOUT<=“1110001”;WHEN OTHERS=>NULL;END CASE;END PROCESS;END ARCHITECTURE behav;(6)3-8譯碼器的功能模塊圖及其源程序
圖12 功能模塊圖
作用:利用3-8譯碼器將數(shù)碼管的位選信號(hào)選通。該模塊的信號(hào)仿真圖如下:
圖13 仿真波形圖
源程序如下:
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LS138 IS
PORT(Q: IN STD_LOGIC_VECTOR(2 DOWNTO 0);
D: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
dp:OUT STD_LOGIC);END LS138;ARCHITECTURE behav OF LS138 IS BEGIN
WITH Q SELECT
D<=“11111110” WHEN “000”, “11111101” WHEN “001”, “11111011” WHEN “010”, “11110111” WHEN “011”, “11101111” WHEN “100”, “11011111” WHEN “101”, “10111111” WHEN “110”, “01111111” wHEN “111”, “11111111” WHEN OTHERS;WITH Q SELECT
dp<='1' WHEN “001”, '0' WHEN OTHERS;END behav;
六、頂層模塊圖
圖14 總體設(shè)計(jì)頂層模塊圖
其中8個(gè)十進(jìn)制計(jì)數(shù)器模塊JSQ的底層模塊圖如圖15所示:
圖15 計(jì)數(shù)器模塊原理圖
本次課程設(shè)計(jì)的時(shí)鐘信號(hào)由試驗(yàn)箱上面的5MHz的晶振提供,經(jīng)過系統(tǒng)時(shí)鐘和控制模塊后分別產(chǎn)生0.05Hz和10kHz的脈沖信號(hào)0.05Hz的脈沖信號(hào)十進(jìn)制計(jì)數(shù)器的使能信號(hào),使計(jì)數(shù)器統(tǒng)計(jì)出待測(cè)信號(hào)在1s脈寬之間的脈沖數(shù)目。再由計(jì)數(shù)模塊將測(cè)得的信號(hào)傳送給數(shù)碼管顯示部分,通過譯碼模塊產(chǎn)生可以在數(shù)碼管上顯示的BCD碼。而1kHz是作為數(shù)碼管動(dòng)態(tài)掃描的頻率,由于人的視覺暫留現(xiàn)象,頻率較高時(shí),數(shù)碼管看起來就是連續(xù)發(fā)光。本設(shè)計(jì)中使個(gè)位顯示為數(shù)碼管的小數(shù)點(diǎn)后面一位,由此實(shí)現(xiàn)了頻率分辨率為1Hz的頻率計(jì)設(shè)計(jì)。
結(jié)論
EDA技術(shù)是電子設(shè)計(jì)的發(fā)展趨勢(shì),利用EDA工具可以代替設(shè)計(jì)者完成電子系統(tǒng)設(shè)計(jì)中的大部分工作。EDA工具從數(shù)字系統(tǒng)設(shè)計(jì)的單一領(lǐng)域,發(fā)展到今天,應(yīng)用范圍己涉及模擬、微波等多個(gè)領(lǐng)域,可以實(shí)現(xiàn)各個(gè)領(lǐng)域電子系統(tǒng)設(shè)計(jì)的測(cè)試、設(shè)計(jì)仿真和布局布線等,這些都是我在這次課設(shè)中深刻體會(huì)到的。經(jīng)過這次課程設(shè)計(jì),讓我真正認(rèn)識(shí)了EDA這門學(xué)科,了解到這種方式下的設(shè)計(jì)方案,硬件電路簡(jiǎn)潔,集成度高,體現(xiàn)了當(dāng)今社會(huì)所需的先進(jìn)技術(shù),日后必定在有著廣闊的發(fā)展空間。
通過這次對(duì)EDA課程設(shè)計(jì)的進(jìn)一步操作,能更好的在Quartus II上進(jìn)行VHDL程序的編譯及各個(gè)模塊的仿真,雖然在實(shí)際操作過程中由于粗心造成了程序的缺失和錯(cuò)誤,但都在老師和同學(xué)的幫助下一一解決了。很好地鞏固了我們學(xué)過的專業(yè)知識(shí),使我對(duì)數(shù)字系統(tǒng)結(jié)構(gòu)也有了更進(jìn)一步的了解和認(rèn)識(shí),同時(shí)對(duì)數(shù)據(jù)庫軟件EDA技術(shù)、VHDL等系列知識(shí)都有了一定的了解。使用EDA技術(shù)開發(fā)頁面的能力也有了很大提高,也使我們把理論與實(shí)踐從真正意義上相結(jié)合了起來;考驗(yàn)了我們借助互聯(lián)網(wǎng)絡(luò)搜集、查閱相關(guān)文獻(xiàn)資料,和組織材料的綜合能力。
在這次課程設(shè)計(jì)中,雖然應(yīng)用的都是在書本上學(xué)過的知識(shí),但是只有應(yīng)用到實(shí)際中才算真正的學(xué)懂了這些知識(shí)。本次數(shù)字頻率計(jì)的涉及到了VHDL語言、Quartus II軟件,EDA技術(shù)等。涉及了微機(jī)原理和EDA所學(xué)的大部分內(nèi)容。通過這次課程設(shè)計(jì)實(shí)踐鞏固了學(xué)過的知識(shí)并能夠較好的利用。課程設(shè)計(jì)實(shí)踐不單是將所學(xué)的知識(shí)應(yīng)用于實(shí)際,在設(shè)計(jì)的過程中,只擁有理論知識(shí)是不夠的。邏輯思維、電路設(shè)計(jì)的步驟和方法、考慮問題的思路和角度等也是很重要,需要我們著重注意鍛煉的能力。在這次設(shè)計(jì)中還發(fā)現(xiàn)理論與實(shí)際常常常存在很大差距,為了使電路正常工作,必須靈活運(yùn)用原理找出解決方法。
在課題設(shè)計(jì)中,通過使用Quartus II這個(gè)完全集成化、易學(xué)易用的可編程邏輯設(shè)計(jì)環(huán)境,利用VHDL語言設(shè)計(jì)完成八位十進(jìn)制數(shù)字頻率計(jì),能夠較好的測(cè)定所給頻率,并且具有自動(dòng)清零和自動(dòng)測(cè)試的功能,基本符合此次課程設(shè)計(jì)給出的要求。
第五篇:頻率計(jì)設(shè)計(jì)實(shí)訓(xùn)報(bào)告范文
數(shù)字電路實(shí)訓(xùn)報(bào)告
題目:數(shù)字頻率計(jì) 專業(yè):電子信息工程 班級(jí): 姓名: 學(xué)號(hào):
摘要
系統(tǒng)功能介紹:
數(shù)字頻率計(jì)是一種基本的測(cè)量?jī)x器,是用量最大、品種很多的產(chǎn)品,是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測(cè)量?jī)x器。它是一種用十進(jìn)制數(shù)字顯示被測(cè)信號(hào)頻率的數(shù)字測(cè)量?jī)x器。它的基本功能是測(cè)量正弦信號(hào),方波信號(hào)以及其他各種單位時(shí)間內(nèi)變化的物理量。
本次設(shè)計(jì)選擇以集成芯片作為核心器件,利用數(shù)字電子技術(shù)基礎(chǔ)的相關(guān)知識(shí),設(shè)計(jì)了一個(gè)簡(jiǎn)易四位數(shù)字頻率計(jì),以分頻器、觸發(fā)器和計(jì)數(shù)器為核心,由信號(hào)輸入、計(jì)數(shù)、數(shù)據(jù)處理和數(shù)據(jù)顯示等功能模塊組成。它是用數(shù)字顯示被測(cè)信號(hào)頻率的儀器,被測(cè)信號(hào)可以是正弦波,方波或其它周期性變化的信號(hào)。
目錄
一.?dāng)?shù)字頻率計(jì)的基本原理.................................................................................4 二.設(shè)計(jì)思路.........................................................................................................4
2.1秒信號(hào)........................................................................................................4 2.2分頻器........................................................................................................4 2.3計(jì)數(shù)器........................................................................................................4 2.4鎖存器........................................................................................................4 2.5顯示譯碼器與數(shù)碼管................................................................................4 三.元件.................................................................................................................5
3.1 CD4060(分頻器芯片)...............................................................................5 3.2 CD4013(D觸發(fā)器芯片)......................................................................5 3.3 CD4017(脈沖分配器)..........................................................................5 3.4 CD4029(計(jì)數(shù)器芯片)..........................................................................5 3.5 CD4511(譯碼芯片)..............................................................................5 3.6數(shù)碼管........................................................................................................5 3.7 7404(與非門芯片),兩個(gè)電容(20~30pF),電阻(1M)。................5 四.仿真.................................................................................................................5 五.電路圖.............................................................................................................6 六.電路的調(diào)試過程.............................................................................................6 七.心得體會(huì).........................................................................................................7 八.參考文獻(xiàn).........................................................................................................8
數(shù)字頻率計(jì)的設(shè)計(jì)
一.?dāng)?shù)字頻率計(jì)的基本原理
二.設(shè)計(jì)思路
根據(jù)上面的分析,數(shù)字頻率計(jì)的基本電路由以下五個(gè)部分組成。
2.1
秒信號(hào) 2.2
分頻器 2.3
計(jì)數(shù)器 2.4
鎖存器 2.5
顯示模塊
三.元件
3.1
CD4060BE(分頻器芯片)3.2
SN74HC74N(D觸發(fā)器芯片)3.3
CD4017BE(脈沖分配器)3.4
CD4029BE(計(jì)數(shù)器芯片)3.5
CD4511BE(譯碼芯片)3.6
LG5011AH(數(shù)碼管3個(gè))
3.7
SN74HC04N(與非門芯片),兩個(gè)電容(20~30pF),電阻(1M)。
四.仿真
五.電路圖
六.電路的調(diào)試過程
電路板焊接完成之后,就需要進(jìn)行調(diào)試過程了,剛開始有的同學(xué)焊接完成之后,讓老師進(jìn)行查看,結(jié)果不顯示,或者顯示不成功,老師就給我們講解了如何進(jìn)行調(diào)試電路,要學(xué)會(huì)自己查找問題,自己檢測(cè)電路時(shí)哪里的問題。首先就是不亮的問題,就是沒有焊接好或者某個(gè)地方焊接短路的,這就需要自己一根一根一部分一部分進(jìn)行檢查檢測(cè)了。接著是數(shù)碼管全亮了,并沒有計(jì)數(shù),老師告訴我們需要把三個(gè)4511的5腳三個(gè)接到4029的1腳上,不再接地了,如果不出什么意外而且其他電路部分沒有問題,這步完成后,電路應(yīng)該就正常工作了。最后我的電路還遇到的問題是,頻率計(jì)計(jì)數(shù)了,但是就是不穩(wěn)定,于是老師經(jīng)過思考后,讓我們分別在三個(gè)數(shù)碼管上串聯(lián)一個(gè)電阻,經(jīng)過這步后,我的電路基本調(diào)試完成,基本沒有什么大的問題了。以上這些是我的電路進(jìn)行調(diào)試的過程中遇到的問題,可能還有其他調(diào)試過程中遇到的問題,這需要我們耐心調(diào)試,不懂的要多問老師同學(xué),這樣電路才能調(diào)試成功。
七.心得體會(huì)
本次實(shí)訓(xùn)讓我體味到設(shè)計(jì)電路、連接電路、調(diào)測(cè)電路過程中的苦與甜。設(shè)計(jì)是我們將來必需的技能,這次實(shí)訓(xùn)恰恰給我們提供了一個(gè)應(yīng)用自己所學(xué)知識(shí)的機(jī)會(huì),從查找資料到對(duì)電路的設(shè)計(jì)以及對(duì)電路的調(diào)試再到最后電路的成型,都對(duì)我所學(xué)的知識(shí)進(jìn)行了檢驗(yàn)。
首先第一周是“嘮嗑”,老師給我們分了組,然我們?cè)诮M內(nèi)討論,各自發(fā)揮給子的優(yōu)勢(shì),分別能勝任什么工作。每個(gè)人的職責(zé)分配完畢后,接著就是“老板”招標(biāo),各組競(jìng)標(biāo),每組根據(jù)老師提出的要求進(jìn)行思考和組織語言,然后說服老師。然后大家就開動(dòng)大腦,整理思路,組織語言,最后向老師匯報(bào)的時(shí)候,雖然大家都基本沒說到點(diǎn)子上,但是也說明大家還是動(dòng)腦筋了。第一周的實(shí)訓(xùn)看似簡(jiǎn)單,但是老師在鍛煉我們的動(dòng)腦能力和看問題要看本質(zhì)以及最后鍛煉我們的語言表達(dá)能力,收獲很多。
第二周是電路的設(shè)計(jì),在電腦上用仿真軟件設(shè)計(jì)電路,畢竟我們學(xué)得不是那么透徹,基本上沒法把書本上的知識(shí)和實(shí)力聯(lián)系起來,大家絞盡腦汁,也不知道如何下手,該從哪里下手,最后在老師的幫助下,我們完成了仿真電路的設(shè)計(jì)。在這個(gè)過程中,老師耐心的給我們講解每個(gè)元件的功能和用途,該如何連接到電路中。這周的實(shí)訓(xùn)中充分暴露了我們理論和實(shí)際聯(lián)系的太少太少了,還有動(dòng)手上機(jī)操作的能力不強(qiáng),以后還有待提高。
第三周第四周就是硬件的電路焊接設(shè)計(jì)了。老師給我們發(fā)了所有的原件和電路板,我們把之前的仿真電路打印出來,然后就比葫蘆畫瓢的焊接,但是后來才發(fā)現(xiàn),不認(rèn)真弄清電路的構(gòu)造只知道比葫蘆畫瓢的焊接,在后面的時(shí)候很容易焊接錯(cuò),所以首先得弄清電路構(gòu)造。在電路板上布線設(shè)計(jì)硬件的連接方式,這一步還是比較輕松,主要是布的線要盡可能的不交叉。之后就開始對(duì)著圖焊板子,開始把元器件焊上去還是比較簡(jiǎn)單好看的??墒蔷o接著進(jìn)入焊線階段就難住我了,線拉不直,焊在板子上就很丑;另一方面,在焊的過程中就會(huì)發(fā)現(xiàn)有那么幾根線是按照布線圖來焊是實(shí)現(xiàn)不了的,于是,中途又會(huì)重新改布線圖。硬件部分我花了接近兩周的課余時(shí)間,反反復(fù)復(fù)的修改,焊接,終于初步完成了。最后一周是板子焊好后的進(jìn)硬件調(diào)試階段以及總結(jié)大會(huì)。硬件調(diào)試時(shí),發(fā)現(xiàn)了線路的一些錯(cuò)誤接法和元器件位置的錯(cuò)接等等,這樣又花了很多時(shí)間調(diào)試修改,硬件就基本上算是完成了。這周感悟也很多,不光要焊接成功電路,還要學(xué)會(huì)自己查找問題,解決問題,這才是真正地學(xué)到了知識(shí)。
通過五周的頻率計(jì)設(shè)計(jì),真的是感觸頗多。這五周以來我們每周實(shí)訓(xùn)課都積極參與其中,完成老師布置的任務(wù)。在課余時(shí)間去實(shí)驗(yàn)室焊接電路。每天和大家在一起焊板子,一起討論問題,一起互相幫助的畫面還歷歷在目。這其中有歡聲笑語,也有苦有累。還有很多不足的地方,需要自己改進(jìn),還有一些缺點(diǎn)也要改掉??傊?,這次實(shí)訓(xùn),收獲很多。希望自己以后還能更努力。
八.參考文獻(xiàn)
1.CD4511
CD4511 是一個(gè)用于驅(qū)動(dòng)共陰極 LED(數(shù)碼管)顯示器的 BCD 碼—七段碼譯
碼器,特點(diǎn):具有 BCD 轉(zhuǎn)換、消隱和鎖存控制、七段譯碼及驅(qū)動(dòng)功能的 CMOS 電路能提供較大的拉電流??芍苯域?qū)動(dòng) LED 顯示器。引腳圖如圖所示。
其功能介紹如下:
BI:4 腳是消隱輸入控制端,當(dāng) BI=0 時(shí),不管其它輸入端狀態(tài)如何,七 段數(shù)碼管均處于熄滅(消隱)狀態(tài),不顯示數(shù)字。
LT:3 腳是測(cè)試輸入端,當(dāng) BI=1,LT=0 時(shí),譯碼輸出全為 1,不管輸入
DCBA 狀態(tài)如何,七段均發(fā)亮,顯示“8”。它主要用來檢測(cè)數(shù)碼管是否損壞。LE:鎖定控制端,當(dāng) LE=0 時(shí),允許譯碼輸出。LE=1 時(shí)譯碼器是鎖定 保持狀態(tài),譯碼器輸出被保持在 LE=0 時(shí)的數(shù)值。A1、A2、A3、A4、為 8421BCD 碼輸入端。
a、b、c、d、e、f、g:為譯碼輸出端,輸出為高電平1 有效。
2.CD4029
CD4029 是一組可預(yù)設(shè)二進(jìn)制/BCD、上數(shù)/下數(shù)計(jì)數(shù)器,其引腳圖如圖,功能有:
(1)4 位數(shù)據(jù)預(yù)設(shè)
(2)4 位二進(jìn)制計(jì)數(shù)或BCD 計(jì)數(shù)(3)上數(shù)計(jì)數(shù)或下數(shù)計(jì)數(shù)
當(dāng)其預(yù)設(shè)控制端PE 為1 時(shí),不論其它輸入狀態(tài)為何,則QDQCQBQA=DCBA,其預(yù)設(shè)工作與Clock 無關(guān),屬異步預(yù)設(shè);當(dāng)PE=0 時(shí),則正常計(jì)數(shù)。CD4029 的計(jì)數(shù)選擇有4 種,分別由U/D(上數(shù)/下數(shù))及B/D(二進(jìn)制/十進(jìn)制)兩腳來控制。
3.74LS74
74LS74
TTL 帶置位復(fù)位正觸發(fā)雙 D 觸發(fā)器
Vcc 2CR 2D 2Ck 2St 2Q-2Q ┌┴─┴─┴─┴─┴─┴─┴┐ 雙 D 觸發(fā)器 74LS74 │14 13 12 11 10 9 8 │)│
│ 1 2 3 4 5 6 7│
└┬─┬─┬─┬─┬─┬─┬┘
工作原理: SD 和RD 接至基本RS 觸發(fā)器的輸入端,它們分別是預(yù)置和清零端,低電平有效。當(dāng)SD=0且RD=1時(shí),不論輸入端D為何種狀態(tài),都會(huì)使Q=1,Q=0,即觸發(fā)器置1;當(dāng)SD=1且RD=0時(shí),觸發(fā)器的狀態(tài)為0,SD和RD通常又稱為直接置1和置0端。我們?cè)O(shè)它們均已加入了高電平,不影響電路的工作。工作過程如下:
1.CP=0時(shí),與非門G3和G4封鎖,其輸出Q3=Q4=1,觸發(fā)器的狀態(tài)不變。同時(shí),由于Q3至Q5和Q4至Q6的反饋信號(hào)將這兩個(gè)門打開,因此可接收輸入信號(hào)D,Q5=D,Q6=Q5=D。2.當(dāng)CP由0變1時(shí)觸發(fā)器翻轉(zhuǎn)。這時(shí)G3和G4打開,它們的輸入Q3和Q4的狀態(tài)由G5和G6的輸出狀態(tài)決定。Q3=Q5=D,Q4=Q6=D。由基本RS觸發(fā)器的邏輯功能可知,Q=D。3.觸發(fā)器翻轉(zhuǎn)后,在CP=1時(shí)輸入信號(hào)被封鎖。這是因?yàn)镚3和G4打開后,它們的輸出Q3和Q4的狀態(tài)是互補(bǔ)的,即必定有一個(gè)是0,若Q3為0,則經(jīng)G3輸出至G5輸入的反饋線將G5封鎖,即封鎖了D通往基本RS 觸發(fā)器的路徑;該反饋線起到了使觸發(fā)器維持在0狀態(tài)和阻止觸發(fā)器變?yōu)?狀態(tài)的作用,故該反饋線稱為置0維持線,置1阻塞線。Q4為0時(shí),將G3和G6封鎖,D端通往基本RS觸發(fā)器的路徑也被封鎖。Q4輸出端至G6反饋線起到使觸發(fā)器維持在1狀態(tài)的作用,稱作置1維持線;Q4輸出至G3輸入的反饋線起到阻止觸發(fā)器置0的作用,稱為置0阻塞線。
4.74LS04 74LS04 TTL 六反相器 六個(gè)與非門 集成到集成塊里
5.CD4017
CD4017 是5 位Johnson 計(jì)數(shù)器,具有10 個(gè)譯碼輸出端,CP、CR、INH 輸入端。時(shí)鐘輸入端的斯密特觸發(fā)器具有脈沖整形功能,對(duì)輸入時(shí)鐘脈沖上升和下降時(shí)間無限制。INH 為低電平時(shí),計(jì)數(shù)器在時(shí)鐘上升沿計(jì)數(shù);反之,計(jì)數(shù)功能無效。CR 為高電平時(shí),計(jì)數(shù)器清零。Johnson 計(jì)數(shù)器,提供了快速操作、2 輸入譯碼選通和無毛刺譯碼輸出。防鎖選通,保證了正確的計(jì)數(shù)順序。譯碼輸出一般為低電平,只有在對(duì)應(yīng)時(shí)鐘周期內(nèi)保持高電平。在每10 個(gè)時(shí)鐘輸入周期CO 信號(hào)完成一次進(jìn)位,并用作多級(jí)計(jì)數(shù)鏈的下級(jí)脈動(dòng)時(shí)鐘。引腳圖如圖所示:
引出端功能符號(hào) CO:進(jìn)位脈沖輸淵 CP:時(shí)鐘輸入端 CR:清除端 INH:禁止端
Q0-Q9 計(jì)數(shù)脈沖輸出端 VDD:正電源
VSS:地CD4017組成的防抖動(dòng)觸摸開關(guān)電路
5.CD4060 CD4060由一振蕩器和14級(jí)二進(jìn)制串行計(jì)數(shù)器位組成,振蕩器的結(jié)構(gòu)可以是RC或晶振電路,CR為高電平時(shí),計(jì)數(shù)器清零且振蕩器使用無效。所有的計(jì)數(shù)器位均為主從觸發(fā)器。在CP1(和CP0)的下降沿計(jì)數(shù)器以二進(jìn)制進(jìn)行計(jì)數(shù)。在時(shí)鐘脈沖線上使用斯密特觸發(fā)器對(duì)時(shí)鐘上升和下降時(shí)間無限制。CD4060引腳圖: