版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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> 題 目:基于CPLD的頻率計(jì)設(shè)計(jì)</p><p> 學(xué) 院: 電氣與電子工程學(xué)院</p><p> 專 業(yè): 電子信息工程 </p><p> 學(xué)生姓名: </p><
2、p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p> 畢業(yè)設(shè)計(jì)(論文)時(shí)間:二О一三 年 2月 20日~ 6 月8日 共 16 周</p><p><b> 摘要</b></p><p> 頻率檢測(cè)是電子領(lǐng)域里最基本的測(cè)量,也是最重要的
3、測(cè)量。由于頻率信號(hào)抗干擾能力強(qiáng)、易于傳輸,可以得到相對(duì)較高的測(cè)量精度,因此頻率測(cè)量方法的研究也受到越來(lái)越多的關(guān)注。基于傳統(tǒng)測(cè)頻原理的頻率計(jì)的測(cè)量精度將隨被測(cè)信號(hào)頻率的下降而降低,本次設(shè)計(jì)中共提出了四種設(shè)計(jì)方案,通過(guò)論證最終決定用等精度的測(cè)量方法來(lái)完成本次頻率計(jì)的設(shè)計(jì)。 </p><p> 在本次設(shè)計(jì)中選擇AT89C51單片機(jī)和CPLD的結(jié)合來(lái)實(shí)現(xiàn)。其中單片機(jī)完成整個(gè)測(cè)量電路的測(cè)試控制、數(shù)據(jù)處理和顯示輸出;CPL
4、D主要完成頻率測(cè)量功能,頻率的測(cè)量范圍在1HZ—1MHZ之間,其中測(cè)量誤差在1HZ;鍵盤(pán)信號(hào)由AT89C51單片機(jī)進(jìn)行處理,它從CPLD讀回計(jì)數(shù)數(shù)據(jù)并進(jìn)行運(yùn)算,向顯示電路輸出測(cè)量結(jié)果;顯示器電路采用5段LED動(dòng)態(tài)顯示,由1個(gè)74HC138譯碼器和74HC573鎖存器驅(qū)動(dòng)5個(gè)數(shù)碼管。</p><p> 關(guān)鍵詞: 頻率計(jì),EDA技術(shù),CPLD,單片機(jī),等精度測(cè)量</p><p><b&
5、gt; Abstract</b></p><p> Frequency detection is the most basic in the electronics field measurement, which is the most important measurement. Due to frequency signal transmission, strong anti-jamming
6、 capability, easy can get relatively high measurement precision, so frequency measurement methods of research have also been more and more attention. Based on the traditional principle of frequency meter frequency measur
7、ement accuracy will be along with the decline of the measured signal frequency is reduced, the design of t</p><p> In this design choose the combination of the AT89C51 single-chip microcomputer and CPLD to
8、implement. The single-chip microcomputer control, the entire measurement circuit test data processing and display output; CPLD main complete frequency measurement function, frequency of measurement range between 1 hz to
9、1 MHZ, which measurement error in 1 hz; Keyboard signals are processed using single-chip computer AT89C51, it read back from CPLD count data and calculation, the measurement results to disp</p><p> Key Word
10、s: frequency meter, EDA technologythe, CPLD and single chip microcomputer, such as precision measurement</p><p><b> 目錄</b></p><p><b> 摘要I</b></p><p> Abs
11、tractII</p><p><b> 第一章 概述1</b></p><p> 第二章 系統(tǒng)設(shè)計(jì)方案與論證2</p><p> 2.1 測(cè)量原理3</p><p> 2.1.1 直接測(cè)頻法3</p><p> 2.1.2 測(cè)周期法4</p><p&g
12、t; 2.1.3 倍頻法4</p><p> 2.1.4 等精度測(cè)頻法4</p><p> 2.2 系統(tǒng)設(shè)計(jì)指標(biāo)6</p><p> 2.3 系統(tǒng)總體設(shè)計(jì)框圖6</p><p> 第三章 硬件電路設(shè)計(jì)8</p><p> 3.1系統(tǒng)的組成8</p><p> 3.2 系
13、統(tǒng)的基本工作方式9</p><p> 3.3 CPLD測(cè)頻專用模塊9</p><p> 3.3.1 CPLD的結(jié)構(gòu)與功能介紹9</p><p> 3.3.2 CPLD測(cè)頻專用模塊邏輯設(shè)計(jì)10</p><p> 3.3.2.1測(cè)頻/測(cè)周期的實(shí)現(xiàn)11</p><p> 3.3.2.2控制部件設(shè)計(jì)11&
14、lt;/p><p> 3.3.2.3計(jì)數(shù)部件設(shè)計(jì)12</p><p> 3.3.2.4脈沖寬度測(cè)量和占空比測(cè)量模塊設(shè)計(jì)12</p><p> 3.4 單片機(jī)主控模塊硬件電路設(shè)計(jì)13</p><p> 3.4.1 AT89C51單片機(jī)13</p><p> 3.4.3七段LED數(shù)碼管18</p>
15、;<p> 3.4.4 74HC573鎖存器19</p><p> 3.4.5 單片機(jī)與LED顯示模塊的設(shè)計(jì)19</p><p> 第四章 單片機(jī)控制與運(yùn)算程序的設(shè)計(jì)22</p><p> 4.1程序流程圖及相關(guān)程序22</p><p><b> 結(jié) 論28</b></p>
16、<p><b> 參考文獻(xiàn)29</b></p><p><b> 致 謝30</b></p><p><b> 第一章 概述</b></p><p> 測(cè)頻一直以來(lái)都是電子和通訊系統(tǒng)工作的重要手段也是重要內(nèi)容。在生活中,頻率的測(cè)量隨處可見(jiàn),每天都在接觸,并且可以直接或間接地根據(jù)
17、測(cè)量頻率來(lái)獲取我們想要得到的信息。因此頻率的測(cè)量就顯得非常重要了,使用較高精度的方法來(lái)測(cè)量頻率就更加重要了。比如在我們的日常生活中最常見(jiàn)設(shè)備——時(shí)鐘就是頻率測(cè)量的應(yīng)用,根據(jù)測(cè)量頻率來(lái)計(jì)算時(shí)間,我們?cè)诳蒲兄谐S玫腉PS設(shè)備通過(guò)測(cè)量頻率也在進(jìn)行GPS點(diǎn)與GPS衛(wèi)星距離的計(jì)算,從而計(jì)算出GPS坐標(biāo)。</p><p> 測(cè)量頻率的方法大約可分直接頻率測(cè)量法與間接頻率測(cè)量法。直接測(cè)頻法常常使用測(cè)頻率法與測(cè)周期法。然而測(cè)頻
18、率法與測(cè)周期法計(jì)數(shù)值都會(huì)出現(xiàn)正負(fù)1 個(gè)字的誤差。而以中界頻率為界限,對(duì)于低頻的信號(hào)使用測(cè)周期法,對(duì)于高頻的信號(hào)使用測(cè)頻法,這樣可以確保測(cè)試的準(zhǔn)確性。間接測(cè)量頻率的方法大多是使用等精度測(cè)量,此方法是在直接頻率測(cè)量法下發(fā)展的,測(cè)量精度非常高。等精度頻率測(cè)量法的閘門(mén)時(shí)間并不是一個(gè)固定的值,而是與被測(cè)信號(hào)同步,是被測(cè)信號(hào)周期的整數(shù)倍。因此,清除了計(jì)數(shù)所產(chǎn)生的正負(fù)1 個(gè)字的誤差,并且測(cè)試頻段的等精度測(cè)量一直保持完全準(zhǔn)確,實(shí)測(cè)精度不會(huì)跟所測(cè)信號(hào)頻率
19、變化而發(fā)生變化。早先的數(shù)字頻率計(jì)大部分由分立元件組成,它的測(cè)量范圍、精度以及速度都受到非常多的限制。單片機(jī)的開(kāi)發(fā)和應(yīng)用改變了測(cè)量所帶來(lái)的限制,可是單片機(jī)本身也受到一些因素影響,因此在電子領(lǐng)域單片機(jī)不能得到突飛猛進(jìn)的發(fā)展??焖侔l(fā)展的大規(guī)??删幊踢壿嬙O(shè)備技術(shù)可以將多量邏輯功能匯集在一個(gè)單一的芯片中。根據(jù)不同的需要,可以提供從幾百至上百萬(wàn)之多的邏輯門(mén)數(shù)目,從根本上解決了單片機(jī)的先天性限制問(wèn)題。</p><p> 在設(shè)
20、備選擇上,使用Atmel公司生產(chǎn)的AT89C51單片機(jī)和EPM7128SLC84-15。AT89C51是一種帶4K字節(jié)FLASH的低電壓、高性能8位CMOS單片機(jī)。該器件采用非易失存儲(chǔ)器制作技術(shù),并且與MCS-51引腳和指令集相兼容。編程器可以對(duì)芯片上的FPEROM重復(fù)編程,1000寫(xiě)/擦循環(huán),并且具有工作電壓范圍廣、可編程串行通道,數(shù)據(jù)可存儲(chǔ)10年等特點(diǎn)。EPM7128SLC84-15是使用氧化物半導(dǎo)體EZPROM 的先進(jìn)的技術(shù)制造的
21、第二代MAX產(chǎn)品。它可以迅速重新編寫(xiě)和確??删幊滩脸?00次。EPM7128SLC84-15是嵌入式CPLD,可以在系統(tǒng)內(nèi)編程,宏單元數(shù)為128個(gè),邏輯塊為8個(gè)。使用匯編語(yǔ)言編寫(xiě)單片機(jī)軟件,用VHDL語(yǔ)言描述來(lái)實(shí)現(xiàn)CPLD內(nèi)部豐富的數(shù)據(jù)層次和結(jié)構(gòu)模型。頻率測(cè)量?jī)x器的性能也是不一樣的。使用等精度測(cè)量原理,單片機(jī)的良好控制功能和CPLD的高速可靠性相結(jié)合,使頻率測(cè)量?jī)x電路簡(jiǎn)潔,速度更快,功能全面,精度提高,有效防止干擾。</p>
22、<p> 第二章 系統(tǒng)設(shè)計(jì)方案與論證</p><p><b> 2.1 測(cè)量原理</b></p><p> 2.1.1 直接測(cè)頻法</p><p> 在特定的一段時(shí)間內(nèi)測(cè)某個(gè)周期信號(hào)的重復(fù)變化次數(shù)N,其頻率表示為f=N/T,是傳統(tǒng)的頻率測(cè)量方法。它的原理框圖見(jiàn)圖2-1。在此測(cè)量方式中,被測(cè)信號(hào)的頻率發(fā)生改變,它的精度也隨
23、之發(fā)生改變。根據(jù)頻率(每單位時(shí)間周期信號(hào)發(fā)生的次數(shù))的基本定義,由圖中知道測(cè)量的時(shí)間基準(zhǔn),分頻過(guò)后可以讓時(shí)間閘門(mén)開(kāi)啟或關(guān)閉。閘門(mén)若開(kāi)啟則開(kāi)始計(jì)數(shù),閘門(mén)若關(guān)閉則停止計(jì)數(shù)。若閘門(mén)開(kāi)放時(shí)間為T(mén),計(jì)數(shù)值為N,則被測(cè)頻率F=N/T。但若被測(cè)信號(hào)頻率過(guò)低則存在測(cè)量精度與實(shí)時(shí)性之間的矛盾。</p><p> 例如,被測(cè)信號(hào)為10HZ, 0.01%的精度。由δ=1/(N-1)*100%<0.01%,則N>10000
24、。則最短的閘門(mén)時(shí)間T=N/F=10000/10=1000s,我們完全無(wú)法接受這樣的測(cè)量。通過(guò)計(jì)算對(duì)10KHZ 以下的信號(hào)用測(cè)頻法測(cè)量反應(yīng)的時(shí)間會(huì)大于或等于10秒的時(shí)間,低頻為了得到準(zhǔn)確的頻率值,甚至要等到幾個(gè)小時(shí),必然不可行。因此,這種方法不適用于低頻信號(hào)的頻率測(cè)量。</p><p> 圖2.1 直接測(cè)頻法原理框圖</p><p> 2.1.2 測(cè)周期法</p><
25、p> 測(cè)量周期法的原理與測(cè)頻法大致相同,互換晶振與被測(cè)信號(hào)。T1=N*T,T為時(shí)基信號(hào),被測(cè)信號(hào)的周期T1與計(jì)數(shù)值N成正比。這種方法誤差比較大,而最大誤差也是δ =1/(N-1)*100%。如果完成測(cè)量精度在0.01%以下,則由δ =1/(Ns-1)*100%<0.01%,得Ns>10000??梢酝ㄟ^(guò)計(jì)算得到結(jié)論:測(cè)周期法適合于測(cè)量低頻信號(hào),而對(duì)高頻信號(hào)毫無(wú)作用。可見(jiàn),要使傳統(tǒng)頻率測(cè)量達(dá)到高精度標(biāo)準(zhǔn),必須按照指定的界
26、限劃分,以中界頻率為界限,對(duì)低頻段的信號(hào)測(cè)量使用測(cè)周期法,對(duì)高頻段的信號(hào)測(cè)量使用測(cè)頻法。</p><p> 2.1.3 倍頻法 </p><p> 把頻率測(cè)量范圍分成多個(gè)頻段,使用倍頻技術(shù),根據(jù)頻段設(shè)置倍頻系數(shù),將經(jīng)整形的低頻信號(hào)進(jìn)行倍頻后再進(jìn)行測(cè)量,對(duì)高頻段則直接進(jìn)行測(cè)量。倍頻法較難實(shí)現(xiàn)。</p><p> 2.1.4 等精度測(cè)頻法</p>&
27、lt;p> 等精度測(cè)頻法實(shí)現(xiàn)方式可用圖2.1.4說(shuō)明。</p><p> 圖2.1.5 等精度測(cè)頻法原理圖</p><p> 若所測(cè)頻率值為fx,其真實(shí)值為fxe,標(biāo)準(zhǔn)頻率為fs,一次測(cè)量中,由于fx計(jì)數(shù)的起停時(shí)間都是由該信號(hào)的上跳沿觸發(fā)的,因此在Tpr時(shí)間內(nèi)對(duì)fx的計(jì)數(shù)Nx無(wú)誤差,在此時(shí)間內(nèi)的計(jì)數(shù)Ns最多相差一個(gè)脈沖,即Δet≤1,則下式成立:</p><
28、p><b> =</b></p><p><b> =</b></p><p><b> 可分別推得</b></p><p><b> 根據(jù)相對(duì)誤差公式有</b></p><p><b> 經(jīng)過(guò)整理可得到</b><
29、;/p><p><b> 因?yàn)?,故,?lt;/b></p><p> 2.2 系統(tǒng)設(shè)計(jì)指標(biāo)</p><p> 在傳統(tǒng)測(cè)量頻率的方法中,被測(cè)信號(hào)的頻率發(fā)生變化,它的測(cè)量精度也發(fā)生變化。使用局限很大,然而等精度頻率計(jì)測(cè)量精度很高,并且測(cè)試頻段一直保持完全準(zhǔn)確,被測(cè)精度不會(huì)隨被測(cè)信號(hào)頻率變化而發(fā)生變化。本系統(tǒng)設(shè)計(jì)的基本指標(biāo)如下:</p>
30、<p> 1、頻率測(cè)量范圍:1HZ-999.999KHZ</p><p> 2、頻率測(cè)量誤差:1HZ</p><p> 3、輸入靈敏度:<30mV</p><p> 4、輸入波形:正弦波、方波、三角波</p><p> 5、最高輸入電壓:30V</p><p> 6、顯示方式:6位LED數(shù)碼
31、管顯示。</p><p> 2.3 系統(tǒng)總體設(shè)計(jì)框圖</p><p> 根據(jù)頻率計(jì)的設(shè)計(jì)要求,我們可將整個(gè)電路系統(tǒng)劃分為幾個(gè)基本模塊,如圖2.3所示。各模塊的實(shí)現(xiàn)均有幾種不同的設(shè)計(jì)方案。</p><p> 圖2.3 頻率計(jì)組成模塊框圖</p><p> 第三章 硬件電路設(shè)計(jì)</p><p><b>
32、 3.1系統(tǒng)的組成</b></p><p> 等精度數(shù)字頻率計(jì)涉及到的計(jì)算包括加、減、乘、除,耗用的資源比較大,用一般中小規(guī)模CPLD/FPGA芯片難以實(shí)現(xiàn)。因此,我們選擇單片機(jī)和CPLD/FPGA的結(jié)合來(lái)實(shí)現(xiàn)。電路系統(tǒng)組成框圖如圖3.1所示,其中單片機(jī)完成整個(gè)測(cè)量電路的測(cè)試控制、數(shù)據(jù)處理和顯示輸出;CPLD/FPGA完成各種測(cè)試功能;鍵盤(pán)信號(hào)由AT89C51單片機(jī)進(jìn)行處理,它從CPLD/FPGA讀
33、回計(jì)數(shù)數(shù)據(jù)并進(jìn)行運(yùn)算,向顯示電路輸出測(cè)量結(jié)果;顯示器電路采用七段LED動(dòng)態(tài)顯示,由一個(gè)個(gè)74HC138芯片和一個(gè)74HC573驅(qū)動(dòng)數(shù)碼管。具體的系統(tǒng)組成框圖如圖3.1所示。</p><p> 圖3.1 系統(tǒng)的組成框圖</p><p> 3.2 系統(tǒng)的基本工作方式</p><p> (1) P0口是單片機(jī)與FPGA的數(shù)據(jù)傳送通信口,P3口用于鍵盤(pán)掃描,實(shí)現(xiàn)各測(cè)
34、試功能的轉(zhuǎn)換;P1口為雙向控制口。P2口為L(zhǎng)ED的并行顯示控制口。系統(tǒng)設(shè)置5個(gè)功能鍵:占空比、脈寬、周期、頻率和復(fù)位。</p><p> (2) 5個(gè)LED數(shù)碼管組成測(cè)量數(shù)據(jù)顯示器,另一個(gè)獨(dú)立的數(shù)碼管用于狀態(tài)顯示。</p><p> (3) BCLK為測(cè)頻標(biāo)準(zhǔn)頻率50 MHz信號(hào)輸入端,由晶體振蕩源電路提供。</p><p> (4) 待測(cè)信號(hào)經(jīng)放大整形后
35、輸入CPLD的TCLK。</p><p> 3.3 CPLD測(cè)頻專用模塊</p><p> 3.3.1 CPLD的結(jié)構(gòu)與功能介紹</p><p> CPLD(Complex Programmable Logic Device)復(fù)雜可編程邏輯器件,是從PAL和GAL器件發(fā)展出來(lái)的器件,相對(duì)規(guī)模大,結(jié)構(gòu)復(fù)雜,屬于大規(guī)模集成電路范圍。是一種用戶根據(jù)各自需要而自行構(gòu)造
36、邏輯功能的數(shù)字集成電路。其基本設(shè)計(jì)方法是借助集成開(kāi)發(fā)軟件平臺(tái),用原理圖、硬件描述語(yǔ)言等方法,生成相應(yīng)的目標(biāo)文件,通過(guò)下載電纜將代碼傳送到目標(biāo)芯片中,實(shí)現(xiàn)設(shè)計(jì)的數(shù)字系統(tǒng)。</p><p> 相對(duì)于PAL和GAL器件來(lái)說(shuō),它具有編程靈活、集成度高、設(shè)計(jì)開(kāi)發(fā)周期短、適用范圍寬、開(kāi)發(fā)工具先進(jìn)、設(shè)計(jì)制造成本低、對(duì)設(shè)計(jì)者的硬件經(jīng)驗(yàn)要求低、標(biāo)準(zhǔn)產(chǎn)品無(wú)需測(cè)試、保密性強(qiáng)、價(jià)格大眾化等特點(diǎn),可實(shí)現(xiàn)較大規(guī)模的電路設(shè)計(jì),因此被廣泛應(yīng)用
37、于產(chǎn)品的原型設(shè)計(jì)和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。</p><p> 3.3.2 CPLD測(cè)頻專用模塊邏輯設(shè)計(jì)</p><p> 利用VHDL設(shè)計(jì)的測(cè)頻模塊邏輯結(jié)構(gòu)如圖3.2所示,其中有關(guān)的接口信號(hào)規(guī)定如下:</p><p> (1) TF(P2.7):TF=0時(shí)等精度測(cè)頻;TF=1時(shí)測(cè)脈寬。</p><p> (2)
38、CLR/TRIG(P2.6):當(dāng)TF=0時(shí)系統(tǒng)全清零功能;當(dāng)TF=1時(shí)CLRTRIG的上跳沿將啟動(dòng)CNT2,進(jìn)行脈寬測(cè)試計(jì)數(shù)。</p><p> (3) ENDD(P2.4):脈寬計(jì)數(shù)結(jié)束狀態(tài)信號(hào),ENDD=1計(jì)數(shù)結(jié)束。</p><p> (4) CHOICE(P3.2):自校/測(cè)頻選擇,CHOICE=1測(cè)頻;CHOICE=0自校。</p><p> (5
39、) START(P2.5):當(dāng)TF=0時(shí),作為預(yù)置門(mén)閘,門(mén)寬可通過(guò)鍵盤(pán)由單片機(jī)控制,START=1時(shí)預(yù)置門(mén)開(kāi);當(dāng)TF=1時(shí),START有第二功能,此時(shí),當(dāng)START=0時(shí)測(cè)負(fù)脈寬,當(dāng)START=1時(shí)測(cè)正脈寬。利用此功能可分別獲得脈寬和占空比數(shù)據(jù)。</p><p> (6) EEND(P2.3):等精度測(cè)頻計(jì)數(shù)結(jié)束狀態(tài)信號(hào),EEND=0時(shí)計(jì)數(shù)結(jié)束。</p><p> (7) SEL
40、[2..0](P2.2,P2.1,P2.0):計(jì)數(shù)值讀出選通控制。</p><p> 圖3.2 測(cè)頻模塊邏輯圖</p><p> 3.3.2.1測(cè)頻/測(cè)周期的實(shí)現(xiàn)</p><p> (1) 令TF=0,選擇等精度測(cè)頻,然后在CONTRL的CLR端加一正脈沖信號(hào)以完成測(cè)試電路狀態(tài)的初始化。</p><p> (2) 由預(yù)置門(mén)控信號(hào)將CO
41、NTRL的START端置高電平,預(yù)置門(mén)開(kāi)始定時(shí),此時(shí)由被測(cè)信號(hào)的上沿打開(kāi)計(jì)數(shù)器CNT1進(jìn)行計(jì)數(shù),同時(shí)使標(biāo)準(zhǔn)頻率信號(hào)進(jìn)入計(jì)數(shù)器CNT2。</p><p> (3) 預(yù)置門(mén)定時(shí)結(jié)束信號(hào)把CONTRL的START端置為低電平(由單片機(jī)來(lái)完成),在被測(cè)信號(hào)的下一個(gè)脈沖的上沿到來(lái)時(shí),CNT1停止計(jì)數(shù),同時(shí)關(guān)斷CNT2對(duì)fs的計(jì)數(shù)。</p><p> (4) 計(jì)數(shù)結(jié)束后,CONTRL的EEND端將
42、輸出低電平來(lái)指示測(cè)量計(jì)數(shù)結(jié)束,單片機(jī)得到此信號(hào)后,即可利用ADRC(P2.2)、ADRB(P2.1)、ADRA(P2.0)分別讀回CNT1和CNT2的計(jì)數(shù)值,并根據(jù)等精度測(cè)量公式進(jìn)行運(yùn)算,計(jì)算出被測(cè)信號(hào)的頻率或周期值。</p><p> 3.3.2.2控制部件設(shè)計(jì)</p><p> 如圖3.2.2所示,當(dāng)D觸發(fā)器的輸入端START為高電平時(shí),若FIN端來(lái)一個(gè)上升沿,則Q端變?yōu)楦唠娖?,?dǎo)
43、通FIN→CLK1和FSD→CLK2,同時(shí)EEND被置為高電平作為標(biāo)志;當(dāng)D觸發(fā)器的輸入端START為低電平時(shí),若FIN端輸入一個(gè)脈沖上沿,則FIN→CLK1與FSD→CLK2的信號(hào)通道被切斷。</p><p> 圖3.2.2測(cè)頻與測(cè)周期控制部分電路</p><p> 3.3.2.3計(jì)數(shù)部件設(shè)計(jì)</p><p> 圖3.2中的計(jì)數(shù)器CNT1/CNT2是32位二
44、進(jìn)制計(jì)數(shù)器,通過(guò)DSEL模塊的控制,單片機(jī)可分4次將其32位數(shù)據(jù)全部讀出。</p><p> 3.3.2.4脈沖寬度測(cè)量和占空比測(cè)量模塊設(shè)計(jì)</p><p> 根據(jù)上述脈寬測(cè)量原理,設(shè)計(jì)如圖3.2.3(CONTRL2)所示的電路原理示意圖。</p><p> 圖3.2.3脈沖寬度測(cè)量原理圖</p><p> 測(cè)量脈沖寬度的工作步驟如下
45、:</p><p> (1) 向CONTRL2的CLR端送一個(gè)脈沖以便進(jìn)行電路的工作狀態(tài)初始化。</p><p> (2) 將GATE的CNL端置高電平,表示開(kāi)始脈沖寬度測(cè)量,這時(shí)CNT2的輸入信號(hào)為FSD。</p><p> (3) 在被測(cè)脈沖的上沿到來(lái)時(shí),CONTRL2的PUL端輸出高電平,標(biāo)準(zhǔn)頻率信號(hào)進(jìn)入計(jì)數(shù)器CNT2。</p><p
46、> (4) 在被測(cè)脈沖的下沿到來(lái)時(shí),CONTRL2的PUL端輸出低電平,計(jì)數(shù)器CNT2被關(guān)斷。</p><p> (5) 由單片機(jī)讀出計(jì)數(shù)器CNT2的結(jié)果,并通過(guò)上述測(cè)量原理公式計(jì)算出脈沖寬度。CONTRL2子模塊的主要特點(diǎn)是:電路的設(shè)計(jì)保證了只有CONTRL2被初始化后才能工作,否則PUL輸出始終為零。</p><p> 只有在先檢測(cè)到上沿后PUL才為高電平,然后在檢測(cè)到下沿
47、時(shí),PUL輸出為低電平;ENDD輸出高電平以便通知單片機(jī)測(cè)量計(jì)數(shù)已經(jīng)結(jié)束;如果先檢測(cè)到下沿,PUL并無(wú)變化;在檢測(cè)到上沿并緊接一個(gè)下沿后,CONTRL2不再發(fā)生變化直到下一個(gè)初始化信號(hào)到來(lái)。占空比的測(cè)量方法是通過(guò)測(cè)量脈沖寬度記錄CNT2的計(jì)數(shù)值N1,然后將輸入信號(hào)反相,再測(cè)量脈沖寬度,測(cè)得CNT2計(jì)數(shù)值N2則可以計(jì)算出:</p><p> 3.4 單片機(jī)主控模塊硬件電路設(shè)計(jì)</p><p&g
48、t; 3.4.1 AT89C51單片機(jī)</p><p> AT89C51單片機(jī)是一種帶4K字節(jié)FLASH存儲(chǔ)器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。
49、由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,它為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。</p><p> AT89C51內(nèi)部主要包含以下部件:</p><p> ?。?)一個(gè)8位CPU; (2)一個(gè)片內(nèi)振蕩器及時(shí)鐘電路; (3)4K字節(jié)ROM程序存儲(chǔ)器: (4)128字節(jié)RAM數(shù)據(jù)存儲(chǔ)器; (5)兩個(gè) 16
50、位定時(shí)器/計(jì)數(shù)器; (6)可尋址 64K外部數(shù)據(jù)存儲(chǔ)器和 64K外部程序存儲(chǔ)器空間的控制電路; (7)32條可編程的I/O線(四個(gè)6位并行I/O端口) (8)一個(gè)可編程全雙工串行口; (9)具有五個(gè)中斷源、兩個(gè)優(yōu)先級(jí)嵌套中斷結(jié)構(gòu)。</p><p> AT89C51單片機(jī)各個(gè)管腳作用:</p><p> AT89C51單片機(jī)各個(gè)管腳如圖3.4.1所示:</p>
51、<p> 圖3.4.1 AT89C51單片機(jī)最小系統(tǒng)及管腳圖</p><p> VCC/GND:供電電源。</p><p> P0口:可以被定義為數(shù)據(jù)/地址的低八位,能夠用于外部程序/數(shù)據(jù)存儲(chǔ)器。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。</p><p> P1口:標(biāo)準(zhǔn)輸入輸出I/
52、O,P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 </p><p> P2口:既可用于標(biāo)準(zhǔn)輸入輸出I/O,也可用于外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器訪問(wèn)時(shí)的高八位地址。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。</p><p> P3口:既可以作標(biāo)準(zhǔn)輸入輸出I/O,也可作為AT89C51的一些特殊功能口: </p&
53、gt;<p><b> 管腳 備選功能</b></p><p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)</p><p> P3.4 T0(記時(shí)器0外部輸入)<
54、;/p><p> P3.5 T1(記時(shí)器1外部輸入)</p><p> P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)</p><p> P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> ALE/PROG:當(dāng)訪問(wèn)
55、外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。</p><p> PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。</p><p> /EA
56、/ VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> XTAL2:來(lái)自反向振
57、蕩器的輸出。</p><p> 74HC138譯碼器</p><p><b> 邏輯原理圖:</b></p><p> 圖3.4.2 74HC138譯碼器管腳圖</p><p> 3線-8線譯碼器74HC138譯碼器的功能表:</p><p> 表1 74HC138譯碼器功能表</
58、p><p> 無(wú)論從邏輯圖還是功能表我們都可以看到74LS138的八個(gè)輸出引腳,任何時(shí)刻要么全為高電平1—芯片處于不工作狀態(tài),要么只有一個(gè)為低電平0,其余7個(gè)輸出引腳全為高電平1。本次設(shè)計(jì)采用74LS138譯碼器作為L(zhǎng)ED數(shù)碼管的驅(qū)動(dòng)。</p><p> 3.4.3七段LED數(shù)碼管</p><p> 七段LED數(shù)碼管的引腳如下圖所示</p><
59、p> 圖3.4.3 七段LED數(shù)碼管管腳圖</p><p> 七段LED數(shù)碼管是利用7個(gè)LED外加一個(gè)小數(shù)點(diǎn)的LED組合而成的顯示設(shè)備,可顯示0~9等10個(gè)數(shù)字和小數(shù)點(diǎn),使用非常廣泛,這類數(shù)碼管可以分為共陽(yáng)極和共陰極兩種,共陽(yáng)極就是把所有的陽(yáng)極連接到共同點(diǎn)com,共陰極就是把所有的LED的一級(jí)連接到共同點(diǎn)com,本次設(shè)計(jì)采用共陽(yáng)極七段LED數(shù)碼管顯示。</p><p> 3.4
60、.4 74HC573鎖存器</p><p> 圖3.4.4 74HC573鎖存器</p><p> 3.4.5 單片機(jī)與LED顯示模塊的設(shè)計(jì)</p><p> 本次設(shè)計(jì)采用六個(gè)共陰極數(shù)碼管,一個(gè)鎖存器與一個(gè)譯碼器構(gòu)成顯示模塊,本次設(shè)計(jì)采用動(dòng)態(tài)顯示模式,其中P2.0~P2.7口為數(shù)碼管顯示內(nèi)容的輸出口,通過(guò)一個(gè)74HC573鎖存器與六個(gè)LED數(shù)碼管連接,P3.5
61、~P3.7為數(shù)碼管顯示選擇控制端,通過(guò)一個(gè)74HC138與數(shù)碼管的公共陰極相連,用來(lái)控制數(shù)碼管的選通與斷開(kāi)。具體的連接圖如圖3.4.5所示。</p><p> 圖3.4.5 單片機(jī)顯示模塊</p><p> 3.4.6 單片機(jī)鍵盤(pán)控制模塊的設(shè)計(jì)</p><p> 本次設(shè)計(jì)共有五個(gè)按鍵,分別為復(fù)位、占空比、脈寬、周期和頻率。其中復(fù)位鍵直接與單片機(jī)的復(fù)位引腳相連,
62、其余四個(gè)按鍵分別與單片機(jī)的P3.0~P3.3口相連,用來(lái)控制占空比、脈寬、周期和頻率的測(cè)量。具體的硬件連接如圖3.4.6所示。</p><p> 圖3.4.6 單片機(jī)鍵盤(pán)控制模塊</p><p> 第四章 單片機(jī)控制與運(yùn)算程序的設(shè)計(jì)</p><p> 4.1程序流程圖及相關(guān)程序</p><p> 4.1.1主程序流程圖</p&g
63、t;<p> ORG 0000H</p><p> LJMP MAIN</p><p> ORG 0030H</p><p><b> MAIN : </b></p><p> CLEAR: MOV R0, #00H</p><p> MOV R1, #1
64、28</p><p> MOV A, #00H</p><p> L1: MOV @R0, A</p><p><b> INC R0</b></p><p> DJNZ R1, L1</p><p> MOV SP, #60H</p><p> M
65、OV P2, #00H ; 控制信號(hào)初始化為0</p><p> SETB CHOICE</p><p> LCALL NL0 ; 7個(gè)數(shù)碼管熄滅</p><p> MOV LED8, #13H ; 開(kāi)始顯示“P.”</p><p> MOV LED7, #0CFH</p><p>
66、DIR: LCALL DISP ; 調(diào)顯示子程序</p><p> KKE1: LCALL KKEYII ; 調(diào)鍵掃子程序</p><p> KK0: CJNE A, #00H, KK1</p><p><b> KKK0: </b></p><p> LCALL TESTF
67、; 調(diào)用測(cè)頻子程序</p><p> LCALL KKEYI</p><p> LCALL DELAY</p><p> LCALL DELAY</p><p> JB 28H.4, KK0</p><p><b> SJMP KKK0</b></p><p>
68、 KK1: CJNE A, #01H, KK2</p><p><b> KKKK1: </b></p><p> SETB 28H.1</p><p> LCALL TESTT; 調(diào)測(cè)周期子程序</p><p> CLR 28H.1</p><p> LCALL KKE
69、YI</p><p> JB 28H.4, KK0</p><p> SJMP KKKK1</p><p> KK2: CJNE A, #02H, KK3</p><p><b> KKKK2: </b></p><p> SETB 28H.2</p><p&
70、gt; LCALL TESPW; 調(diào)用測(cè)脈寬子程序</p><p><b> CLR 28H.2</b></p><p> LCALL KKEYI</p><p> JB 28H.4, KK0</p><p> SJMP KKKK2</p><p> KK3: CJNE
71、A, #03H, KK4</p><p><b> KKKK3: </b></p><p> SETB 28H.2</p><p><b> CLR 28H.1</b></p><p> LCALL TESZKB; 調(diào)用測(cè)占空比子程序</p><p><b&
72、gt; CLR 28H.2</b></p><p> LCALL KKEYI</p><p> JB 28H.4, KK0</p><p> SJMP KKKK3</p><p> KK4: SJMP KKE1</p><p> 4.1.2頻率、周期計(jì)數(shù)子程序流程圖</p>
73、<p> 4.1.3鍵掃子程序流程圖</p><p> 4.1.4測(cè)周期子程序流程圖</p><p> 4.1.5測(cè)頻率子程序流程圖</p><p> 4.1.6測(cè)脈寬子程序流程圖</p><p><b> 結(jié) 論</b></p><p> 該系統(tǒng)有軟件設(shè)計(jì)與硬件設(shè)計(jì),完成實(shí)
74、驗(yàn)的仿真分析和驗(yàn)證,各項(xiàng)功能都能達(dá)到指定目標(biāo)。在設(shè)計(jì)中,綜合運(yùn)用了MAX+PLUS II, Wav6000, Protel DXP等軟件,軟件編程時(shí)運(yùn)用VHDL語(yǔ)言和匯編語(yǔ)言,畫(huà)圖時(shí)用到了Word畫(huà)圖等工具。本系統(tǒng)的優(yōu)點(diǎn)是使以前的測(cè)量頻率方法與測(cè)量周期法缺點(diǎn)得到了克服,可以在頻率的范圍內(nèi)變化,而且測(cè)量的精確度非常高。具有以下的特點(diǎn):</p><p> 1.系統(tǒng)整體的設(shè)計(jì)方面,單片機(jī)與FPGA/CPLD的優(yōu)點(diǎn)得到
75、了充分的發(fā)揮,把測(cè)控的信號(hào)分發(fā)給FPGA/CPLD,不但使頻測(cè)對(duì)速度方面和多I/O口的要求得到了保障,同時(shí)也使單片機(jī)人機(jī)接口與控制運(yùn)算得到發(fā)揮,可以比較簡(jiǎn)單地完成鍵盤(pán)與顯示數(shù)據(jù)的處理。</p><p> 2.系統(tǒng)測(cè)頻的方面,根據(jù)等精確度測(cè)量頻率法的優(yōu)點(diǎn),使該系統(tǒng)也含有如下優(yōu)點(diǎn):①相對(duì)的誤差和被測(cè)量頻率大小沒(méi)有關(guān)系;②增加TPR與Fs可以增大Ns,以此來(lái)降低誤差和測(cè)量精度。</p><p>
76、; 3.在顯示方面,首先使用串行動(dòng)態(tài)顯示,這樣節(jié)約了I/O口,簡(jiǎn)化了驅(qū)動(dòng)電路的設(shè)計(jì),系統(tǒng)擴(kuò)展:由于時(shí)間和實(shí)驗(yàn)條件所限,本系統(tǒng)只是作了在實(shí)驗(yàn)箱上測(cè)試,在硬件電路實(shí)現(xiàn)的方面還存在著一些不足,需要進(jìn)一步的完善和提高。</p><p> 4.在使用工具方面,我在設(shè)計(jì)過(guò)程中,綜合運(yùn)用了一些當(dāng)前比較主流的設(shè)計(jì)軟件和器件。</p><p> ?。?) PCB 設(shè)計(jì)軟件:把舊的Protel99SE 升
77、級(jí)為Protel DXP;</p><p> (2) 開(kāi)發(fā)工具軟件:使用MAXPLUSII 軟件</p><p> 5.設(shè)計(jì)并制作系統(tǒng)工作的外圍電路:系統(tǒng)用方波信號(hào)源、直流工作電源。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 江力. 單片機(jī)原理與應(yīng)用技術(shù)[M]. 北京:清華大學(xué)出
78、版社,2006.</p><p> [2] 譚會(huì)生,張昌凡. EDA技術(shù)及應(yīng)用[M]. 陜西:西安電子科技大學(xué)出版社,2001.9</p><p> [3] 潘松,黃繼業(yè). EDA技術(shù)與VHDL[M]. 北京:清華大學(xué)出版社,2006.11</p><p> [4] 楊志忠著. 數(shù)字電子技術(shù)[M]. 高等教育出版社,2001.1</p&
79、gt;<p> [5] 孫江宏等編. Protel99電路設(shè)計(jì)與應(yīng)用[M]. 機(jī)械工業(yè)出版社,2001.2</p><p> [6] 趙世強(qiáng)等編. 電子電路EDA技術(shù)[M]. 西安電子科技大學(xué)出版社,2002.5</p><p> [7] 肖景和著. 數(shù)字集成電路應(yīng)用精粹[M]. 人民郵電出版社,2002.6</p><p>
80、 [8] 宋萬(wàn)杰,羅平. CPLD技術(shù)及其應(yīng)用[M]. 西安電子科技大學(xué)出版社,2000.6 </p><p> [9] 吳金戌等著. 8051單片機(jī)實(shí)踐與應(yīng)用[M]. 清華大學(xué)出版社,2004.5 </p><p> [10] 甘歷. VHDL應(yīng)用與開(kāi)發(fā)實(shí)踐[J]. 科學(xué)出版社,2003.5</p><p> [11] 李忠波 袁宏等著
81、. 電子設(shè)計(jì)與仿真計(jì)數(shù)[J]. 機(jī)械工業(yè)出版社,2004.7</p><p> [12] 徐大誠(chéng)等. 微型計(jì)算機(jī)控制技術(shù)及應(yīng)用[M]. 北京高等教育出版社,2003.5</p><p> [13] Electronic. circuits and applications. Bernard Grob. Gregg Division, McGraw-Hill, 1982
82、.</p><p> [14] Electrons. A.L.Kitaigorodsky. Mir Pub. 1981. </p><p> [15] Electrical engineering. A.S. Kasatki Translated from the Russian by Boris V. Kuznetsov. Mir, 1983.</p>&l
83、t;p><b> 致 謝</b></p><p> 經(jīng)過(guò)將近四個(gè)月的時(shí)間,終于把這篇畢業(yè)論文寫(xiě)完。在我學(xué)位論文即將結(jié)束之際,我想對(duì)在我大學(xué)四年學(xué)習(xí)中曾給予我關(guān)心和幫助的老師和同學(xué)們表示衷心的感謝。尤其要強(qiáng)烈的感謝我的導(dǎo)師**老師,在整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,*老師從軟硬件方面都給我提出了很多寶貴的意見(jiàn),才使我的設(shè)計(jì)工作能得以順利進(jìn)行。*老師孜孜以求的求學(xué)精神和嚴(yán)謹(jǐn)求實(shí)的科研作風(fēng),不但對(duì)我
84、進(jìn)行了無(wú)私的指導(dǎo)和幫助,并不厭其煩的幫助我進(jìn)行論文的修改和改進(jìn)。在整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,使我不僅在學(xué)術(shù)上有了很大的進(jìn)步,而且在人生觀上也產(chǎn)生了極大的影響,為我今后的做人辦事樹(shù)立了良好的榜樣。另外,在校逸夫圖書(shū)館查閱資料的時(shí)候,圖書(shū)館的老師也給我提供了很多支持與幫助。在此向幫助和指導(dǎo)過(guò)我的各位老師表示最中心的感謝!</p><p> 其次,電子信息工程系的各位同學(xué)在學(xué)習(xí)上都給了我莫大的幫助,在我寫(xiě)論文的過(guò)程中給予
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于cpld的頻率計(jì)設(shè)計(jì) 設(shè)計(jì)
- 基于CPLD的頻率計(jì)的設(shè)計(jì).pdf
- 頻率計(jì)畢業(yè)設(shè)計(jì)
- cpld技術(shù)頻率計(jì)設(shè)計(jì)及制作
- 畢業(yè)設(shè)計(jì)---采用單片計(jì)設(shè)計(jì)頻率計(jì)
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)-- 數(shù)字頻率計(jì)設(shè)計(jì)
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)-- 數(shù)字頻率計(jì)設(shè)計(jì)
- 基于單片機(jī)的頻率計(jì)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----基于單片機(jī)的頻率計(jì)設(shè)計(jì)
- 基于CPLD的微波頻率計(jì)研究.pdf
- 畢業(yè)設(shè)計(jì)--基于fpga的等精度頻率計(jì)的設(shè)計(jì)
- 基于單片機(jī)的頻率計(jì)設(shè)計(jì)-畢業(yè)設(shè)計(jì)(論文)
- 數(shù)字頻率計(jì)設(shè)計(jì)-畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的頻率計(jì)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---數(shù)字頻率計(jì)
- 畢業(yè)設(shè)計(jì)--數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--數(shù)字頻率計(jì)
- 畢業(yè)設(shè)計(jì)----數(shù)字頻率計(jì)的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----數(shù)字頻率計(jì)
評(píng)論
0/150
提交評(píng)論