版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 電子工程系</b></p><p> 畢 業(yè) 設(shè) 計(jì) 開 題 報(bào) 告</p><p><b> 中文摘要</b></p><p> 在電子測(cè)量領(lǐng)域中,頻率測(cè)量的精確度是最高的,可達(dá)10-13數(shù)量級(jí)。因此,在生產(chǎn)過程中許多物理量,例如溫度、壓力、流量、液位、PH值、振動(dòng)、位移、速度、加速度
2、,乃至各種氣體的百分比成分等均用傳感器轉(zhuǎn)換成信號(hào)頻率,然后用數(shù)字頻率計(jì)來測(cè)量,以提高精確度。</p><p> 本方案主要以信號(hào)輸入和放大電路、單片機(jī)模塊、分頻模塊及顯示電路模塊組成。AT89C52單片機(jī)是頻率計(jì)的控制核心,來完成它待測(cè)信號(hào)的計(jì)數(shù),譯碼,顯示以及對(duì)分頻比的控制。利用它內(nèi)部的定時(shí)/計(jì)數(shù)器完成待測(cè)信號(hào)頻率的測(cè)量。</p><p> 在整個(gè)設(shè)計(jì)過程中,所制作的頻率計(jì)采用外部分
3、頻,實(shí)現(xiàn)10Hz~10KHz的頻率測(cè)量,而且可以實(shí)現(xiàn)量程自動(dòng)切換流程。以AT89C52單片機(jī)為核心,通過單片機(jī)內(nèi)部定時(shí)/計(jì)數(shù)器的門控時(shí)間,方便對(duì)頻率計(jì)的測(cè)量。其待測(cè)頻率值使用四位共陰極數(shù)碼管顯示,并可以自動(dòng)切換量程,單位分別由3個(gè)發(fā)光二極管指示。本次采用單片機(jī)技術(shù)設(shè)計(jì)一種數(shù)字顯示的頻率計(jì),具有測(cè)量準(zhǔn)確度高,響應(yīng)速度快,體積小等優(yōu)點(diǎn)。</p><p> 關(guān)鍵詞: 頻率計(jì) 單片機(jī) 計(jì)數(shù)器 量程自動(dòng)切換 <
4、;/p><p><b> ABSTRACT</b></p><p> In the field of electronic measuring, frequency measurement is the most accurate, The accuracy is up to 10-13 orders of magnitude. Therefore, many phy
5、sical measure in the production line, such as the temperature, pressure and discharge, liquid and PH value, vibration and move, speed, acceleration, even as various gaseous percentage composition etc. all use Sensor to c
6、onvert into signal frequency, then measure with the digital frequency meter raise the accuracy.</p><p> This project is mainly formed by signal importation and enlarge an electric circuit and module, frequ
7、ency division module, the display circuit module. AT89C52 MCU is the controlling core of the frequency meter, it completes the count of the signal under testing, decoding, display and the frequency division ratio. Using
8、its internal timer and counter to complete measuring the signal under testing.</p><p> In the design process,the produced frequency meter uses external dividing frequency, to achieve 1Hz ~ 1MHz frequency me
9、asurements, and could achieve the process that switch the flow automatically. Regard AT89C52 as the core, with the MCU internal timing / counter gated time, it can be easy for measuring frequency meter. The frequency to
10、be measured displays with four common cathode, and it can automatically switch range,the unit consists of 3 light-emitting diode indicates. The design uses of te</p><p> KEY WORDS:Frequency Meter;Single Chi
11、p;Counter Range;Automatically Switch</p><p><b> 目 錄</b></p><p><b> 第一章 前言1</b></p><p> 1.1 頻率計(jì)概述1</p><p> 1.2 頻率計(jì)的發(fā)展與應(yīng)用1</p>&l
12、t;p> 1.3 頻率計(jì)設(shè)計(jì)任務(wù)與要求3</p><p> 第二章 系統(tǒng)整體方案設(shè)計(jì)4</p><p> 2.1測(cè)頻的原理4</p><p> 2.2設(shè)計(jì)任務(wù)的分析及方案的論證5</p><p> 第三章 硬件電路設(shè)計(jì)7</p><p> 3.1 AT89C52主控制器模塊7</p&
13、gt;<p> 3.1.1 AT89C52概述7</p><p> 3.1.2 AT89C52特殊功能7</p><p> 3.1.3 AT89C52開發(fā)板原理圖7</p><p> 3.2分頻模塊設(shè)計(jì)8</p><p> 3.2.1分頻電路分析8</p><p> 3.2.2 74
14、LS161芯片介紹9</p><p> 3.2.3 74LS151芯片介紹10</p><p> 3.2.4 分頻電路設(shè)計(jì)11</p><p> 3.3 顯示模塊12</p><p> 3.3.1數(shù)碼管介紹12</p><p> 3.3.2 顯示模塊電路圖12</p><p&g
15、t; 第四章 系統(tǒng)的軟件設(shè)計(jì)13</p><p> 4.1軟件模塊設(shè)計(jì)13</p><p> 4.2中斷服務(wù)子程序14</p><p> 4.3顯示子程序15</p><p> 4.4量程檔自動(dòng)轉(zhuǎn)換子程序16</p><p> 4.5應(yīng)用軟件簡(jiǎn)介17</p><p>
16、4.5.1 Keil簡(jiǎn)介17</p><p> 4.5.2調(diào)試步驟17</p><p> 第五章 實(shí)物制作與調(diào)試19</p><p> 5.1實(shí)物制作19</p><p> 5.2 硬件的調(diào)試19</p><p> 5.3 結(jié)果分析19</p><p><b>
17、 第六章 總結(jié)20</b></p><p><b> 參考文獻(xiàn)21</b></p><p><b> 致 謝22</b></p><p><b> 附 錄23</b></p><p><b> 前言</b></
18、p><p> 頻率測(cè)量是電子學(xué)測(cè)量中最為基本的測(cè)量之一。由于頻率信號(hào)抗干擾性強(qiáng),易于傳輸,因此可以獲得較高的測(cè)量精度。隨著數(shù)字電子技術(shù)的發(fā)展,頻率測(cè)量成為一項(xiàng)越來越普遍的工作,測(cè)頻原理和測(cè)頻方法的研究正受到越來越多的關(guān)注。</p><p><b> 頻率計(jì)概述</b></p><p> 數(shù)字頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可
19、缺少的測(cè)量?jī)x器。它是一種用十進(jìn)制數(shù)字顯示被測(cè)信號(hào)頻率的數(shù)字測(cè)量?jī)x器。它的基本功能是測(cè)量正弦信號(hào)、方波信號(hào)及其他各種單位時(shí)間內(nèi)變化的物理量。在進(jìn)行模擬、數(shù)字電路的設(shè)計(jì)、安裝、調(diào)試過程中,由于其使用十進(jìn)制數(shù)顯示,測(cè)量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計(jì)。傳統(tǒng)的頻率計(jì)采用測(cè)頻法測(cè)量頻率,通常由組合電路和時(shí)序電路等大量的硬件電路組成,產(chǎn)品不但體積大,運(yùn)行速度慢而且測(cè)量低頻信號(hào)不準(zhǔn)確。在數(shù)字電路中,數(shù)字頻率計(jì)屬于時(shí)序電路,它主要由具有記憶功
20、能的觸發(fā)器構(gòu)成,計(jì)算機(jī)及各種數(shù)字儀表中,都得到了廣泛的應(yīng)用。在電子技術(shù)中,頻率是最基本的參數(shù)之一,并且與許多電參量的測(cè)量方案、測(cè)量結(jié)果都有十分密切的關(guān)系,因此頻率的測(cè)量就顯得尤為重要。測(cè)量頻率的方法有多種,其中電子計(jì)數(shù)器測(cè)量頻率具有使用方便、測(cè)量迅速,以及便于實(shí)現(xiàn)測(cè)量過程自動(dòng)等優(yōu)點(diǎn),是頻率測(cè)量的重要手段之一。本次采用單片機(jī)技術(shù)設(shè)計(jì)一種數(shù)字顯示的頻率計(jì),測(cè)量準(zhǔn)確度高,響應(yīng)速度快,體積小等優(yōu)點(diǎn)。</p><p>&l
21、t;b> 頻率計(jì)的發(fā)展與應(yīng)用</b></p><p> 隨著科學(xué)技術(shù)的發(fā)展,用戶對(duì)電子計(jì)數(shù)器也提出了新的要求。對(duì)于抵擋產(chǎn)品要求使用操作方便,量程(足夠)寬,可靠性能搞,低價(jià)格。而對(duì)于中高檔產(chǎn)品,則要求有高分辨率,高精度,搞穩(wěn)定度,高測(cè)量速率,除通常通用計(jì)數(shù)器所具有的功能外,還要有數(shù)據(jù)處理功能,時(shí)域分析功能等等,或者包含電壓測(cè)量等其他功能。這些要求有的已經(jīng)實(shí)現(xiàn)或者部分實(shí)現(xiàn),但要真正完美的實(shí)現(xiàn)這
22、些目標(biāo),對(duì)于生產(chǎn)廠家來說,還有許多工作要做,而不是表面看來似乎發(fā)展到頭了。</p><p> 由于微電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,頻率計(jì)都在不斷地進(jìn)步著,靈敏度不斷提高,頻率范圍不斷擴(kuò)大,功能不斷地增加。在測(cè)試通訊、微波器件或產(chǎn)品時(shí),通常都是較復(fù)雜的信號(hào),如含有復(fù)雜頻率成分、調(diào)制的或含有未知頻率分量的、頻率固定的或變化的、純凈的或疊加有干擾的等等。為了能正確地測(cè)量不同類型的信號(hào),必須了解待測(cè)信號(hào)特性和各種頻率測(cè)量
23、儀器的性能。微波計(jì)數(shù)器一般使用類型頻譜分析儀的分頻或混頻電路,另外還包含多個(gè)時(shí)間基準(zhǔn)、合成器、中頻放大器等。雖然所有的微波計(jì)數(shù)器都是用來完成技術(shù)任務(wù)的,但制造廠家都有各自的一套復(fù)雜的計(jì)數(shù)器的設(shè)計(jì)、使得不同型號(hào)的計(jì)數(shù)器性能和價(jià)格會(huì)有所差別,比如說一些計(jì)數(shù)器可以測(cè)量脈沖參數(shù),并提供類似于頻率分析儀的頻幕顯示,對(duì)這些功能具有不同功能不同規(guī)格的眾多儀器。我們應(yīng)該視測(cè)試需要正確的選擇,以達(dá)到最經(jīng)濟(jì)和最佳的應(yīng)用效果。</p><
24、p> 數(shù)字電路制造工業(yè)的進(jìn)步,使得系統(tǒng)設(shè)計(jì)人員能在更小的空間實(shí)現(xiàn)更多的功能,從而提高系統(tǒng)可靠性和速度。現(xiàn)如今,數(shù)字頻率計(jì)已經(jīng)不僅僅是測(cè)量信號(hào)頻率的裝置了,用它還可以測(cè)量方波脈沖的脈寬。在人們的生活中頻率計(jì)也發(fā)揮著越來越重要的作用,比如用數(shù)字頻率計(jì)來監(jiān)控生產(chǎn)過程,這樣可以及時(shí)發(fā)現(xiàn)系統(tǒng)運(yùn)行中的異常情況,以便給人們爭(zhēng)取時(shí)間處理。</p><p> 除此之外,它還可以應(yīng)用于工業(yè)控制等其它領(lǐng)域。在傳統(tǒng)的電子測(cè)量?jī)x
25、器中,示波器在進(jìn)行頻率測(cè)量是頻率較低,誤差較大。頻率儀可以準(zhǔn)確的測(cè)量頻率并顯示被測(cè)信號(hào)的頻譜,但測(cè)量速度較慢,無法實(shí)時(shí)的跟蹤捕捉到被測(cè)信號(hào)的頻率變化。正是由于頻率計(jì)能夠快速準(zhǔn)確的捕捉到被測(cè)信號(hào)頻率的變化,因此頻率計(jì)擁有非常廣泛的引用范圍。在傳統(tǒng)生產(chǎn)制造企業(yè)中,頻率計(jì)被廣泛應(yīng)用在產(chǎn)線的生產(chǎn)測(cè)試中。頻率計(jì)能夠快速的捕捉到晶體振蕩器輸出的頻率變化,用于通過使用頻率計(jì)能夠迅速的發(fā)現(xiàn)有故障的晶振產(chǎn)品,確保產(chǎn)品質(zhì)量。在計(jì)量實(shí)驗(yàn)室中,頻率計(jì)被用來對(duì)各
26、種電子測(cè)量設(shè)備的本地振蕩器進(jìn)行校準(zhǔn)。在無線通訊測(cè)試中,頻率計(jì)既可以被用來對(duì)無線通訊基站的主時(shí)鐘進(jìn)行校準(zhǔn),還可以用來對(duì)電臺(tái)的跳幀信號(hào)進(jìn)行分析。</p><p> 對(duì)于頻率計(jì)的設(shè)計(jì)目前也有專用芯片可以實(shí)現(xiàn),如利用MAXIM公司的ICM7240來設(shè)計(jì)頻率計(jì)。但由于這種芯片的計(jì)數(shù)頻率比較低,遠(yuǎn)不能達(dá)到在一些場(chǎng)合需要測(cè)量很高的頻率要求,而測(cè)量精度也受到芯片本身的限制。提出的用AT8C52單片機(jī)設(shè)計(jì)頻率計(jì)的方法可以解決這些
27、問題,實(shí)現(xiàn)精度較高、等精度和寬范圍頻率計(jì)的設(shè)計(jì)。</p><p> 頻率計(jì)設(shè)計(jì)任務(wù)與要求</p><p><b> 任務(wù)</b></p><p> 目的在于設(shè)計(jì)出一個(gè)高頻寬(10Hz~10kHz),低誤差(誤差精度為1%)的時(shí)間參數(shù)測(cè)量系統(tǒng)。</p><p><b> 要求</b></
28、p><p> ?。?)測(cè)量范圍:10Hz - 10KHz</p><p> ?。?)測(cè)量誤差:不超過1%</p><p> ?。?)輸入波形:方波,幅度為5V</p><p> ?。?)工作電壓:直流3.8V,最高輸入電壓30V </p><p> 其中,頻率測(cè)量、周期測(cè)量應(yīng)實(shí)現(xiàn)電路實(shí)模型及相應(yīng)軟件的設(shè)計(jì)和調(diào)試,對(duì)于周期
29、脈沖信號(hào)占空比測(cè)量應(yīng)完成仿真電路設(shè)計(jì)。 </p><p><b> 系統(tǒng)整體方案設(shè)計(jì)</b></p><p><b> 2.1測(cè)頻的原理</b></p><p> 實(shí)現(xiàn)時(shí)間參數(shù)的數(shù)字化測(cè)量的儀器是電子計(jì)數(shù)器。對(duì)于電子計(jì)數(shù)器而言,測(cè)量頻率的實(shí)質(zhì)就是通過計(jì)數(shù)器記錄待測(cè)信號(hào)的周期變化的次數(shù),然后通過頻率的定義計(jì)算出待測(cè)信號(hào)
30、的頻率。</p><p> 已知頻率的測(cè)量表達(dá)式為:</p><p><b> f=N/T</b></p><p> 從其測(cè)量原理和頻率的數(shù)學(xué)表達(dá)式中不難看出,計(jì)數(shù)器測(cè)頻必須具備以下三個(gè)條件:</p><p> 測(cè)量是一個(gè)比較的過程,被測(cè)信號(hào)要和基準(zhǔn)信號(hào)作比較,必須有一個(gè)標(biāo)準(zhǔn)的單位時(shí)間。</p>&
31、lt;p> 為實(shí)現(xiàn)在單位時(shí)間內(nèi)對(duì)于被控信號(hào)的振動(dòng)次數(shù)的記錄,必須有一個(gè)控制電路。</p><p> 被測(cè)信號(hào)采樣后的量化由電子計(jì)數(shù)器完成,以獲得量化值N。</p><p> 對(duì)應(yīng)于電子計(jì)數(shù)器測(cè)量頻率的原理圖如2.1所示:</p><p> 可知電子計(jì)數(shù)法測(cè)頻主要由3個(gè)部分組成:</p><p> ?。?)時(shí)間基準(zhǔn)T產(chǎn)生電路。&l
32、t;/p><p> 時(shí)間基準(zhǔn)產(chǎn)生電路的作用是用來產(chǎn)生計(jì)數(shù)器所使用的標(biāo)準(zhǔn)頻率。</p><p><b> 計(jì)數(shù)脈沖形成電路</b></p><p> 計(jì)數(shù)脈沖形成電路的作用是將被測(cè)的周期信號(hào)轉(zhuǎn)換成可計(jì)數(shù)的窄脈沖。</p><p><b> 計(jì)數(shù)顯示電路</b></p><p&g
33、t; 計(jì)數(shù)顯示電路的作用是對(duì)主門輸出的脈沖進(jìn)行計(jì)數(shù),其結(jié)果顯示在數(shù)碼管上。</p><p> 2.2設(shè)計(jì)任務(wù)的分析及方案的論證</p><p> 本設(shè)計(jì)是一個(gè)基于單片機(jī)平臺(tái)的時(shí)間參數(shù)(頻率)測(cè)量系統(tǒng)。由于本次系統(tǒng)設(shè)計(jì)的測(cè)頻范圍很寬(10Hz~10KHz)、精度高(測(cè)量誤差1%),因此精確的控制閘門的開啟和關(guān)閉,追求計(jì)數(shù)器較高的頻率和較大的計(jì)數(shù)容量,保持系統(tǒng)在整個(gè)測(cè)量頻段內(nèi)的測(cè)量精度不
34、變及實(shí)現(xiàn)頻標(biāo)信號(hào)的高穩(wěn)定度和高精確度成為了評(píng)價(jià)系統(tǒng)設(shè)計(jì)優(yōu)劣的關(guān)鍵。</p><p> ?。?)直接測(cè)頻法(閘門時(shí)間計(jì)數(shù)法)</p><p> 直接測(cè)頻法就是在確定的閘門時(shí)間內(nèi),通過計(jì)數(shù)器記錄待測(cè)信號(hào)的周期變化次數(shù),并根據(jù)頻率的定義來計(jì)算待測(cè)信號(hào)的頻率。由于測(cè)量的起始時(shí)刻和結(jié)束時(shí)刻相對(duì)于信號(hào)而言是隨機(jī)的,將會(huì)有一個(gè)脈沖周期的量化誤差,也就是對(duì)于不同的閘門時(shí)間會(huì)產(chǎn)生同樣的計(jì)數(shù)值N0如圖2.2
35、中閘門1和閘門2時(shí)間長(zhǎng)度不一樣,但是計(jì)數(shù)值相同。</p><p> 圖2.2 直接測(cè)頻法示意圖</p><p> 當(dāng)測(cè)量時(shí)間為T時(shí),測(cè)量的準(zhǔn)確度=T/X,其中為待測(cè)信號(hào),可知對(duì)于測(cè)量頻高時(shí),測(cè)量準(zhǔn)確度越高。但是低頻達(dá)不到所要達(dá)到的要求。</p><p><b> (2)間接測(cè)周法</b></p><p> 間接
36、測(cè)周法就是在一個(gè)信號(hào)周期內(nèi)記錄下基準(zhǔn)脈沖的個(gè)數(shù)。原理恰好與直接測(cè)頻法相對(duì)應(yīng),當(dāng)測(cè)量的信號(hào)周期越長(zhǎng),即其頻率越低,測(cè)量的精度就越高,但對(duì)于高頻信號(hào)就不能適用。</p><p><b> 直接法</b></p><p> 本方案主要以單片機(jī)為核心,利用單片機(jī)的計(jì)數(shù)定時(shí)功能來實(shí)現(xiàn)頻率的計(jì)數(shù)并且利用單片機(jī)的動(dòng)態(tài)掃描法把測(cè)出的數(shù)據(jù)送到數(shù)字顯示電路顯示。其原理框圖如圖2.1所
37、示:</p><p><b> 2.3 原理框圖</b></p><p> ?。?)相關(guān)計(jì)數(shù)測(cè)頻法</p><p> 相關(guān)計(jì)數(shù)測(cè)頻法采用多周期同步測(cè)量原理,測(cè)量輸入信號(hào)的整數(shù)個(gè)周期值而求得頻率的一種測(cè)量方法。由于被測(cè)信號(hào)與門控信號(hào)之間采用同步鎖定的方式,使得主門的開啟時(shí)刻計(jì)數(shù)脈沖之間的時(shí)間關(guān)系是相關(guān)的,這樣便可以實(shí)現(xiàn)在測(cè)頻范圍內(nèi)頻率的等精
38、度測(cè)量。</p><p> 其實(shí),等精度測(cè)量并非嚴(yán)格意義上的等精度,閘門信號(hào)在測(cè)量中的開啟和關(guān)閉受控于被測(cè)信號(hào)的上升沿或下降沿。其測(cè)量的精度就有賴于頻標(biāo)信號(hào)的穩(wěn)定度和精度。若系統(tǒng)要求測(cè)量精度為1%,那么基準(zhǔn)源的開機(jī)穩(wěn)定度和溫度穩(wěn)定度應(yīng)該較高,其綜合性能應(yīng)優(yōu)于0.1%。</p><p> 綜上所述,對(duì)于測(cè)頻方案的選擇,直接測(cè)頻法和間接測(cè)周法的原理很簡(jiǎn)單,電路實(shí)現(xiàn)容易,但是它們都不能滿足全
39、頻段范圍內(nèi)的信號(hào)的測(cè)量,分段法在理論上可以保證等精度測(cè)量,其中界頻率的確定也比較容易,但是隨著系統(tǒng)測(cè)量精度的提高,測(cè)試盲區(qū)可能會(huì)出現(xiàn)。方案三的核心是單片機(jī),使用的元器件少,原理電路簡(jiǎn)單,調(diào)試簡(jiǎn)單只要改變程序的設(shè)定值則可以實(shí)現(xiàn)不同頻率范圍的測(cè)試能自動(dòng)選擇測(cè)試的量程。與方案三相比較其他方案則使用了大量的數(shù)字元器件,原理電路復(fù)雜,硬件調(diào)試麻煩。如要測(cè)量高頻的信號(hào)還需要加上分頻電路,價(jià)格相對(duì)高了點(diǎn)。基于上述比較,所以選擇了方案三。</p&
40、gt;<p><b> 硬件電路設(shè)計(jì)</b></p><p> 根據(jù)系統(tǒng)設(shè)計(jì)的要求,頻率計(jì)實(shí)際需要設(shè)計(jì)的硬件系統(tǒng)主要包括以下幾個(gè)部分:主控制器模塊、顯示模塊、分頻模塊,下面將分別給予介紹。 </p><p> 3.1 AT89C52主控制器模塊</p><p> 3.1.1 AT89C52概述</p><
41、;p> AT89S52是一種低功耗、高性能CMOS 8位微控制器,具有8K 在系統(tǒng)可編程Flash儲(chǔ)存器。使用ATMEL公司高密度非易失性儲(chǔ)存器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序儲(chǔ)存器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。</p><p> 3.1.2
42、 AT89C52特殊功能</p><p> 在AT89C52片內(nèi)存儲(chǔ)器中,80H-FFH 共128 個(gè)單元為特殊功能寄存器(SFR),SFR 的地址空間映象。并非所有的地址都被定義,從80H—FFH 共128個(gè)字節(jié)只有一部分被定義,還有相當(dāng)一部分沒有定義。對(duì)沒有定義的單元讀寫將是無效的,讀出的數(shù)值將不確定,而寫入的數(shù)據(jù)也將丟失。不應(yīng)將數(shù)據(jù)寫入未定義的單元,由于這些單元在將來的產(chǎn)品中可能賦予新的功能,在這種情況下
43、,復(fù)位后這些單元數(shù)值總是“0”。AT89C52除了有AT89C51所有的定時(shí)/計(jì)數(shù)器0 和定時(shí)/計(jì)數(shù)器1 外,還增加了一個(gè)定時(shí)/計(jì)數(shù)器2。定時(shí)/計(jì)數(shù)器2 的控制和狀態(tài)位位于T2CON(參見表3)T2MOD(參見表4),寄存器對(duì)(RCAO2H、RCAP2L)是定時(shí)器2在16位捕獲方式或16位自動(dòng)重裝載方式下的捕獲/自動(dòng)重裝載寄存器。</p><p> 3.1.3 AT89C52開發(fā)板原理圖</p>
44、<p> 單片機(jī)開發(fā)板原理如3.1圖所示。</p><p> 圖3.1 AT89C52引腳圖</p><p><b> 3.2分頻設(shè)計(jì)模塊</b></p><p> 分頻電路用于擴(kuò)展單片機(jī)頻率測(cè)量范圍,并實(shí)現(xiàn)單片機(jī)頻率和周期測(cè)量使用統(tǒng)一信號(hào),可使單片機(jī)測(cè)頻更易于實(shí)現(xiàn),而且也降低了系統(tǒng)的測(cè)頻誤差。可用74LS161進(jìn)行分頻。&
45、lt;/p><p> 3.2.1分頻電路分析</p><p> 本頻率計(jì)的設(shè)計(jì)以AT89C52單片機(jī)為核心,利用內(nèi)部的定時(shí)/計(jì)數(shù)器完成待測(cè)信號(hào)周期/頻率的測(cè)量。單片機(jī)AT89C52內(nèi)部具有2個(gè)16位定時(shí)/計(jì)數(shù)器,定時(shí)/計(jì)數(shù)器的工作可以由編程來實(shí)現(xiàn)定時(shí)、計(jì)數(shù)和產(chǎn)生計(jì)數(shù)溢出時(shí)中斷要求的功能。在定時(shí)器工作方式下,在被測(cè)時(shí)間間隔內(nèi),每來一個(gè)機(jī)器周期,計(jì)數(shù)器自動(dòng)加1(使用12 MHz時(shí)鐘時(shí),每1μs
46、加1),這樣以機(jī)器周期為基準(zhǔn)可以用來測(cè)量時(shí)間間隔。在計(jì)數(shù)器工作方式下,加至外部引腳的待測(cè)信號(hào)發(fā)生從1到0的跳變時(shí)計(jì)數(shù)器加1,這樣在計(jì)數(shù)閘門的控制下可以用來測(cè)量待測(cè)信號(hào)的頻率。外部輸入在每個(gè)機(jī)器周期被采樣一次,這樣檢測(cè)一次從1到0的跳變至少需要2個(gè)機(jī)器周期(24個(gè)振蕩周期),所以最大計(jì)數(shù)速率為時(shí)鐘頻率的1/24(使用12 MHz時(shí)鐘時(shí),最大計(jì)數(shù)速率為500 kHz),因此采用74LS161進(jìn)行外部十分頻使測(cè)頻范圍達(dá)到1MHz。為了測(cè)量提高
47、精度,當(dāng)被測(cè)信號(hào)頻率值較低時(shí),直接使用單片機(jī)計(jì)數(shù)器計(jì)數(shù)測(cè)得頻率值;當(dāng)被測(cè)信號(hào)頻率值較高時(shí)采用外部十分頻后再計(jì)數(shù)測(cè)得頻率值。這兩種情況使用74LS151進(jìn)行通道選擇,由單片機(jī)先簡(jiǎn)單測(cè)得被測(cè)信號(hào)是高頻信號(hào)還是低頻信號(hào),然后根據(jù)信號(hào)頻率值</p><p> 3.2.2 74LS161芯片介紹</p><p> 74LS161是常用的四位二進(jìn)制可預(yù)置的同步加法計(jì)數(shù)器,可以靈活的運(yùn)用在各種數(shù)字電
48、路,以及單片機(jī)系統(tǒng)種實(shí)現(xiàn)分頻器等很多重要的功能。74LS161引腳如圖3.2所示。</p><p> 圖3.2 74LS161引腳圖</p><p> 時(shí)鐘CP和四個(gè)數(shù)據(jù)輸入端P0~P3,清零/MR,使能CEP,CET,置數(shù)PE,數(shù)據(jù)輸出端Q0~Q3,以及進(jìn)位輸出TC (TC=Q0·Q1·Q2·Q3·CET)。表3.1為74LS161的功能表。
49、</p><p> 表3.1 74LS161的功能表</p><p> 其中RD是異步清零端,LD是預(yù)置數(shù)控制端,A、B、C、D是預(yù)置數(shù)據(jù)輸入端,EP和ET是計(jì)數(shù)使能端,RCO(=ET.QA.QB.QC.QD)是進(jìn)位輸出端,它的設(shè)置為多片集成計(jì)數(shù)器的級(jí)聯(lián)提供了方便。計(jì)數(shù)過程中,首先加入一清零信號(hào)RD=0,使各觸發(fā)器的狀態(tài)為0,即計(jì)數(shù)器清零。RD變?yōu)?后,加入一置數(shù)信號(hào)LD=0,即信號(hào)
50、需要維持到下一個(gè)時(shí)鐘脈沖的正跳變到來后。在這個(gè)置數(shù)信號(hào)和時(shí)鐘脈沖上升的共同作用下,各觸發(fā)器的輸出狀態(tài)與預(yù)置的輸入數(shù)據(jù)相同,這就是預(yù)置操作。接著EP=ET=1,在此期間74LS161一直處于計(jì)數(shù)狀態(tài)。一直到EP=0,ET=1,計(jì)數(shù)器計(jì)數(shù)狀態(tài)結(jié)束。從74LS161功能表功能表中可以知道,當(dāng)清零端CR=“0”,計(jì)數(shù)器輸出Q3、Q2、Q1、Q0立即為全“0”,這個(gè)時(shí)候?yàn)楫惒綇?fù)位功能。當(dāng)CR=“1”且LD=“0”時(shí),在CP信號(hào)上升沿作用后,74L
51、S161輸出端Q3、Q2、Q1、Q0的狀態(tài)分別與并行數(shù)據(jù)輸入端D3,D2,D1,D0的狀態(tài)一樣,為同步置數(shù)功能。而只有當(dāng)CR=LD=EP=ET=“1”、CP脈沖上升沿作用后,計(jì)數(shù)器加1。74LS161還有一個(gè)進(jìn)位輸出端CO,其邏輯關(guān)系是CO= Q</p><p> 3.2.3 74LS151芯片介紹</p><p> 數(shù)據(jù)選擇端(ABC)按二進(jìn)制譯碼,以從8個(gè)數(shù)據(jù)(D0-D7)中選取1
52、個(gè)所需的數(shù)據(jù)。只有在選通端STROBE為低電平時(shí)才可選擇數(shù)據(jù)。74LS151有互補(bǔ)輸出端(Y、W),Y輸出原碼,W輸出反碼。74LS151引腳如圖3.3所示。</p><p> 圖3.3 74LS151管腳圖</p><p> 74LS151的功能如下表3.2所示。其中A、B、C 為選擇輸入端,D0-D7為 數(shù)據(jù)輸入端,STROBE 為選通輸入端(低電平
53、有效),W為反碼數(shù)據(jù)輸出端,Y為數(shù)據(jù)輸出端。</p><p> 表3.2 74LS151功能表</p><p> 3.2.4 分頻電路設(shè)計(jì)</p><p> 根據(jù)以上分析,采用74LS161和74LS151設(shè)計(jì)分頻電路如圖3.4所示。</p><p> 圖3.4 分頻電路原理圖</p><p><b&g
54、t; 3.3 顯示模塊</b></p><p> 頻率值顯示電路采用八位共陰極數(shù)碼管動(dòng)態(tài)顯示頻率計(jì)被測(cè)數(shù)值。頻率、周期、脈寬由獨(dú)立按鍵控制轉(zhuǎn)換。</p><p> 3.3.1數(shù)碼管介紹</p><p> 常見的數(shù)碼管由七個(gè)條狀和一個(gè)點(diǎn)狀發(fā)光二極管管芯制成,叫七段數(shù)碼管,根據(jù)其結(jié)構(gòu)的不同,可分為共陽極數(shù)碼管和共陰極數(shù)碼管兩種。根據(jù)管腳資料,可以判斷
55、使用的是何種接口類型.兩種數(shù)碼管內(nèi)部原理如圖3.5。</p><p> 圖3.5 兩種數(shù)碼管內(nèi)部原理圖</p><p> 3.3.2 顯示模塊電路圖</p><p> 據(jù)以上分析,顯示模塊電路圖如圖3.6所示。</p><p> 圖3.6 顯示模塊電路圖</p><p><b> 系統(tǒng)的軟件設(shè)計(jì)&
56、lt;/b></p><p> 系統(tǒng)軟件設(shè)計(jì)主要采用模塊化設(shè)計(jì),敘述了各個(gè)模塊的程序流程圖,并介紹了軟件keil的使用方法、調(diào)試及仿真。 </p><p><b> 4.1軟件模塊設(shè)計(jì)</b></p><p> 系統(tǒng)軟件設(shè)計(jì)采用模塊化設(shè)計(jì)方法。整個(gè)系統(tǒng)由初始化模塊,信號(hào)頻率測(cè)量模塊和顯示模塊等模塊組成。系統(tǒng)軟件流程如圖4.1所示。&
57、lt;/p><p> 頻率計(jì)開始工作或者完成一次頻率測(cè)量,系統(tǒng)軟件都進(jìn)行測(cè)量初始化。測(cè)量初始化模塊設(shè)置堆棧指針(SP)、工作寄存器、中斷控制和定時(shí)/計(jì)數(shù)器的工作方式。定時(shí)/計(jì)數(shù)器的工作首先被設(shè)置為計(jì)數(shù)器方式,即用來測(cè)量信號(hào)頻率。</p><p> 圖4.1 系統(tǒng)軟件流程總圖</p><p> 首先定時(shí)/計(jì)數(shù)器的計(jì)數(shù)寄存器清0,運(yùn)行控制位TR置1,啟動(dòng)對(duì)待測(cè)信號(hào)的計(jì)
58、數(shù)。計(jì)數(shù)閘門由軟件延時(shí)程序?qū)崿F(xiàn),從計(jì)數(shù)閘門的最小值(即測(cè)量頻率的高量程)開始測(cè)量,計(jì)數(shù)閘門結(jié)束時(shí)TR清0,停止計(jì)數(shù)。計(jì)數(shù)寄存器中的數(shù)值經(jīng)過數(shù)制轉(zhuǎn)換程序從十六進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)。判斷該數(shù)的最高位,若該位不為0,滿足測(cè)量數(shù)據(jù)有效位數(shù)的要求,測(cè)量值和量程信息一起送到顯示模塊;若該位為0,將計(jì)數(shù)閘門的寬度擴(kuò)大10倍,重新對(duì)待測(cè)信號(hào)的計(jì)數(shù),直到滿足測(cè)量數(shù)據(jù)有效位數(shù)的要求。定時(shí)/計(jì)數(shù)器的工作被設(shè)置為定時(shí)器方式,定時(shí)/計(jì)數(shù)器的計(jì)數(shù)寄存器清0,在判斷
59、待測(cè)信號(hào)的上跳沿到來后,運(yùn)行控制位TR置為1,以單片機(jī)工作周期為單位進(jìn)行計(jì)數(shù),直至信號(hào)的下跳沿到來,運(yùn)行控制位TR清0,停止計(jì)數(shù)。16位定時(shí)/計(jì)數(shù)器的最高計(jì)數(shù)值為65535,當(dāng)待測(cè)信號(hào)的頻率較低時(shí),定時(shí)/計(jì)數(shù)器可以對(duì)被測(cè)信號(hào)直接計(jì)數(shù),當(dāng)被測(cè)信號(hào)的頻率較高時(shí),先由硬件十分頻后再有定時(shí)/計(jì)數(shù)器對(duì)被測(cè)信號(hào)計(jì)數(shù),加大測(cè)量的精度和范圍。</p><p> 4.2中斷服務(wù)子程序</p><p>
60、T0中斷服務(wù)子程序流程如圖4.2所示。測(cè)頻時(shí),定時(shí)器T0工作在定時(shí)方式,每次定時(shí)50ms,則T0中斷20次正好為1秒,即T0用來產(chǎn)生標(biāo)準(zhǔn)秒信號(hào),定時(shí)器T0用作計(jì)數(shù)器,對(duì)待測(cè)信號(hào)計(jì)數(shù),每秒鐘的開始啟動(dòng)T0 ,每秒鐘的結(jié)束關(guān)閉T0 ,則定時(shí)器T0之值乘以分頻系數(shù)就為待測(cè)信號(hào)的頻率。</p><p> 圖4.2 T0中斷服務(wù)子程序</p><p> 定時(shí)/計(jì)數(shù)器T1工作在計(jì)數(shù)方式, 對(duì)信號(hào)
61、進(jìn)行計(jì)數(shù),計(jì)數(shù)器1中斷流程圖如圖4.3所示。</p><p> 圖4.3 計(jì)數(shù)器1中斷服務(wù)子程序</p><p><b> 4.3顯示子程序</b></p><p> 顯示子程序?qū)⒋娣旁陲@示緩沖區(qū)的頻率或周期值送往數(shù)碼管上顯示出來,由于所有4 位數(shù)碼管的8 根段選線并聯(lián)在一起由單片機(jī)的P2口 控制,因此,在每一瞬間4位數(shù)碼管會(huì)顯示相同的字
62、符,要想每位顯示不同的字符就必須采用掃描方法輪流點(diǎn)亮各位數(shù)碼管,即在每一瞬間只點(diǎn)亮某一位顯示字符,在此瞬間,段選控制口P2輸出相應(yīng)字符。由P0.0-P0.3逐位輪流點(diǎn)亮各個(gè)數(shù)碼管, 每位保持1mS ,在10mS~20mS 之內(nèi)再點(diǎn)亮一次,重復(fù)不止,利用人的視角暫留,好像4 位數(shù)碼管同時(shí)點(diǎn)亮。數(shù)碼管顯示子程序流程如圖4.4所示。</p><p> 圖4.4 顯示子程序流程圖</p><p>
63、; 4.4量程檔自動(dòng)轉(zhuǎn)換子程序</p><p> 使用定時(shí)方法實(shí)現(xiàn)頻率測(cè)量時(shí),外部的待測(cè)信號(hào)通過頻率計(jì)的預(yù)處理電路變成寬度等于待測(cè)信號(hào)周期的方波,該方波同樣加至定時(shí)/計(jì)數(shù)器的輸入腳(P3.5)。工作高電平是否加至定時(shí)/計(jì)數(shù)器的輸入腳;當(dāng)判定高電平加至定時(shí)/計(jì)數(shù)器的輸入腳,運(yùn)行控制位TR置1,啟動(dòng)定時(shí)/計(jì)數(shù)器對(duì)單片機(jī)的機(jī)器周期的計(jì)數(shù),同時(shí)檢測(cè)方波高電平是否結(jié)束;當(dāng)判定高電平結(jié)束時(shí)TR清0,停止計(jì)數(shù),然后從計(jì)數(shù)寄
64、存器讀出測(cè)量數(shù)據(jù)。由顯示電路顯示測(cè)量結(jié)果,根據(jù)測(cè)量結(jié)果判斷,進(jìn)行頻率計(jì)比較后,進(jìn)行檔位的自動(dòng)切換,具體檔位自動(dòng)切換流程圖如圖4.5所示。</p><p> 圖4.5 量程檔自動(dòng)轉(zhuǎn)換子程序</p><p><b> 4.5應(yīng)用軟件簡(jiǎn)介</b></p><p> 此設(shè)計(jì)需要在Keil軟件平臺(tái)上完成程序的調(diào)試,在Proteus軟件平臺(tái)上完成仿
65、真顯示。由于工作的地方無法進(jìn)行Proteus軟件的仿真,所以只做了Keil的調(diào)試。</p><p> 4.5.1 Keil簡(jiǎn)介</p><p> Keil軟件是目前最流行開發(fā)系列單片機(jī)的軟件,Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。而Proteus與其它單片機(jī)仿真軟件不
66、同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時(shí),關(guān)心的不再是某些語句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程的角度直接看程序運(yùn)行和電路工作的過程和結(jié)果。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,是彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象。</p><p><b> 4.5.2調(diào)試步驟</b></p>
67、<p><b> ?。?)建立工程文件</b></p><p> 點(diǎn)擊“Project->New project”菜單,出現(xiàn)一個(gè)對(duì)話框,要求給將要建立的工程起一個(gè)名字,你可以在編緝框中輸入一個(gè)名字,點(diǎn)擊“保存”按鈕,出現(xiàn)第二個(gè)對(duì)話框,按要求選擇目標(biāo)器件片。建立新文件并增加到組。分別設(shè)置“target1”中的“Target,output,debug”各項(xiàng),使程序匯編后產(chǎn)生
68、HEX文件。</p><p> ?。?)匯編,調(diào)試系統(tǒng)程序</p><p> Keil 單片機(jī)模擬調(diào)試軟件內(nèi)集成了一個(gè)文本編輯器,用該文本編輯器可以編輯源程序。在集成開發(fā)環(huán)境中選擇菜單“File → New...”、單擊對(duì)應(yīng)的工具按鈕或者快捷鍵Ctrl +N 將打開一個(gè)新的文本編輯窗口,完成匯編語言源文件的輸入,并且完成源程序向當(dāng)前工程的添加。</p><p>
69、 然后在集成開發(fā)環(huán)境中選擇菜單“File→Save As...”可以完成文件的第一次存儲(chǔ)。注意,匯編語言源文件的擴(kuò)展名應(yīng)該是“ASM”,它應(yīng)該與工程文件存儲(chǔ)在同一文件夾之內(nèi)。在完成文件的第一次存儲(chǔ)以后,當(dāng)對(duì)匯編語言源文件又進(jìn)行了修改,再次存儲(chǔ)文件則應(yīng)該選擇菜單“File→Save”、單擊對(duì)應(yīng)的工具按鈕或者快捷鍵Ctrl +S 實(shí)現(xiàn)文件的保存。</p><p> 接著的工作需要把匯編語言源文件加入工程之中。選擇工
70、程管理器窗口的子目“Source Group 1”,再單擊鼠標(biāo)右鍵打開快捷菜單。在快捷菜單中選擇“Add File to Group ‘Source Group 1’”,加入文件對(duì)話框被打開。在這個(gè)對(duì)話框的“查找范圍(I)”下拉列表框中選擇存儲(chǔ)匯編語言源文件的文件夾,在“文件類型(T)” 下拉列表框選擇“Asm Source file(*.a*;*.src)”,這時(shí)存儲(chǔ)的匯編語言源文件將顯示出來。雙擊要加入的文件名或者選擇要加入的文件名
71、再單擊“Add”按鈕即可完成把匯編語言源文件加入工程。文件加入以后,加入文件對(duì)話框并不消失,更多的文件也可以利用它加入工程。如果不需要加入其它文件,單擊“Close”按鈕可以關(guān)閉加入文件對(duì)話框。這時(shí)工程管理窗口的文件選項(xiàng)卡中子目錄“Source Group 1”下出現(xiàn)一個(gè)匯編語言源文件。 需要注意,當(dāng)把匯編語言源文件加入工程但還沒有關(guān)閉加入文件對(duì)話框,這時(shí)有可能被誤認(rèn)為文件沒有成功地加入工程而再次進(jìn)行加入操作,系統(tǒng)將顯示所需的文件已經(jīng)加
72、入的提示。在這種情況下,單擊提示框中的“確定”按鈕,再單擊“Close</p><p> ?。?)編譯源程序,出現(xiàn)錯(cuò)誤時(shí),返回上一級(jí)對(duì)錯(cuò)誤更改后重新編譯,直到?jīng)]有錯(cuò)誤為止。</p><p><b> ?。?)程序調(diào)試結(jié)果</b></p><p> 經(jīng)過多次的調(diào)試得出來的結(jié)果和理論上還有具有一定的差距,但也接近了成功。</p>&
73、lt;p><b> 實(shí)物制作與調(diào)試 </b></p><p><b> 5.1實(shí)物制作</b></p><p> 整形電路采用與非門74LS00構(gòu)成施密特觸發(fā)器,還有運(yùn)用了AT89C52單片機(jī)進(jìn)行完成這個(gè)頻率計(jì)。</p><p> 本頻率計(jì)是先給AT89C52單片機(jī)供5V穩(wěn)壓電源,然后用信號(hào)發(fā)生器供給信號(hào),記
74、過放大整形電路的作用后,再輸入芯片中,而主控芯片用引腳電平中斷變化來計(jì)數(shù),用定時(shí)器來定出計(jì)時(shí)單位時(shí)間,信號(hào)采集后經(jīng)過處理在數(shù)碼管上顯示出來。</p><p><b> 5.2 硬件的調(diào)試</b></p><p> 硬件調(diào)試的調(diào)試主要是把電路各種參數(shù)調(diào)整到符合設(shè)計(jì)要求。先排除硬件電路故障,包括設(shè)計(jì)性錯(cuò)誤和工藝性故障。一般原則是先靜態(tài)后動(dòng)態(tài)。</p>&
75、lt;p> 利用萬用表或邏輯測(cè)試儀器,檢查電路中各器件以及引腳是否連接正確,是否有短 路故障。</p><p> 先將單片機(jī)AT89C52芯片取下,對(duì)電路板進(jìn)行通電檢查,通過觀察看是否有異常, 是否有虛焊的情況,然后用萬用表測(cè)試各電源電壓,若這些都沒有問題,則接上仿真機(jī)進(jìn)行聯(lián)機(jī)調(diào)試,觀察各接口電路是否正常。 </p><p><b> 5.3 結(jié)果分析</b&g
76、t;</p><p> 把電路按要求接好,接上待測(cè)脈沖信號(hào),插上電源即可測(cè)量出待測(cè)脈沖信號(hào)的頻率。系統(tǒng)軟件仿真誤差很小,在10Hz-10KHz范圍內(nèi)測(cè)量出來的頻率基本上就是輸入信號(hào)的頻率,在超出這個(gè)范圍后,才出現(xiàn)很小的誤差。但是在硬件調(diào)試中,可能是由于標(biāo)準(zhǔn)元器件本身誤差,如隨著時(shí)間的延長(zhǎng),造成測(cè)量結(jié)果沒有軟件仿真精確。同時(shí)手工焊接單片機(jī)最小系統(tǒng)、分頻整形電路等也會(huì)帶來一定的干擾,造成信號(hào)的失真,從而導(dǎo)致測(cè)量精度
77、下降,測(cè)量范圍有所縮小,但是可以看出,誤差在允許范圍內(nèi),所設(shè)計(jì)的電路基本符合要求。</p><p><b> 總結(jié)</b></p><p> 畢業(yè)設(shè)計(jì)已經(jīng)結(jié)束,通過這次設(shè)計(jì),我受益匪淺。畢業(yè)設(shè)計(jì)是一次綜合性的實(shí)踐,它將各種知識(shí)結(jié)合到一起綜合運(yùn)用到實(shí)踐上來擴(kuò)展、彌補(bǔ)、串聯(lián)所學(xué)的知識(shí)。通過本次畢業(yè)設(shè)計(jì)我得到了很多收獲。首先,了解了單片機(jī)的基本知識(shí)和在控制領(lǐng)域的作用和地
78、位。其次掌握了C語言的編寫程序,學(xué)會(huì)了使用PROTUTES和KEIL的仿真來實(shí)現(xiàn),同時(shí)掌握了如何收集、查閱、應(yīng)用文獻(xiàn)資料,如何根據(jù)實(shí)際需要有選擇的閱讀書籍和正確確定系統(tǒng)所要使用的元器件的類型。再次,在精神方面鍛煉了思想、磨練了意志。面對(duì)存在的困難首先分析問題根據(jù)目的要求確定可實(shí)現(xiàn)的部分,不明白方面找同學(xué)和老師討論研究,再完善、再修改、再發(fā)現(xiàn)問題、再解決培養(yǎng)了自己的耐心、恒心及遇事不亂的精神??傊?,我明白了理論和實(shí)踐之間存在的距離只有靠不
79、斷的思考不斷的動(dòng)手才能將所學(xué)的知識(shí)真正運(yùn)用到實(shí)踐上來。在畢業(yè)設(shè)計(jì)中我的很多方面的能力都得到了提高,尤其在單片機(jī)軟件編程方面讓我感觸頗深。我個(gè)人認(rèn)為軟件設(shè)計(jì)是個(gè)既靈活又細(xì)膩的工作,它要求耐心和細(xì)心去不斷完善,同時(shí)還需要有良好的邏輯思維能力。通過這次畢業(yè)設(shè)計(jì),我分析問題和解決問題的能力有所提高,也鞏固了所學(xué)的知識(shí),加深了對(duì)理論知識(shí)的理解,</p><p><b> 參考文獻(xiàn)</b></p
80、><p> [1] 蔣煥文、孫續(xù).電子測(cè)量(第二版)[M].中國(guó)計(jì)量出版社,1998.</p><p> [2] 劉國(guó)林、殷貫西.電子測(cè)量[M].機(jī)械工業(yè)出版社,2003.</p><p> [3] 孫煥根.電子測(cè)量與智能儀器[M].浙江大學(xué)出版社,1992.</p><p> [4] 古天祥、王厚軍等.電子測(cè)量原理[M].機(jī)械工業(yè)出版社
81、,2004.</p><p> [5] 郭允、蘇秉煒. 脈沖參數(shù)與時(shí)域測(cè)量技術(shù)[M].中國(guó)計(jì)量出版社,1989.</p><p> [6] 美D.霍布沙爾.電子儀器的電路設(shè)計(jì)[M].科學(xué)出版社,1986.</p><p> [7] 黃秉英.時(shí)間頻率的精確測(cè)量(第一版)[M].中國(guó)計(jì)量出版社,1986.</p><p> [8] 美Ke
82、vin Skahill.可編程邏輯系統(tǒng)的VHDL設(shè)計(jì)技術(shù)[M].東南大學(xué)出版社,1998.</p><p> [9] 高書莉、羅朝霞.可編程邏輯設(shè)計(jì)技術(shù)及應(yīng)用[M].人民郵電出版社, 2001. </p><p> [10] 程云長(zhǎng)、王莉莉.可編程邏輯器件與VHDL語言[M].科學(xué)出版社,2005.</p><p> [11] 陸玉新、傅崇倫.電子測(cè)量[M].
83、國(guó)防工業(yè)出版社,1985.</p><p> [12] 劉克剛.復(fù)雜電子系統(tǒng)設(shè)計(jì)與實(shí)踐[M].電子工業(yè)出版社,2010.</p><p><b> 致 謝</b></p><p> 本論文的工作是在我的導(dǎo)師簡(jiǎn)遠(yuǎn)鳴老師的悉心指導(dǎo)下完成的,簡(jiǎn)遠(yuǎn)鳴老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和科學(xué)的工作方法給了我極大的幫助和影響。在此衷心感謝簡(jiǎn)遠(yuǎn)鳴老師對(duì)我的關(guān)心和
84、指導(dǎo)。</p><p> 簡(jiǎn)遠(yuǎn)鳴老師悉心指導(dǎo)我們完成了畢業(yè)論文工作,在學(xué)習(xí)上和生活上都給予了我很大的關(guān)心和幫助,在此向簡(jiǎn)遠(yuǎn)鳴老師表示衷心的謝意。</p><p> 簡(jiǎn)遠(yuǎn)鳴老師對(duì)于我的論文提出了許多的寶貴意見,在此表示衷心的感謝。</p><p> 在撰寫論文期間,我的組員黃志杰、蘇華劍同學(xué)對(duì)我論文中的程序研究工作給予了熱情幫助,在此向他們表達(dá)我的感激之情。&l
85、t;/p><p> 另外也感謝我的父母,他們的理解和支持使我能夠在學(xué)校專心完成我的學(xué)業(yè)。</p><p><b> 附 錄</b></p><p><b> 1、頻率計(jì)源程序:</b></p><p> #include <reg52.h></p><p&g
86、t; #defineSegmentP2</p><p> #define sl P0</p><p> unsigned char cnt; //定時(shí)1s計(jì)數(shù)</p><p> unsigned char d[4]; //對(duì)應(yīng)數(shù)碼管的各位</p><p> unsigned char level; //檔
87、位</p><p> unsigned int tN; //不同檔位計(jì)時(shí)值</p><p> unsigned int fCnt; //脈沖下降沿次數(shù)</p><p> unsigned int regCnt; //脈沖次數(shù)暫存</p><p> unsigned int pCnt; //頻率顯
88、示</p><p> unsigned char Num[10]={00x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};</p><p> void Delay(unsignedintDelayTime)</p><p><b> {</b></p><p> while(DelayTi
89、me--);</p><p><b> }</b></p><p> void disp()</p><p><b> {</b></p><p> if(level==0) //B位檔</p><p><b> {<
90、/b></p><p><b> d[3]=0;</b></p><p> d[2]=pCnt/100;</p><p> d[1]=(pCnt%100)/10;</p><p> d[0]=pCnt%10;</p><p> sl=0xfe;Delay(1);Segment=Nu
91、m[d[3]];Delay(300);</p><p> sl=0xfd;Delay(1);Segment=Num[d[2]];Delay(300);</p><p> sl=0xfb;Delay(1);Segment=Num[d[1]];Delay(300);</p><p> sl=0xf7;Delay(1);Segment=Num[d[0]];Delay
92、(300);</p><p><b> }</b></p><p> else if(level==1)</p><p><b> {</b></p><p> d[3]=pCnt/1000;</p><p> d[2]=(pCnt%1000)/100;</p
93、><p> d[1]=(pCnt%100)/10;</p><p> d[0]=pCnt%10;</p><p> sl=0xfe;Delay(1);Segment=Num[d[3]];Delay(300);</p><p> sl=0xfd;Delay(1);Segment=Num[d[2]];Delay(300);</p>
94、<p> sl=0xfb;Delay(1);Segment=Num[d[1]]+0x80;Delay(300); //帶小數(shù)點(diǎn)</p><p> sl=0xf7;Delay(1);Segment=Num[d[0]];Delay(300);</p><p><b> }</b></p><p> else if(level
95、==2)</p><p><b> {</b></p><p> d[3]=pCnt/1000;</p><p> d[2]=(pCnt%1000)/100;</p><p> d[1]=(pCnt%100)/10;</p><p> d[0]=pCnt%10;</p>&
96、lt;p><b> 0);</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p><b> d[3]=0;</b></p&
97、gt;<p><b> d[2]=0;</b></p><p><b> d[1]=0;</b></p><p><b> d[0]=0;</b></p><p><b> }</b></p><p><b> }<
98、/b></p><p> void intial()</p><p><b> {</b></p><p> clear=1; //分頻器初始化</p><p><b> a</b></p><p> tN=20;
99、 //檔位初始化為Hz檔</p><p><b> level=0;</b></p><p> ledM=1; //顯示Hz檔</p><p><b> ledK=1;</b></p><p><b> ledB=0;<
100、/b></p><p> TMOD=0x61; //定時(shí)器0,工作方式1,計(jì)數(shù)器1,工作方式2(8位自動(dòng)重裝)</p><p><b> //開定時(shí)器0中斷</b></p><p> ET0=1; //定時(shí)器0允許</p><p> TR1=1; //開計(jì)數(shù)器1中斷<
101、/p><p> ET1=1; //允許計(jì)數(shù)器1中斷</p><p> EA=1; //總中斷允許</p><p><b> }</b></p><p> void main()</p><p><b> {</b>&
102、lt;/p><p><b> intial();</b></p><p><b> while(1)</b></p><p><b> {</b></p><p><b> disp();</b></p><p><b&g
103、t; }</b></p><p><b> }</b></p><p> void timer0() interrupt 1</p><p><b> {</b></p><p><b> cnt++;</b></p><p>
104、if(cnt==tN)</p><p><b> {</b></p><p> regCnt=fCnt; //更新顯示</p><p> fCnt=0; //頻率計(jì)數(shù)清零</p><p> clear=0; //硬件分頻器清零</p&g
105、t;<p><b> clear=1;</b></p><p> if(level==0) //檔位切換</p><p><b> {</b></p><p> pCnt=regCnt;</p><p> if(regCnt>999)</p
106、><p><b> {</b></p><p> pCnt=0; //顯示清零</p><p><b> } </b></p><p><b> }</b></p><p> else if(level==1)</p>
107、<p><b> {</b></p><p> if(regCnt<1)</p><p><b> {</b></p><p><b> level=0;</b></p><p> tN=20; //定時(shí)1s</p><
108、p> addr2=1; //不分頻</p><p><b> }</b></p><p> else if(regCnt<1000)//KHz檔</p><p><b> {</b></p><p><b> level=1;</b></p
109、><p> tN=1; //定時(shí)50ms</p><p> addr2=0; //硬件分頻處理</p><p> TH1=0xfb; //50分頻 256-5</p><p> TL1=0xfb; //256-5</p><p&
110、gt; pCnt=regCnt*10; //換算成相應(yīng)的顯示:f=regCnt*100</p><p> ledM=1; //顯示KHz檔</p><p><b> ledK=0;</b></p><p> ledB=1;</p><p><b> }</
111、b></p><p><b> else</b></p><p><b> {</b></p><p><b> level=2;</b></p><p><b> //顯示MHz檔</b></p><p><b
112、> ledK=1;</b></p><p><b> ledB=1;</b></p><p><b> }</b></p><p><b> }</b></p><p> else if(level==2)</p><p>&
113、lt;b> {</b></p><p> if(regCnt<500) //KHz檔</p><p><b> {</b></p><p><b> level=1;</b></p><p> tN=1; //定時(shí)50ms&l
114、t;/p><p> addr2=0; //分頻</p><p><b> //顯示KHz檔</b></p><p><b> ledK=0;</b></p><p> ledB=1;</p><p><b> }</b>
115、;</p><p> else if(regCnt<5000)</p><p><b> {</b></p><p><b> level=2;</b></p><p> tN=1; //定時(shí)50ms</p><p> addr2=
116、0; //分頻</p><p> TH1=0xf6; //100分頻 256-10</p><p> TL1=0xf6; //256-10</p><p><b> ledB=1;</b></p><p><b> }</b>&l
117、t;/p><p><b> else</b></p><p><b> {</b></p><p> level=3; //超出范圍</p><p> ledM=1; //全滅</p><p><b> ledK=
118、1;</b></p><p> ledB=1;</p><p><b> }</b></p><p><b> }</b></p><p> ET1=1; //恢復(fù)外部計(jì)數(shù)1</p><p><b&g
119、t; TR1=1;</b></p><p><b> }</b></p><p> TH0=0x3c; //(65536-50000)/256;</p><p> TL0=0xb0; //(65536-50000)%256;</p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)的數(shù)字頻率計(jì)-畢業(yè)論文
- 基于單片機(jī)的數(shù)字頻率計(jì)-畢業(yè)論文
- 基于51單片機(jī)的數(shù)字頻率計(jì)的設(shè)計(jì)
- 基于51單片機(jī)的數(shù)字頻率計(jì)資料
- 基于單片機(jī)的數(shù)字頻率計(jì)的設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)畢業(yè)論文--基于vhdl的數(shù)字頻率計(jì)的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)論文基于單片機(jī)的數(shù)字頻率計(jì)設(shè)計(jì)
- atmega16單片機(jī)數(shù)字頻率計(jì)——畢業(yè)論文
- 基于單片機(jī)的頻率計(jì)外文翻譯--快速數(shù)字頻率計(jì)
- 基于單片機(jī)的頻率計(jì)外文翻譯--快速數(shù)字頻率計(jì)
- 基于c語言單片機(jī)數(shù)字頻率計(jì)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)(數(shù)字頻率計(jì))
- 單片機(jī)課程設(shè)計(jì)---數(shù)字頻率計(jì)
- 一種基于單片機(jī)數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 數(shù)字頻率計(jì)實(shí)驗(yàn)報(bào)告---數(shù)字頻率計(jì)的設(shè)計(jì)與制作
- 單片機(jī)課程設(shè)計(jì)---數(shù)字頻率計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)數(shù)字頻率計(jì)設(shè)計(jì)
- 基于單片機(jī)的頻率計(jì)外文翻譯--快速數(shù)字頻率計(jì)(英文)
- 基于單片機(jī)的頻率計(jì)外文翻譯--快速數(shù)字頻率計(jì).doc
評(píng)論
0/150
提交評(píng)論