【正文】
ONTRL2的 PUL端口為低電平時(shí),計(jì)數(shù)器 2就會(huì)將被切斷。 當(dāng)其在先檢測(cè)到上升沿以后 PUL才是高電平,接著在檢測(cè)為下降沿時(shí), PUL的輸出為低電平;當(dāng) ENDD檢測(cè)輸出為高電平,就會(huì)通知單片機(jī)這個(gè)測(cè)量計(jì)數(shù)結(jié)束;當(dāng)先檢測(cè)為下降沿時(shí),并且 PUL沒(méi)有變化;在 檢測(cè)到上升沿并緊接著一個(gè)下降沿后,測(cè)脈寬測(cè)占空比模塊就不會(huì)發(fā)生變化一直到另外的初始化的信號(hào)來(lái)到。它是一個(gè)高性能,低電壓的且由 CMOS構(gòu)成的 8位的單片機(jī)。因?yàn)閷⒍喙δ艿?8位 CPU及快閃存儲(chǔ)器已經(jīng)組合在了單個(gè)芯片中, ATMEL公司的 AT89C51它是一種高效的微控制器,為很多的嵌入式系統(tǒng)提出了一種靈活性較高而且價(jià)格低廉的方案。當(dāng)成為數(shù)據(jù)總線 /外部地址使用的時(shí)候,它用于傳輸?shù)?8位地址以及 8位數(shù)據(jù),當(dāng)快閃編程的時(shí)候, P0口輸入,如果作為快閃校驗(yàn)的時(shí)候, P0 口輸出,此時(shí)P0口的外部就會(huì)被拉到高電平。當(dāng) P2口作為外部程序的存儲(chǔ)器或者外部數(shù)據(jù)的存儲(chǔ)器進(jìn)行存取的時(shí)候, P2口就會(huì)輸出地址的高 8位。如果 P3口被寫(xiě)入 1時(shí),它就會(huì)被內(nèi)部置為高電平,然后用做輸入。那么讀入開(kāi)始鍵之后馬上跳轉(zhuǎn)到測(cè)頻子程序,此時(shí)子程序會(huì)先置測(cè)頻率的控制位 ,把 CPLD內(nèi)部清零,然后通過(guò)健盤(pán)把預(yù)置門(mén)的定時(shí)時(shí)間讀到單片機(jī),然后預(yù)置門(mén)開(kāi)始測(cè)頻計(jì)數(shù),等到預(yù)置門(mén)的時(shí)間結(jié)束之后,關(guān)預(yù)置門(mén),當(dāng)關(guān)預(yù)置門(mén)以后 CPLD會(huì)給單片機(jī)信號(hào),單片機(jī)讀到此信號(hào)后,通過(guò)置 [SS1,SS0」的四個(gè)狀態(tài),分四次把測(cè)頻結(jié)果 32位數(shù)據(jù)讀入到單片機(jī),計(jì)算后把結(jié)果轉(zhuǎn)為 BCD碼并送 LED顯示。 N Y Y 圖 程序圖 開(kāi)始 初始化 鍵盤(pán)掃描 開(kāi)始鍵按下 測(cè)頻子程序 顯示子程序 結(jié)束 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 12 頁(yè) 共 54 頁(yè) 單片 機(jī)的測(cè)頻控制的電路如圖所示,單片機(jī)完成了測(cè)量電路的數(shù)據(jù)處理、測(cè)試控制及顯示輸出,并且 CPLD模塊完成了多種的測(cè)試功能。采用單片機(jī)的 P0口讀計(jì)數(shù)器輸出 B[7...0]的標(biāo)準(zhǔn)信號(hào)頻率值, P2口讀被測(cè)信號(hào)的值,計(jì)數(shù)器 COUNT就會(huì)輸出通道 B[15...8]。然后通過(guò) P1口進(jìn)行 輸出控制。 ( 3) CLR:清零。 ( 5) AS:自校與測(cè)頻選擇模塊。 ( 6) STROBE:作為預(yù)置門(mén)閘信號(hào),門(mén)寬會(huì)通過(guò)鍵盤(pán)采用單片機(jī)進(jìn)行控制,當(dāng)其為高電平時(shí),預(yù)置門(mén)就會(huì)打開(kāi);當(dāng)其為低電平時(shí),預(yù)置門(mén)就會(huì)關(guān)閉。 ( 8) SS0, SS1:計(jì)數(shù)位讀出選通控制。 ( 9) FS為標(biāo)準(zhǔn)頻率信號(hào)輸入,此頻率來(lái)源于 50MHZ的晶振。 ( 11) FC為自校頻率,取自單片機(jī)的外接晶振。在測(cè)量中,因?yàn)?FX 計(jì)數(shù)起停時(shí)間是由信號(hào)上升沿進(jìn)行觸發(fā)的,在 Tpr時(shí)間內(nèi) FX的計(jì)數(shù) NX無(wú)誤差;此時(shí)一個(gè)周期里的計(jì)數(shù)值 Ns最多會(huì)相差一個(gè)正負(fù)脈沖,即: |⊿ et|≤ 1則: FX/Nx=FS/Ns FXE/Nx=FS/(Ns+⊿ et) 由此推得: FX=(FS/Ns)*Nx FXE=[FS/(Ns+⊿ et)]*Nx 由相對(duì)誤差的公式可得: △ FXE/FXE=|FXEFX|/FXE 可以得: △ FXE/FXE=|⊿ et|/Ns 因?yàn)? |⊿ et|≤ 1 所以 |⊿ et|/NS≤ 1/Ns 即 |167。 ( 2)增大周期或著提高 FS,可增大 Ns,以此來(lái)減小測(cè)量誤差,提高它測(cè)量的精度。 ( 4)這個(gè)測(cè)頻系統(tǒng)測(cè)量精度和預(yù)置門(mén)的寬度與標(biāo)準(zhǔn)頻率之間有關(guān),然跟被測(cè)信號(hào)頻率沒(méi)有關(guān)系。為了保持測(cè)量精度不變,可以采用高頻率的穩(wěn)定度與高精度且恒溫可以微調(diào)節(jié)的振蕩器為標(biāo)準(zhǔn)頻率的發(fā)生器,故我們選擇 50MHZ晶振 。 系統(tǒng)的軟 /硬件開(kāi)發(fā)環(huán)境如下: ( 1) 系統(tǒng)的開(kāi)發(fā)軟件: Quartus Ⅱ . ( 2) 單片機(jī)及 CPLD芯片的調(diào)試設(shè)備。 :在每個(gè)單元電路進(jìn)行調(diào)試好以后就可以進(jìn)行系統(tǒng)之間的聯(lián)調(diào)。 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 14 頁(yè) 共 54 頁(yè) 實(shí)驗(yàn)測(cè)試的數(shù)據(jù)如 ,其被測(cè)頻率計(jì)數(shù)值的 Nx與標(biāo)準(zhǔn)頻率的計(jì)數(shù)值 Ns,它是直接到內(nèi)存單元里獲得的十六進(jìn)制數(shù),測(cè)試頻率是經(jīng)過(guò)轉(zhuǎn)換以后顯示在 LED上的被測(cè)頻率值。所以,在這里進(jìn)行誤差分析的時(shí)候,被測(cè)參考頻率的誤差首先作為其中的一個(gè)因數(shù);其二,在本系統(tǒng)中,我們采用 8片 LED顯示,雖然采用浮點(diǎn)顯示,但也只能顯示 8位數(shù)據(jù),而實(shí)際運(yùn)算結(jié)果多于 8位,故實(shí)際所顯示的結(jié)果只能保證 8位有效數(shù)字,這個(gè)將成為引發(fā)誤差的第二個(gè)原因;第三,前面精度分析計(jì)算的相對(duì)誤差不超過(guò) 1/Ns,根據(jù)表中的數(shù)據(jù)可知,此誤差比較小;第四,在 實(shí)際測(cè)量中,被測(cè)信號(hào)有時(shí)不能達(dá)到仿真時(shí)的效果,在閘門(mén)打開(kāi)的時(shí)候,由于 CPLD內(nèi)部各邏輯單元延時(shí)的不一致性,從而不能使標(biāo)準(zhǔn)信號(hào)和被測(cè)信號(hào)同時(shí)計(jì)數(shù),也會(huì)導(dǎo)致誤差。 QuartusⅡ開(kāi)發(fā) FPGA/CPLD的流程概述 FPGA基于開(kāi)發(fā)流程主要包含有一下幾個(gè)步驟:設(shè)計(jì)輸入、設(shè)計(jì)仿真、設(shè)計(jì)綜合、布局布線與配置。這環(huán)節(jié)就好像在 Protel里畫(huà)原理圖,事實(shí)上就是把多種邏輯器件利用連線把它們連接在起來(lái)。 用戶自定義元件必須由用戶自己創(chuàng)建的方式一般有兩種:文本方式和圖形塊方式。各部件模塊的設(shè)計(jì)一般是通過(guò) VHDL 的方式設(shè)計(jì)在生成 Symbol 模塊以供調(diào)用。各個(gè)模塊還 可以獨(dú)立調(diào)用。仿真包含了時(shí)序仿真和功能仿真。時(shí)序仿真也就是延時(shí)仿真,因?yàn)槠骷煌⒉季植季€不同會(huì)給延時(shí)造成不同的影響,所以對(duì)系統(tǒng)進(jìn)行檢驗(yàn)設(shè)計(jì)性能、時(shí)序仿真與消除競(jìng)爭(zhēng)和冒險(xiǎn)它是不可或缺的步驟。 (4)配置下載程序( Configuration/Download) 使用 QuartusⅡ 軟件成功編譯工程之后,就能對(duì) Altera 的 器件編程或者配置了。也可以利用編程器的軟件獨(dú)立版本對(duì)其器件,進(jìn)行編程與配置。 Quartus Ⅱ的使用方法 基于 Quartus Ⅱ的工程文件由所有的設(shè)計(jì)文件、軟件源文件以及完成其他操作所需的文件組成,因此它是基于工程管理的系統(tǒng)設(shè)計(jì)。在該對(duì)話框中依次指定工程目錄、工程名和頂層文件名。 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 18 頁(yè) 共 54 頁(yè) 圖 工程保存 ( 2)打開(kāi)文本編輯器。按照原理框圖輸入,在輸入界面雙擊鼠標(biāo)左鍵,在 Name欄中輸入實(shí)體名,點(diǎn)擊 OK選 擇合適位置放置即可; ( 7) 在原理圖輸入完成后,選擇 Assignmentsettings,在 category 的 Device 項(xiàng)下,選擇目標(biāo)芯片,在 Device and pin options 選項(xiàng),將 Dualpurporse pins 選項(xiàng)下的 nce 選擇為 ‘ use as regular I/O’; ( 8) 選擇 processing— start pilation 命令,啟動(dòng)全程編譯; ( 9) 編譯無(wú)誤后,選擇 AssignmentsAssignment Editor 命令進(jìn)入。如果此文件沒(méi)有出現(xiàn),可單擊左側(cè)的 Add File 按鈕,手動(dòng)選擇配置; ( 13) 若是初次安裝的 QuartusⅡ ,在編程器選擇操作單擊編程窗口左上角的 Hard ware set up 按鈕,在 Hard ware set up 對(duì)話框中,雙擊此選項(xiàng)中選項(xiàng) USBBlaster 之后,單擊 close 按鈕,關(guān)閉對(duì)話框即可,這時(shí)應(yīng)該可以使用 currently selected hard ware 右側(cè)顯示出 USBBlaster; ( 14) 單擊下載標(biāo)符, start 按鈕即可對(duì)目標(biāo)器件進(jìn)行配置下載操作,當(dāng) progress 顯示 100%,以及在底部的處理欄中出現(xiàn) confoguration succeded,表示編程成功; ( 15) 觀察實(shí)驗(yàn)箱上的顯示情況。不論從理論知識(shí)還是從實(shí)際操作中我都學(xué)會(huì)了很多知識(shí)。在這次畢業(yè)設(shè)計(jì)中,體會(huì)到理論知識(shí)對(duì)實(shí)踐有很大的指導(dǎo)性作用,學(xué)會(huì)了高效率的查閱資料、運(yùn)用工具書(shū)、利用網(wǎng)絡(luò)來(lái)查找資料,各種參數(shù)都需要自己去進(jìn)行調(diào)整。在畢業(yè)設(shè)計(jì)中,我們應(yīng)該注意重點(diǎn)與細(xì)節(jié)的關(guān)系。在此次設(shè)計(jì)中,我利用了單片機(jī)與 CPLD的相結(jié)合,很好的提高了 系統(tǒng)的精度。 總的來(lái)說(shuō),這一次的畢業(yè)設(shè)計(jì),讓我學(xué)習(xí)了很多很多自己以前從沒(méi)有了解過(guò)的東西,讓我在這段時(shí)間中一天一天的成長(zhǎng),這一次的實(shí)踐,也讓我意識(shí)到,在即將到來(lái)的社會(huì)考驗(yàn)中,我們需要定下心里,去掉內(nèi)心的焦躁,為每一份工作,做出自己最大的努力。在本次的畢業(yè)設(shè)計(jì)的實(shí)現(xiàn)中梁老師給予了我很大的幫助,尤其是在硬件電路的理解上。正是在這樣的幫助下我才能取得現(xiàn)在的畢設(shè)成果。最后,也在此感謝學(xué)校的各位老師給予的幫助。 2020年 4月 [7]潘松,黃繼業(yè)編著 .EDA技術(shù)與 VHDL[M].北京:清華大學(xué)出版社 .2020年 11月 [8]王道憲,賀名臣,劉偉 .VHDL設(shè)計(jì)技術(shù) [M].北京:國(guó)防工業(yè)出版社 .2020年 8月第一版 [9]劉韜,樓興華編著 .FPGA數(shù)字電子系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)實(shí)例導(dǎo)航 [M].北京:人民郵電出版社 .2020年6月第一版 [10]宋萬(wàn)杰,羅平,吳順君 .CPLD技術(shù) 及其應(yīng)用 [M].西安:西安電子科技大學(xué)出版社 .2020年 6月 [11]吳金戎,沈慶陽(yáng),郭庭吉 .8051單片機(jī)實(shí)踐與應(yīng)用 [M].北京:清華大學(xué)出版社 .2020年 9月第一版 [12]黃正瑾,徐堅(jiān),章小麗等編著 .CPLD系統(tǒng)設(shè)計(jì)技術(shù)入門(mén)與應(yīng)用 [M].北京:電子工業(yè)出版社 .2020 [13]甘歷 .VHDL應(yīng)用與開(kāi)發(fā)實(shí)踐 [M].北京:科學(xué)出版社 .2020年 5月第一版 [14]James , gray. VHDL Design Representation and Synthesis Second Edition[M].機(jī)械工業(yè)出版社 .2020年 3月 [15]Stefan Sjoholm,lennart Lindh. VHDL for designer[M].北京:清華大學(xué)出版社 .2020 [16]黃繼武,楊宏偉,明鋒 .單片機(jī) AT89C51在 UHF和 VHF頻率測(cè)量系統(tǒng)中應(yīng)用的研究 [J].武漢大學(xué)學(xué)報(bào) .2020年 2月 .第 48卷第 1期: 125~128 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 23 頁(yè) 共 54 頁(yè) 附錄 附錄 A外文翻譯 Introduction of digital frequency meter Digital Frequency of munications equipment, audio and video, and other areas of scientific research and production of an indispensable instrument. Programming using Verilog HDL Design and Implementation of the digital frequency, in addition to the plastic part of the measured signal, and digital key for a part of the show, all in an FPGA chip to achieve. The entire system is very lean, flexible and have a modification of the scene. 1. And other precision measuring frequency Principle Frequency measurement methods can be divided into two kinds: (1) direct measurement method, that is, at a certain time measurement gate measured pulse signal number. (2) indirect measurements, such as the cycle frequency measurement, VF conversion law. Frequency Measurement indirect measurement method applies only to lowfrequency signals. Based on the principles of traditional frequency measurement of the frequency of measurement accuracy will be measured with the decline in signal frequency decreases in the more practical limitations, such as the accuracy and frequency of measurement