版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
..XX科技大學(xué)課程設(shè)計說明書課程名稱_現(xiàn)代電子系統(tǒng)課程設(shè)計__題目_簡易數(shù)字頻率計設(shè)計_學(xué)院__電子信息工程學(xué)院____班級__學(xué)生姓名_______指導(dǎo)教師______日期___20XX12月16日__課程設(shè)計任務(wù)書〔指導(dǎo)教師填寫課程設(shè)計名稱現(xiàn)代電子系統(tǒng)課程設(shè)計學(xué)生姓名專業(yè)班級設(shè)計題目簡易數(shù)字頻率計設(shè)計課程設(shè)計目的掌握高速AD的使用方法;掌握頻率計的工作原理;掌握GW48_SOPC實(shí)驗(yàn)箱的使用方法;了解基于FPGA的電子系統(tǒng)的設(shè)計方法。設(shè)計內(nèi)容、技術(shù)條件和要求設(shè)計一個具有如下功能的簡易頻率計?!?基本要求:a.被測信號的頻率范圍為1~20kHz,用4位數(shù)碼管顯示數(shù)據(jù)。b.測量結(jié)果直接用十進(jìn)制數(shù)值顯示。c.被測信號可以是正弦波、三角波、方波,幅值1~3V不等。d.具有超量程警告〔可以用LED燈顯示,也可以用蜂鳴器報警。e.當(dāng)測量脈沖信號時,能顯示其占空比〔精度誤差不大于1%。〔2發(fā)揮部分a.修改設(shè)計,實(shí)現(xiàn)自動切換量程。b.構(gòu)思方案,使整形時,以實(shí)現(xiàn)擴(kuò)寬被測信號的幅值范圍。時間進(jìn)度安排布置課題和講解:1天查閱資料、設(shè)計:4天實(shí)驗(yàn):3天撰寫報告:2天主要參考文獻(xiàn)何小艇《電子系統(tǒng)設(shè)計》XX大學(xué)出版社2008.1潘松黃繼業(yè)《EDA技術(shù)實(shí)用教程》科學(xué)出版社2006.10指導(dǎo)教師簽字:20XX11月28日..摘要頻率計是數(shù)字電路中的一個典型應(yīng)用,是計算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器,頻率測量在科技研究和實(shí)際應(yīng)用中的作用日益重要。數(shù)字頻率計是數(shù)字電路中的一個典型應(yīng)用,實(shí)際的硬件設(shè)計用到的器件較多,連線比較復(fù)雜,而且會產(chǎn)生比較大的延時,造成測量誤差、可靠性差。隨著復(fù)雜可編程邏輯器件〔CPLD的廣泛應(yīng)用,以EDA工具作為開發(fā)手段,運(yùn)用VHDL語言。將使整個系統(tǒng)大大簡化。提高整體的性能和可靠性。在本文中,我們設(shè)計了一個簡易數(shù)字頻率計。主要分為如下幾個部分:A/D模塊: 用VHDL語言寫一個狀態(tài)機(jī),控制ADC0809芯片正常工作,使輸入的被測模擬信號經(jīng)過ADC0809芯片處理,轉(zhuǎn)化為數(shù)字信號。比較整形模塊:將A/D轉(zhuǎn)換出來的數(shù)字信號通過比較,高于閾值的為1低于閾值的為0從而將八位數(shù)字信號轉(zhuǎn)換為脈沖便于頻率計算。頻率測量模塊:常用的頻率測量方法有很多。有計數(shù)法和計時法等,具體的方案論證將在下面進(jìn)行。占空比計算模塊:計算脈沖波占空比,具體的方案論證將在下面進(jìn)行。選擇顯示模塊:設(shè)置一個二選一電路,通過一個按鍵控制四位數(shù)碼管顯示的內(nèi)容是頻率還是占空比。關(guān)鍵詞:數(shù)字頻率計、模塊、占空比、數(shù)字信號、測量、閾值目錄任務(wù)解析……………….……3總體方案與比較論證…………4方案選擇………6頻率測量方法方案論證….………………..…………….……6系統(tǒng)結(jié)構(gòu)….……...…....……...…………….…………….……9A/D模塊設(shè)計……………….……..…………10比較整形模塊設(shè)計……….…..12頻率測量模塊設(shè)計…………..13占空比計算模塊設(shè)計………..14選擇顯示模塊設(shè)計………......15硬件驗(yàn)證……...……………...16誤差分析…………………...………………...17心得體會…………..….……...18參考文獻(xiàn)……………...………19任務(wù)解析本次課程設(shè)計的主要任務(wù)就是利用VHDL語言設(shè)計一個簡易數(shù)字頻率計。頻率計主要用于測量正弦波、矩形波、三角波和尖脈沖等周期信號的頻率值及脈沖的占空比。其擴(kuò)展功能可以實(shí)現(xiàn)自動切換量程,使整形時,以實(shí)現(xiàn)擴(kuò)寬被測信號的幅值范圍。數(shù)字頻率計的整體系統(tǒng)原理框圖如圖1,被測信號為外部輸入信號,送入測量電路經(jīng)過數(shù)字整形、測量計算、數(shù)據(jù)鎖存和送顯。就完成了頻率計的基本功能,控制選擇用來實(shí)現(xiàn)頻率的計算頻率和計算占空比功能的選擇。圖1根據(jù)簡易頻率計設(shè)計的任務(wù)書可知這次的頻率計的性能指標(biāo)如下:一、信號波形:正弦波、三角波和矩形波。二、率范圍分二檔:Hz檔和kHz檔a.被測信號的頻率范圍為1~20kHz,用4位數(shù)碼管顯示數(shù)據(jù)。b.測量結(jié)果直接用十進(jìn)制數(shù)值顯示。c.被測信號可以是正弦波、三角波、方波,幅值1~3V不等。d.具有超量程警告〔可以用LED燈顯示,也可以用蜂鳴器報警。e.當(dāng)測量脈沖信號時,能顯示其占空比〔精度誤差不大于1%。三、發(fā)揮部分a.修改設(shè)計,實(shí)現(xiàn)自動切換量程。b.構(gòu)思方案,使整形時,以實(shí)現(xiàn)擴(kuò)寬被測信號的幅值范圍總體方案與比較論證數(shù)字頻率計在具體是現(xiàn)實(shí)時,可以采用單片機(jī)或者FPGA來實(shí)現(xiàn),具體有如下方案:方案一:采用FPGA與單片機(jī)為核心來實(shí)現(xiàn),可以利用FPGA來實(shí)現(xiàn)在單片機(jī)系統(tǒng)中的計數(shù)部分。這樣可以節(jié)省單片機(jī)的系統(tǒng)資源,考慮到在下面的相移網(wǎng)絡(luò)設(shè)計中也需要利用單片機(jī)和FPGA,但單片機(jī)的系統(tǒng)資源相對有限,因此我們建議在這里單片機(jī)主要用于控制,而FPGA則可以用來進(jìn)行計數(shù)之類的事情。簡單原理圖如圖2圖2方案二:分離元件設(shè)計方案:本方案利用大量數(shù)字芯片,通過各種邏輯關(guān)系構(gòu)成,但由于芯片無編程性,實(shí)現(xiàn)難度較大,只能完成部分功能,同時電路復(fù)雜。在實(shí)際應(yīng)用中存在很多問題。方案三:全部利用FPGA來實(shí)現(xiàn),即利用FPGA產(chǎn)生時鐘。由于FPGA的工作頻率比單片機(jī)的高很多,因此可以考慮直接利用FPGA產(chǎn)生信號的高頻參考頻率,FPGA處理速度快,得到的頻率,占空比相對穩(wěn)定,精度高,容易實(shí)現(xiàn)高頻測量。缺點(diǎn)是硬件較為復(fù)雜,實(shí)現(xiàn)控制相對復(fù)雜。簡單原理圖如圖3圖3方案選擇:方案一雖然可行,但是由于在實(shí)驗(yàn)室現(xiàn)有的FPGA實(shí)驗(yàn)板上無法將單片機(jī)運(yùn)用在系統(tǒng)中,因此不能用。方案二在理論上和現(xiàn)有的硬件基礎(chǔ)上都能實(shí)現(xiàn),但是復(fù)雜度高因此也不能用。方案三不僅符合此次課程設(shè)計的要求,且在實(shí)驗(yàn)室的條件下均能實(shí)現(xiàn),所以我們選擇方案三作為本次課程設(shè)計的方案。頻率測量方法方案論證數(shù)字頻率測量的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時鐘,對比測量其他信號的頻率。通常情況下有兩種測量方法::一種方法是計數(shù)法,就是在一定閘門時間內(nèi)測量被測信號的脈沖個數(shù);另外一種是計時法。方案一:計數(shù)法計數(shù)法是將被測信號通過一個定時閘門加到計數(shù)器進(jìn)行計數(shù)的方法,如果閘門打開的時間為T,計數(shù)器得到的計數(shù)值為N1,則被測頻率為f=N1/T。改變時間T,則可改變測量頻率范圍。如圖4所示。計數(shù)值N1計數(shù)值N1T被測信號標(biāo)準(zhǔn)閘門圖4設(shè)在T期間,計數(shù)器的精確計數(shù)值應(yīng)為N,根據(jù)計數(shù)器的計數(shù)特性可知,N1的絕對誤差是N1=N+1,N1的相對誤差為δN1=<N1-N>/N=1/N。由N1的相對誤差可知,N的數(shù)值愈大,相對誤差愈小,成反比關(guān)系。因此,在f以確定的條件下,為減少N的相對誤差,可通過增大T的方法來降低測量誤差。當(dāng)T為某確定值時〔通常取1s,則有f1=N1,而f=N,故有f1的相對誤差:δf1=<f1-f>/f=1/f從上式可知f1的相對誤差與f成反比關(guān)系,即信號頻率越高,誤差越?。欢盘栴l率越低,則測量誤差越大。因此測頻法適合用于對高頻信號的測量,頻率越高,測量精度也越高。方案二:計時法計時法又稱為測周期法,計時法是用被測信號來控制閘門的開閉,而將標(biāo)準(zhǔn)時基脈沖通過閘門加到計數(shù)器,閘門在外信號的一個周期內(nèi)打開,這樣計數(shù)器得到的計數(shù)值就是標(biāo)準(zhǔn)時基脈沖外信號的周期值,然后求周期值的倒數(shù),就得到所測頻率值。首先把被測信號通過二分頻,獲得一個高電平時間是一個信號周期T的方波信號;然后用一個一直周期T1的高頻方波信號作為計數(shù)脈沖,在一個信號周期T的時間內(nèi)對T1信號進(jìn)行計數(shù),如圖5所示。圖5若在T時間內(nèi)的計數(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的相對誤差可以看出,周期測量的誤差與信號頻率成正比,而與高頻標(biāo)準(zhǔn)計數(shù)信號的頻率成反比。當(dāng)f1為常數(shù)時,被測信號頻率越低,誤差越小,測量精度也就越高。根據(jù)本設(shè)計要求的性能與技術(shù)指標(biāo),首先需要確定能滿足這些指標(biāo)的頻率測量方法。有上述頻率測量原理與方法的討論可知,計時法適合于對低頻信號的測量,而計數(shù)法則適合于對較高頻信號的測量。但由于用計時法所獲得的信號周期數(shù)據(jù),還需要求倒數(shù)運(yùn)算才能得到信號頻率,而求倒數(shù)運(yùn)算用VHDL語言實(shí)現(xiàn)起來更占用系統(tǒng)資源且可能帶來更大誤差,因此,計時法不適合本實(shí)驗(yàn)要求。測頻法的測量誤差與信號頻率成反比,信號頻率越低,測量誤差就越大,信號頻率越高,其誤差就越小。如果用測頻法所獲得的測量數(shù)據(jù),將閘門時間設(shè)置為一秒時,不需要進(jìn)行任何換算,計數(shù)器所計數(shù)據(jù)就是信號頻率。用VHDL語言實(shí)現(xiàn)起來更加容易,調(diào)整時也更為方便。因此,本次課程設(shè)計所用的頻率測量方法是計數(shù)法。系統(tǒng)結(jié)構(gòu)根據(jù)本次課程設(shè)計的要求,我將這次的頻率計功能實(shí)現(xiàn)分為五個模塊:1、A/D模塊2、比較整形模塊3、頻率測量模塊4、占空比計算模塊5、選擇顯示模塊系統(tǒng)結(jié)構(gòu)如圖6:圖6為了節(jié)省系統(tǒng)資源我們的頻率測量模塊與占空比計算模塊都用頻率為3MHz的基準(zhǔn)信號。下面是各個模塊的具體描述與功能:A/D模塊設(shè)計A/D模塊的主要功能就是控制ADC0809芯片正常工作進(jìn)行被測模擬信號的采集和數(shù)字化的過程,ADC0809是美國國家半導(dǎo)體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D轉(zhuǎn)換器。其內(nèi)部有一個8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進(jìn)行A/D轉(zhuǎn)換。是目前國內(nèi)應(yīng)用最廣泛的8位通用A/D芯片。其主要控制信號:START是轉(zhuǎn)換啟動信號,高電平有效;ALE是3位通道選擇地址信號的鎖存信號。當(dāng)模擬量送至某一輸入端,由3位地址信號選擇,而地址信號由ALE鎖存;EOC是轉(zhuǎn)換情況狀態(tài)信號;在EOC的上升沿后,若使輸出使能信號OE為高電平,則打開三態(tài)緩沖期,把轉(zhuǎn)換好的8位數(shù)據(jù)結(jié)果輸至數(shù)據(jù)總線。其實(shí)按照本次課程設(shè)計的要求,此次頻率計應(yīng)該使用一個高速AD芯片,但是由于實(shí)驗(yàn)條件,我們只能用0809這個慢速的AD,所以本次課程設(shè)計的測頻范圍就大大縮小了,測頻范圍大概只能從1Hz到4KHz。ADC0809的工作過程:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當(dāng)OE輸入高電平時,輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上,至此ADC0809的一次轉(zhuǎn)換結(jié)束。下面是控制ADC0809采樣狀態(tài)圖:st0st0st1st2st3st4圖7用VHDL語言寫了一個狀態(tài)機(jī)來控制ADC0809正常工作采集轉(zhuǎn)化被測信號,下面是A/D模塊的封裝圖以及仿真波形圖:圖8圖9由仿真圖可也看出狀態(tài)機(jī)能夠控制ADC0809芯片正常工作完成被測信號的數(shù)字化處理。比較整形模塊設(shè)計比較整形模塊的輸入信號是經(jīng)過0809數(shù)字化的被測信號。比較整形模塊的作用就是將輸入的八位信號轉(zhuǎn)化為誤差較小的高低電平,形成脈沖信號。原理就是在設(shè)置一個閾值,當(dāng)輸入的信號高于這個閾值時輸出高電平,當(dāng)輸入的信號低于閾值時輸出低電平。這樣就可以把被測的信號轉(zhuǎn)化為脈沖信號,然后送入頻率計算電路就能方便地計算出被測信號的頻率。閾值的設(shè)置與被測信號的幅度有關(guān),任務(wù)書要求幅值是1-3V,所以我們?nèi)?V設(shè)置閾值,當(dāng)1V滿足時,3V也自然滿足。因?yàn)?/5*255=51,所以我們將閾值設(shè)為’00100000’,小于50,滿足設(shè)計要求。其形成的封裝圖及仿真波形圖如下:圖10D為八位輸入CLKIN為輸出信號圖11圖12如圖11、圖12所示,當(dāng)輸入信號高于’00100000’時,輸出信號CLKIN是高電平,當(dāng)輸入信號低于’00100000’時,輸出信號CLKIN是低電平。所以比較整形模塊能夠正常工作,完成輸入信號的整形轉(zhuǎn)化為脈沖信號。頻率測量模塊設(shè)計頻率測量模塊有兩個輸入信號,一個是從比較整形電路輸出的整形后的脈沖信號,這個是被測信號。另外一個是基準(zhǔn)頻率,用來進(jìn)行測量被測頻率使用。頻率測量模塊的工作過程大致是:將基準(zhǔn)頻率進(jìn)行分頻,得到一個周期為2秒的方波,利用方波的電平為正的半個周期作為閘門信號,在半個周期內(nèi)利用計數(shù)器計算被測頻率的個數(shù),所得的脈沖個數(shù)就是被測信號的頻率。然后將所得個數(shù)送出給后面的選擇模塊。其中頻率計數(shù)具有自動切換量程的功能,有兩個檔位一個是Hz檔,一個是KHz檔。因?yàn)橛盟膫€數(shù)碼管顯示但是ADC0809是慢速芯片,頻率范圍1Hz到4KHz,所以為了實(shí)現(xiàn)自動換量程功能,當(dāng)被測頻率超過1000Hz就切換為KHz檔了,所以在實(shí)驗(yàn)箱上驗(yàn)證時最高位的數(shù)碼管一般不會顯示數(shù)字。下面是模塊的封裝圖以及波形仿真圖:圖13圖14由于軟件工具的限制,測頻功能的自動換擋功能仿真起來比較困難,要求的頻率過高,軟件仿真較慢,易出錯,所以僅仿真驗(yàn)證了了頻率計數(shù)的功能。占空比計算模塊設(shè)計占空比計算模塊是用來計算被測信號為方波時的占空比。占空比為在一串理想的脈沖周期序列中〔如方波,正脈沖的持續(xù)時間與脈沖總周期的比值。這個模塊我是這么實(shí)現(xiàn)的,將比較整形后的方波信號作為一個輸入信號,再輸入一個高頻脈沖信號作為基準(zhǔn)信號,最好要遠(yuǎn)遠(yuǎn)高于被測信號的頻率,這樣才能更好更準(zhǔn)確測量被測脈沖信號的占空比。將被測信號輸入后二分頻后得到一個周期是原被測信號二倍的信號,然后利用原被測信號的半個周期的高電平以及二分頻后的信號的半個周期的高電平作為兩個閘門信號T1、T2,分別記錄這兩個閘門信號下基準(zhǔn)信號的個數(shù)A1、A2,然后用A1除以A2就能得到被測脈沖信號的占空比了。特別注意的是這個模塊內(nèi)要加入一個鎖存器,否則占空比計算后的數(shù)值輸出到數(shù)碼管會不停的閃爍。下面是占空比模塊的封裝圖以及波形仿真圖:圖15圖16輸入信號是占空比為72%的脈沖信號,仿真結(jié)果為72%,占空比計算模塊能夠正常工作。選擇顯示模塊設(shè)計選擇顯示模塊就是一個二選一電路,頻率測量模塊的四個輸出以及占空比計算模塊的兩個輸出都作為選擇顯示模塊的輸入,還有一個輸入信號由按鍵控制。用來控制選擇顯示模塊的輸出是頻率測量模塊的輸出信號還是占空比計算模塊的兩個輸出。選擇顯示模塊的作用就是,因?yàn)閷?shí)驗(yàn)箱在模式5的狀態(tài)下,由于適用ADC0809,占用了三個數(shù)碼管,所以占空比及頻率不能同時用數(shù)碼管顯示,要用四個數(shù)碼管顯示頻率就必須通過選擇顯示模塊來控制。當(dāng)按鍵沒有按下的時候四個數(shù)碼管顯示的是頻率,當(dāng)按鍵按下后數(shù)高兩位數(shù)碼管顯示占空比,低兩位數(shù)碼管為零。下面是選擇顯示模塊的封裝圖以及波形仿真圖:圖17圖18由圖可以看到二選一模塊能夠完成既定功能。硬件驗(yàn)證:頻率測量波形方波正弦波三角波輸入頻率〔hz輸出頻率〔hz101011155005005015013000300029982588占空比測試輸入占空比〔%顯示占空比〔%70706059505040413032誤差分析1、頻率測量誤差分析:由于ADC0809芯片是一個低速的AD芯片,所以方波的頻率在4khz以下,測量較為準(zhǔn)確,超過4khz就會出現(xiàn)較大的誤差。正弦波的頻率在11hz-3000hz之間測量的較為準(zhǔn)確。三角波的頻率在15hz-1800hz之間測量的較為準(zhǔn)確。這與AD的轉(zhuǎn)換速度及精度有一定關(guān)系,頻率的測量方法也影響著頻率測量的精確度。所以如果使用高速AD,并且測量高頻與低頻時使用適用與不同情況的頻率測量方法,可以有效降低誤差。2、占空比測量誤差分析:由表可見,占空比整體測量比較準(zhǔn)確,誤差并不是特別大。通過提高占空比計算模塊的基準(zhǔn)頻率,增長閘門時間可以減小誤差。心得體會這次現(xiàn)代電子系統(tǒng)課程設(shè)計的題目是簡易數(shù)字頻率計。通過這次的課程設(shè)計,我對頻率計以及硬件描述語言的應(yīng)用有了更深的認(rèn)識。雖然以前的數(shù)字邏輯電路的課程設(shè)計也是頻率計,但那個頻率計是通過芯片與電路的連接實(shí)現(xiàn)的最基本的頻率計功能,并沒有更深入去考慮一個頻率計需要注意的各種問題例如如何完美實(shí)現(xiàn)頻率計各項性能指標(biāo)還有頻率計精度提高的問題等。這次課程設(shè)計與開學(xué)之初的電子設(shè)計自動化的課程設(shè)計雖然有類似之處,但是比開學(xué)的那個課程設(shè)計要求要更高。我在開學(xué)初的課程設(shè)計的題目是利用FPGA實(shí)現(xiàn)一個數(shù)字鐘。在那次設(shè)計中,我遇到非常多的問題,基本模塊都是磕磕絆絆寫了出來,而且在寫頂層文件的時候,我用的是元件例化語句將各個模塊連接起來,中間用到了三十多個中間信號,自己記起來亂七八糟的,最后還是都寫到了一張紙上才全部分清,勉強(qiáng)將數(shù)字鐘的功能實(shí)現(xiàn)。所以這個課程設(shè)計,我先將各個模塊一一認(rèn)真實(shí)現(xiàn),然后將各個模塊生成封裝,然后用原理圖連線的方法完成了總體的連線。這個方法既簡單又清晰,能夠看清整個頻率計工作流程原理,十分容易理解以及修改,不必再去用復(fù)雜的元件例化語句節(jié)省了我不少的時間。當(dāng)然在這次實(shí)驗(yàn)過程中也暴露出不少問題,頻率測量方法選擇不恰當(dāng),測量的誤差較大,比較整形模塊的閾值設(shè)置我想了好久都沒有想明白,最后還是在同學(xué)的耐心講解下才明白了閾值的選擇規(guī)則。最后頻率計完成前的最后一個問題就是占空比的顯示問題,當(dāng)時做好之后一看占空比顯示不停閃爍,本來沒什么思路,后來聽老師給另外一個同學(xué)講解的時候說是加一個寄存器就能解決了,給占空比計算模塊加入了鎖存器果然解決了占空比閃爍的問題??偟膩碚f,這次的課設(shè)過程中遇到了不少的問題,但還是完成了任務(wù)書要求的功能。最大的收獲就是,我對VHDL語言的應(yīng)用更加熟悉,大學(xué)四年來我覺得我學(xué)的最好的就是C語言和VHDL硬件描述語言了,并且語言的應(yīng)用也在實(shí)驗(yàn)與課程設(shè)計中不斷進(jìn)步。參考文獻(xiàn):〔1《現(xiàn)代電子系統(tǒng)設(shè)計》XX大學(xué)出版社何小艇主編〔2《EDA技術(shù)使用教程》科學(xué)出版社潘松編著〔3《VHDL硬件描述語言與數(shù)字邏輯電路設(shè)計》XX電子科技大學(xué)出版社侯伯亨劉凱顧新編著〔4《現(xiàn)代電子系統(tǒng)設(shè)計實(shí)驗(yàn)指導(dǎo)書》XX科技大學(xué)齊晶晶李娜主編附錄課程設(shè)計程序:..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轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖〔至少100ns寬使其啟動〔脈沖上升沿使0809復(fù)位,下降沿啟動A/D轉(zhuǎn)換--OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(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)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 渤海理工職業(yè)學(xué)院《高層建筑智慧施工》2023-2024學(xué)年第一學(xué)期期末試卷
- 畢節(jié)職業(yè)技術(shù)學(xué)院《成礦規(guī)律與成礦預(yù)測》2023-2024學(xué)年第一學(xué)期期末試卷
- 畢節(jié)工業(yè)職業(yè)技術(shù)學(xué)院《微波工程基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 個人房屋租賃終止合同范本
- 建筑企業(yè)合同管理制度范例
- 2025年度合作承包公寓租賃代理與客戶服務(wù)合同3篇
- 二零二五年賓館客房用品智能化升級采購合同范本3篇
- 形體拳軍訓(xùn)心得體會500字
- 幼兒教師實(shí)習(xí)報告范文合集6篇
- 2025版酒店財務(wù)部出納聘用合同范本1份3篇
- 《毛概》23版學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 窗簾采購?fù)稑?biāo)方案(技術(shù)方案)
- 2024-2030年串番茄行業(yè)市場發(fā)展分析及前景趨勢與投資研究報告
- 城市燃?xì)夤芫W(wǎng)改造合同
- 2024-2025學(xué)年廣東省東莞市高三思想政治上冊期末試卷及答案
- 《水電站建筑物》課件
- 9-XX人民醫(yī)院樣本外送檢測管理制度(試行)
- 場地硬化合同范文
- 智力殘疾送教上門教案
- 計算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教程資料
- 刑事訴訟法綜合實(shí)訓(xùn)報告
評論
0/150
提交評論