版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 畢 業(yè) 論 文(設 計)</p><p><b> 摘 要</b></p><p> 傳統(tǒng)的頻率計數(shù)器由組合電路和時序電路等大量的硬件電路組成。我們知道這種開發(fā)費時費力且成本高昂,所以本文以頻率計數(shù)器為研究對象,利用Proteus強大的微機處理器仿真功能,結合Keil編譯器,給出了簡易且容易操作的頻率計數(shù)器的設計方案并完成仿真測試。本文設計
2、了一種以單片機AT89C51為核心的數(shù)字頻率計數(shù)器,其中硬件部分主要是由整形電路、單片機最小系統(tǒng)和顯示單元組成的,軟件設計是由一些功能模塊來實現(xiàn)的,例如有初始化模塊、晶振模塊、數(shù)據(jù)顯示模塊以及復位模塊等等。這種方法很好地彌補了傳統(tǒng)開發(fā)模式的各種缺點。該頻率計數(shù)器由6位數(shù)碼管顯示器和單片機AT89C51,以及信號時鐘發(fā)生器等構成,可測量頻率范圍為1Hz到100KHz之間。</p><p> 關鍵詞:頻率計數(shù)器;
3、PROTEUS仿真; 單片機; 1~100kHz</p><p><b> ABSTRACT</b></p><p> Traditional frequency counter by combinational circuits and sequential circuits, etc. A lot of hardware circuit. We know th
4、at this development laborious and costly, so based on the frequency counter as the research object, the use of Proteus powerful microcomputer processor simulation, combining with Keil compiler, presents a simple and easy
5、 to operate the frequency counter design and complete the simulation test. In this paper, we design a microcontroller AT89C51 as the core of the digital freq</p><p> Key words:Frequency counter; PROTEUS sim
6、ulation and single-chip microcomputer; 1~ 100KHZ </p><p><b> 目錄</b></p><p><b> 摘 要2</b></p><p> ABSTRACT3</p><p><b> 目錄4</b>
7、</p><p><b> 第一章 引言5</b></p><p><b> 1.1引言5</b></p><p> 1.1.1簡單介紹頻率計數(shù)器5</p><p> 1.1.2研究意義6</p><p> 1.2要實現(xiàn)的目標7</p>&l
8、t;p> 第二章 工具介紹8</p><p> 2.1 PROTEUS仿真軟件8</p><p><b> 2.1.1簡介8</b></p><p> 2.1.2 功能特點8</p><p> 2.1.3 proteus的使用9</p><p> 2.2 keil uv
9、ision4軟件10</p><p> 2.2 .1 keil uvision4軟件的介紹10</p><p> 2.2.2 keil uvision4軟件的使用10</p><p> 2.3 關于C語言11</p><p> 第三章 硬件和軟件設計12</p><p> 3.1硬件設計12<
10、;/p><p> 3.1.1 AT89C51單片機12</p><p> 3.1.2 AT89C51的晶振接法13</p><p> 3.1.3單片機的復位14</p><p> 3.1.4顯示電路15</p><p> 3.1.5系統(tǒng)總體電路圖16</p><p> 3.2軟
11、件設計16</p><p> 3.2.1關于信號處理的介紹16</p><p> 3.2.2關于終端控制17</p><p> 3.2.3關于控制寄存器18</p><p> 第四章 調試測試19</p><p> 4.1軟件的編譯調試19</p><p> 4.2載入單
12、片機后的測試19</p><p> 4.3誤差分析21</p><p><b> 結束語22</b></p><p><b> 參考文獻24</b></p><p><b> 附錄25</b></p><p><b> 第一
13、章 引言</b></p><p><b> 1.1引言</b></p><p> 1.1.1簡單介紹頻率計數(shù)器</p><p> 我們經(jīng)常需要測量頻率、時間間隔、相位和對事件計數(shù),精確的測量離不開頻率計數(shù)器或它的同類產(chǎn)品,如電子計數(shù)器和時間間隔分析儀。這些儀器為研發(fā)提供高精度和分析能力,為大批量生產(chǎn)提供高效率并為維修提供低成本
14、和便攜性。信號頻率、時間間隔、相位和脈沖計數(shù)等是常見的測量對象,對它們的測量離不開頻率計數(shù)器或它的同類產(chǎn)品,如電子計數(shù)器和時間間隔分析儀等。利用先進的PROTEUS仿真軟件可以方便地研究頻率計數(shù)器。</p><p> 最早的電子計數(shù)器是為了對諸如原子現(xiàn)象之類的事情進行計數(shù)而設計出來的。在發(fā)明計數(shù)器之前,頻率的測量都是用頻率計(一種精度很低的協(xié)調裝置)完成。頻率計數(shù)器是以數(shù)字方式對信號參數(shù)進行精密測量的首批儀器之
15、一?! 『饬款l率計數(shù)器的主要指標是測量范圍、測量功能、精度和穩(wěn)定性,這些也是決定價格高低的主要依據(jù)。隨著電子測試技術的發(fā)展,頻率計數(shù)器日趨成熟。目前,頻率計數(shù)器已經(jīng)能輕松測量射頻、微波頻段信號。除頻率測量外,大多數(shù)頻率計數(shù)器還綜合了以下功能:頻率比、時間間隔、周期、上升/下降時間、相位、占空比、正/負脈沖寬度、總和、峰值電壓以及時間間隔平均等。頻率計功能延伸的最高境界就是綜合了調制域分析儀的功能。 本文從頻率計數(shù)器基本功能出發(fā)
16、,對測量參數(shù)分別做出介紹,最后介紹頻率計數(shù)器的一些數(shù)學統(tǒng)計功能。</p><p> 頻率計數(shù)器作用是根據(jù)其應用來設計的。頻率計數(shù)器最常見的應用是確定發(fā)射機和接收機的特性。發(fā)射機的頻率必須進行檢驗和校準,才能符合有關規(guī)章制度的要求。頻率計數(shù)器能對輸出頻率和一些關鍵的內(nèi)部頻率點(如本振)進行測量,是否滿足技術指標。</p><p> 頻率計數(shù)器的另一些應用包括計算機領域,在此領域中的數(shù)據(jù)通
17、信、微處理器和顯示器中都使用了高性能時鐘。對性能要求不高的應用領域包括對機電產(chǎn)品進行測量。頻率計數(shù)器的早期應用之一是作為信號發(fā)生器的一部分。在信號發(fā)生器信號輸出之前,先通過頻率計數(shù)器部件測量該信號,測量到的結果被轉換為模擬信號用于反饋控制信號發(fā)生器的頻率,直到達到所需要的數(shù)值,從而能得到穩(wěn)定的信號輸出。目前,很多信號發(fā)生器中都集成了頻率計數(shù)器的簡單作用。例如OI1842信號發(fā)生器也集成了測量范圍為0.1Hz~50MHz的頻率計數(shù)器作用。
18、</p><p> 在目前的電子技術中,頻率是最基本的參數(shù)之一,并且與許多電參量的測量方案、測量結果都有十分密切的關系,因此頻率的測量就顯得更為重要。頻率計可以用純硬件電路搭制。本文設計了一種以單片機AT89C51為核心的數(shù)字頻率計,其中硬件部分主要是由整形電路、單片機最小系統(tǒng)和顯示單元組成的,軟件設計是由一些功能模塊來實現(xiàn)的,例如有初始化模塊、數(shù)據(jù)顯示模塊等等。此外,通過控制單片機的各項功能和運算操作能力進而
19、來實現(xiàn)周期和頻率間的計數(shù)和數(shù)據(jù)的保存。通過這樣的設計能測量頻率1Hz-100kHz,這既達到了設計所要求的頻率測量范圍,又達到了較高的精確度。測量時,將被測輸入信號送給單片機,通過程序控制計數(shù),結果送數(shù)碼管顯示頻率值。本設計中的頻率計具有電路結構簡單、成本低、測量方便、精度較高等特點,適合測量低頻信號,能基本滿足一般情況下的需求,既保證了測頻精度,又使系統(tǒng)具有較好的實時性,并且本頻率計設計簡潔,便于攜帶,擴展能力強,適用范圍廣。另外,由
20、于本設計采用了模塊化的設計方法,提高了測量頻率的范圍,并且本次設計包括硬件畫圖和軟件程序編寫。</p><p><b> 1.1.2研究意義</b></p><p> 我們知道隨著科學技術的發(fā)展,尤其是單片機技術和半導體技術的高速發(fā)展,頻率計的研究及應用越來越受到廣泛重視,這樣對頻率測量設備的要求也越來越高。就目前來說,微處理器芯片發(fā)展迅速,不同領域的應用芯片在其
21、中發(fā)展很快。而51單片機是一門發(fā)展極快,應用方式極其靈活的使用技術。它以靈活輕便的設計、微小可以忽略不計的功耗、低廉可觀的成本,在數(shù)據(jù)采集方面、過程的控制當中、模糊控制、智能化儀表等領域得到廣泛的應用,極大地提高了這些關鍵領域的技術水平和自動化程度,為現(xiàn)代工業(yè)注入了新的活力。</p><p> 頻率計數(shù)器是一種基礎測量儀器,到目前為止已有30多年的發(fā)展歷史。我們所知道的傳統(tǒng)的數(shù)字頻率計數(shù)器,可以通過各種普通的硬
22、件電路以及軟件電路組合來實現(xiàn),其中間的開發(fā)過程當中、以及調試過程十分復雜,而且由于電子元器件中減少相互干擾的程度,最后導致影響頻率計的精度,同時由于電子器件體積不小,已經(jīng)遠遠不能夠適應當前電子行業(yè)的不斷發(fā)展要求需要。隨著當前科學技術的高速發(fā)展,頻率計數(shù)器也日益得到了發(fā)展和技術的提高。目前已經(jīng)有操作非常方便、量程寬闊、可靠性較高的頻率計;也有較高的分辨率、高精度值、測量高穩(wěn)定性、位移速度的頻率計數(shù)器。早期,設計師們追求的目標主要在于是擴展
23、測量范圍,再加上提高測量精度、高穩(wěn)定度等,這些也是人們衡量頻率計的技術水平,決定頻率計數(shù)器價格高低的判斷依據(jù)。目前這些基本科學技術日臻完善與成熟,得到了長足的發(fā)展?,F(xiàn)代科技技術可以相當容易地將頻率計數(shù)器的測頻上限擴展到微波頻段。在我們測試通訊方面、微波器件或產(chǎn)品的研發(fā)的過程中,是需要測量其中的頻率的。在現(xiàn)代電子技術設計中,頻率是其中最基本的參數(shù),我們知道并且與許多電參量的測量方案、測量結果都有十分密切的關系,因此頻率的測量就顯得出更加的
24、重</p><p> 51 單片機頻率計數(shù)器以其可靠性高、體積小巧、價格低廉、功能俱全等優(yōu)點,廣泛地適用于各種現(xiàn)代智能儀器和現(xiàn)代化工業(yè)體系中,這些的生活當中的智能儀器的操作在進行儀器校核以及測量過程的控制中,達到了自動化、智能化,傳統(tǒng)儀器面板上的開關和旋鈕被現(xiàn)實生活中鍵盤所代替利用,如今的測試員在測量時只需按需要的鍵,省掉很多繁復的人工調節(jié),智能儀器通常能自動選擇量程,能夠具有自動校準功能。有的還能自動調整測試
25、點,如此一來方便了正常操作,也提高了測試精度,另外,在電子技術中,頻率是最基本的參數(shù)之一,并且與許多電參量的測量方案、測量結果都有十分密切的關系,因此頻率計在科教科研、儀器測量、工業(yè)控制、集成控制等方面都有較廣泛的應用和推廣。并且在不斷發(fā)展當中,我相信在不久的將來必將取得更大的發(fā)展。</p><p><b> 1.2要實現(xiàn)的目標</b></p><p> 利用AT
26、89C51單片機的T0、T1的定時計數(shù)器功能,來完成對單片機內(nèi)部定時器的輸入信號進行頻率計數(shù),計數(shù)的頻率結果通過LCD(1602)并口顯示器動態(tài)顯示出來。要求能夠對1HZ-100KHZ的信號頻率進行準確計數(shù)。在PROTEUS仿真軟件下進行電路設計、選擇元器件、接插件、連接電路以及電路檢測并最終獲得實驗結果。最終使得改變時鐘發(fā)生的頻率,用6位數(shù)碼管顯示,比較誤差值。</p><p><b> 第二章 工
27、具介紹</b></p><p> 2.1 PROTEUS仿真軟件</p><p><b> 2.1.1簡介</b></p><p> Proteus軟件是英國的Labcenter electronics公司出版的EDA工具軟件。它不僅具有我們所認識的其它EDA工具軟件的仿真功能,此外還具備仿真單片機及外圍部件。就目前情況來看它
28、是最好的仿真單片機及外圍器件的工具之一,所以這次實驗我們也將用到它。</p><p> Proteus是世界上著名的EDA工具,從電路原理圖分布、調試代碼到單片機與外圍電路協(xié)同仿真,切換設置,真正的實現(xiàn)了從概念到產(chǎn)品的完整設計流暢。他是目前世界上唯一將電路仿真、PCB和虛擬性質的模型仿真軟件三項合一的設計平臺規(guī)劃,這種創(chuàng)新給這款軟件帶來了無與倫比的優(yōu)勢。其中各種處理器模型支持8051、及HC11、PIC10/1
29、2/16/18/24/30/DsPIC33、ARM、8086和MSP430等各種單片機,目前來看2011年又增加了比如Cortex和DSP等系列處理器的模塊。這些亮點導致他基本是獨一無二的。</p><p> 2.1.2 功能特點</p><p><b> 主要特點</b></p><p> 1、原理分布圖的展現(xiàn)</p>&
30、lt;p> 2、自動或人工布線PCB</p><p> 3、電路超級仿真模塊SPICE</p><p> 4、電路互動仿真模塊</p><p> 用戶甚至可以實時采用諸如RAM,ROM,鍵盤,馬達,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。</p><p> 5、仿真處理器及其外圍電路</p>
31、<p> 可以仿真51系列、AVR、PIC、ARM、等常用主流單片機。還可以直接在基于原理圖的虛擬原型。</p><p><b> 人性化設計:</b></p><p> 超過27000多種元器件,可以方便進行創(chuàng)建。即使模糊的搜索也能找到相應的元器件。智能化的連線結構,方便簡單。支持總線結構,讓用戶和讀者能夠明確分析線路結構。還有很多方便快捷的運用方式
32、,這里不再贅述。</p><p> 2.1.3 proteus的使用</p><p><b> 新建一個空白文檔</b></p><p> 打開元件庫,并尋找自己所用的元件,例如AT89C51。</p><p> 然后把所需的元件用普通連線和總線的方式連接起來。例如本次實驗的連接方式。</p>&l
33、t;p> 2.2 keil uvision4軟件</p><p> 2.2 .1 keil uvision4軟件的介紹</p><p> 2009年2月發(fā)布Keil uVision4,Keil uVision4引入了靈活的窗口管理系統(tǒng)窗口,使研究開發(fā)人員能夠使用多臺監(jiān)視器進行監(jiān)視,并提供了視覺上操作上的表面對窗口位置的完全控制的任何地方的數(shù)據(jù)。新的用戶界面可以較好地利用當前屏幕
34、范圍內(nèi)部的內(nèi)容和更加真實有效地組織多個窗口進行編譯,提供一個整潔,美觀大方、速效的環(huán)境來開發(fā)用戶應用程序。新版本支持了更多最新的最全面的ARM芯片,還添加了一些其他非常多的有趣的新功能和介紹。</p><p> 最新的一款Keil uVision4 IDE,旨在提高開發(fā)人員的生產(chǎn)力,實現(xiàn)更加快速,更加有效的程序開發(fā)工作。</p><p> 1、多顯示器和靈活的窗口管理系統(tǒng)</p&
35、gt;<p> 2、系統(tǒng)瀏覽器窗口的顯示設備外設寄存器信息</p><p> 3、調試還原視圖創(chuàng)建并保存多個調試窗口布局</p><p> 4、多項目工作區(qū)簡化與眾多的項目</p><p> 2.2.2 keil uvision4軟件的使用</p><p> 需要嚴格按照keil編譯步驟來進行,否則會出現(xiàn)若干問題,比如
36、程序不能定義,或者項目創(chuàng)建失敗。這是筆者在吃過非常多的虧之后總結的。</p><p> 第一步,新建Project,點擊New project出現(xiàn),輸入路徑并創(chuàng)建文件名。</p><p> 第二步,新建空白的程序文檔,并立刻保存,如果要編寫C語言則保存為.c文件。如果是要編寫匯編語言則保存為.asm文件。</p><p> 第三步,把第二步所建立的文件加載到工
37、程當中,并右擊工程名,選擇Options for target,在OUTPUT選項卡中將創(chuàng)建.hex文件的選項打勾。</p><p> 第四步,編譯并修改程序語言,編譯成功后會實現(xiàn)創(chuàng)建.hex文件。</p><p><b> 2.3 關于C語言</b></p><p> 由于本次實驗是用C語言編寫的所以有必要對C語言做簡單介紹。</
38、p><p> C 語言這種語言是美國的Dennis Ritchie在1972年設計發(fā)明的。它由早期的編程語言BCPL( Basic Combined Programming Language) 發(fā)展演變而來。C 語言之所以發(fā)展迅速,成為最受歡迎的語言之一,此外最近大幅度發(fā)展的C++編程軟件也是在C的基礎上演變而來的,主要因為它具有強大的功能,從而全世界有非常多的程序編寫員特別崇拜C語言。</p>&l
39、t;p> 第三章 硬件和軟件設計</p><p><b> 3.1硬件設計</b></p><p> 頻率計數(shù)器是一個將被測頻率顯示出來的計數(shù)裝置,它主要是由信號處理電路部分、單片機AT89C51控制部分、8位LED數(shù)碼管顯示器部分等組成。該系統(tǒng)的功能是將信號輸入P3.4口,通過單片機程序控制,對LED數(shù)碼管顯示器進行段控和位控,這些就是為了實現(xiàn)動態(tài)顯示。
40、頻率計數(shù)器是計算機、通訊設備、音頻視頻等科研生產(chǎn)領域不可缺少的測量儀器。在進行有關電子技術的設計、安裝、調試過程中,由于其使用十進制數(shù)顯示,測量迅速,精確度高,顯示直觀,我們會被經(jīng)常使用到。</p><p> 本次實驗的硬件設計相對簡單易理解操作,就是輸入信號,處理信號,然后再顯示信號。圖3.1為頻率計數(shù)器的硬件設計方框圖。</p><p> 圖3.1頻率計數(shù)器的硬件設計框圖</
41、p><p> 3.1.1 AT89C51單片機</p><p> 這是AT89C51的引腳圖,圖3.2。</p><p> 圖3.2AT89C51的引腳圖</p><p> 3.1.2 AT89C51的晶振接法</p><p> 關于AT89C51的晶振接法如圖3.3所示。</p><p>
42、; 圖3.3 AT89C51的晶振接法</p><p> 晶振是一種能把電能和機械能相互轉化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定、精確的單頻振蕩。在通常情況下,晶振的精確度達到百萬之五十。我們需要晶振提供時鐘周期然后使得單片機能夠執(zhí)行代碼。晶振X1、電容C2/C4及片內(nèi)與非門(作為反饋、放大元件)構成了電容三點式振蕩器,振蕩信號頻率與晶振頻率及電容C4、C2的容量有關,但主要由電路中晶振頻率決定.。</
43、p><p> 我選用2.4MHz頻率的晶體,電路允許輸入的脈沖頻率為10kHz。電容的大小范圍為一般為20pF~40pF,本次設計我們居中選用33pF電容。電容的作用還在于能夠容易起震并減少頻率的溫漂。</p><p> 3.1.3單片機的復位</p><p> 單片機的復位一般情況下都是靠外部電路鏈接來實現(xiàn)的,在時鐘電路工作之后,僅僅需要在單片機的RST引腳上出
44、現(xiàn)高于24個時鐘振蕩脈沖(相當于2個機器周期)以上的高電平,這樣的單片機便能夠實現(xiàn)初始化狀態(tài)復位。為了能夠保證應用系統(tǒng)能夠可靠正常的復位,在設計復位電路的時候,通常使RST引腳保持10ms以上的高電平的水平。只要保持高電平的狀態(tài),那么單片機就能夠實現(xiàn)循環(huán)復位;當RST從高電平順利地轉變?yōu)榈碗娖揭院?,AT89C51單片機從0000H地址開始執(zhí)行程序。需知在復位有效期間,EA引腳輸出高電平。</p><p> 它的
45、工作原理在于當電源接通,上電瞬間,電源對C1進行充電,此時復位引腳9即RST高電平有效,隨著時間推移,RST電平下降,此時轉為單片機正常工作。一般情況下復位時間為3~5個的RC時間。</p><p> 按鍵開關的使用是為了避免死機狀態(tài)下能夠正常復位。而設置并聯(lián)電容C3(這里也可以選擇串聯(lián)一個遠小于R1的電阻可以達到一樣的效果)是為了限制按下瞬間電容C1的電流,避免產(chǎn)生火花,以達到保護按鍵開關的目的。RC復位電路
46、的復位電路增加了二極管,在電源電壓瞬間下降時使電容迅速放電,一定寬度的電源毛刺也可令系統(tǒng)可靠復位。AT89C51上電復位電路圖如圖3.4所示:</p><p><b> 圖3.4復位電路</b></p><p><b> 3.1.4顯示電路</b></p><p> 在一些單片機系統(tǒng)中,經(jīng)常使用到的顯示器有如下幾種:
47、液晶顯示器,簡稱LCD;熒光管顯示器而發(fā)光二極管。顯示的部分又分為固定部分的顯示和可以拼裝的字段其他顯示,此外還有共陽極和共陰極之分等。如圖3.5所示。</p><p> 圖3.5顯示所用LED顯示器</p><p> 本次實驗采用7SEG-MPX8-CC-BLUE,里面有八個數(shù)碼管的顯示電路,這里只用到6個。每個數(shù)碼管都是一個小型電路圖,如圖3.6顯示。</p><
48、;p> 圖3.6 數(shù)碼管顯示電路</p><p> 我們知道共陰和共陽結構的LED顯示器各筆劃的段名和安排的位置是相同的。當其中的二極管導通時,相應的筆劃部分會發(fā)亮,由發(fā)亮的筆劃段組合而顯示的各種字符。其中的8個筆劃段a、b、c、d、e、f、g、dP對應于一個字節(jié)(8位)的D0、D1、D2、D3、D4、D5、D6、D7。如下表1.1,用LED顯示器顯示十進制轉換成十六進制數(shù)的字形代碼。 </p&
49、gt;<p><b> 表1.1 數(shù)制轉換</b></p><p> 3.1.5系統(tǒng)總體電路圖</p><p> 3.8系統(tǒng)總體電路圖</p><p><b> 3.2軟件設計 </b></p><p> 3.2.1關于信號處理的介紹</p><p>
50、; 在頻率計數(shù)器開始工作,或者完成一次簡單的頻率測量,系統(tǒng)軟件都進行測量初始化。測量初始化模塊設置堆棧指針(SP)、工作寄存器、中斷控制和定時/計數(shù)器的工作方式。</p><p> 首先定時/計數(shù)器的工作首先被設置為計數(shù)器的計數(shù)寄存器清0后,置運行控制位TR為1,啟動對待測信號的計數(shù)。計數(shù)閘門由軟件延時程序實現(xiàn),從計數(shù)閘門的最小值開始,也就是從測量頻率的高量程開始。利用計數(shù)閘門結束時TR清0,停止計數(shù)。計數(shù)寄
51、存器中的值通過16進制數(shù)道10進制數(shù)轉換程序轉換為10進制數(shù)。對10進制數(shù)的最高位進行判別,我們發(fā)現(xiàn)若其中的該位不為0,一旦滿足測量數(shù)據(jù)有效位數(shù)的要求,測量值和量程信息一起送到顯示模塊;若該位為0,將計數(shù)閘門的寬度不斷加大,直到10倍,我們需要重新對待測信號的技術,直到滿足測量數(shù)據(jù)有效位數(shù)的要求,達到預期的期望。</p><p> 等到被測信號經(jīng)預處理電路分頻后變成較寬的方波信號,并加至單片機的P3.4引腳,為
52、單片機測信號頻率提供有效的輸入信號。單片機通過檢測P3.4引腳來判斷是否能夠啟動測周期程序。當該引腳為高電平時則等待,知道該引腳出現(xiàn)低電平時才開始測周期。首先我們要將零賦給TH0、TL0兩個寄存器不斷的輸入,將定時器T0的運行控制位TR0置位,同時也將ET0置位以允許定時器T0終端,然后再判斷P3.4引腳是否還為低電平,這個時候我們要當不是低電平時等待。</p><p> 3.2.2關于終端控制</p&g
53、t;<p> 由于我們在程序設計中用到中斷方式,所以我們在此對單片機中斷系統(tǒng)中的中斷控制作一下介紹。</p><p> 其實中斷是工業(yè)過程控制及智能化儀器用微型機或單片機應用最多的一種數(shù)據(jù)傳送方式。單片機的這一種工作過程稱為中斷方式。在通常情況下,單片機執(zhí)行主程序,只有當正常狀態(tài)出現(xiàn)故障,或發(fā)出中斷請求時,單片機才能夠暫停執(zhí)行主程序,轉去執(zhí)行或處理其他的中斷服務程序,執(zhí)行完中斷服務程序的過程中,
54、再返回到主程序繼續(xù)運行。我們在基于資源共享原則上的中斷技術,在計算機中得到了廣泛的應用。中斷技術能實現(xiàn)CPU與外部設備的并行工作,利用提高CPU的利用率的方式以及數(shù)據(jù)的輸入/輸出效率;我們的中斷技術也能對計算機運行過程中突然發(fā)生的故障及時發(fā)現(xiàn)并進行自動處理如:硬件、運錯誤及程序等方面的故障;中斷技術還能使我們通過鍵盤不斷的發(fā)出請求命令,隨時跟進對運行中的計算機進行干擾,而不用先停機處理,然后再重新開機等方式進行。</p>
55、<p> 3.2.3關于控制寄存器</p><p> TCON寄存器既參與中斷控制又參與定時控制。現(xiàn)對其定時功能加以介紹。其中有關定時的控制位共有4位:</p><p> F0和TF1——利用計數(shù)溢出標志位當計數(shù)器計數(shù)溢出(計滿)時,該位置顯示為“1”;當我們使用查詢方式來查詢時,此位作狀態(tài)位供查詢,但在選用中斷方式的時候,此位作中斷標志位,在轉向中斷服務程序時也應該由硬件
56、自動清“0”。</p><p> TMOD寄存器是一個專用寄存器,用于設定兩個定時器/計數(shù)器的工作方式。但TMOD寄存器不能位尋址,只能用字節(jié)傳送指令設置其內(nèi)容。</p><p> 中斷允許控制寄存器(IE)</p><p> 定時器/計數(shù)器提供給用戶使用的有:8位計數(shù)器TH和TL,以及有關的控制位。這些內(nèi)容只能以軟件方法使用。</p><
57、p> 我們知道能夠產(chǎn)生中斷申請的部件被稱為中斷源。51單片機提供了五個中斷源:兩個外部中斷源和三個內(nèi)部中斷源。每一個中斷源都有一個中斷申請標志位,但是串行口占有兩個中斷標志位。一共有六個中斷標志位才行。</p><p> 另外定時器/計數(shù)器的兩個作用是用來精確的確定某一段時間間隔(作定時器用)或累計外部輸入的脈沖個數(shù)(作計數(shù)器用)。</p><p> 當89C51內(nèi)部的定時器/
58、計數(shù)器被選擇為定時器工作方式的時候,計數(shù)輸入信號是內(nèi)部時鐘脈沖,每當機器周期迅速產(chǎn)生一個脈沖使計數(shù)器增一個。由此看出,定時器/計數(shù)器的輸入脈沖周期與機器周期其實是一樣的,實際為振蕩頻率的1/12。所以當我們采用1.2MHz頻率的晶體時,實際計數(shù)器的頻率可為100KHz,當輸入時間脈沖的單位周期間隔為1μs。我們知道由于定時的精度決定于脈沖的周期,因此,當單片機系統(tǒng)需要高精度的定時器時,盡量選擇頻率較高的晶體最為適宜,才能得到比較好的效果
59、。</p><p> 第四章 調試測試 </p><p> 4.1軟件的編譯調試</p><p> 0錯誤0警告并生成了gujiazhu.hex的HEX文件</p><p> 4.2載入單片機后的測試</p><p><b> 輸入1HZ</b></p>&l
60、t;p><b> 0誤差。</b></p><p><b> 輸入100Hz</b></p><p> 有短時間內(nèi)識別為99Hz,更多的時間顯示為100Hz所以基本還是0誤差。</p><p><b> 輸入1KHz</b></p><p> 有最高千分之四的誤
61、差</p><p><b> 輸入25KHz</b></p><p> 有近萬分之三的誤差。</p><p> 輸入100KHZ的時候</p><p> 誤差達到了近千分之九。</p><p><b> 4.3誤差分析</b></p><p>
62、; 觀察發(fā)現(xiàn)在不同區(qū)間段誤差范圍不同,這是由于晶振管的頻率設置為2.4MHZ限定了量程在2.4MHZ/24=100KHZ以下。由觀察測量得知頻率,在1HZ~1KHZ的時候基本沒有誤差,在1KHZ~10KHZ區(qū)間內(nèi)部誤差在千分之三左右,在10K~100K之間的測量誤差較小,控制在萬分之四以內(nèi),而在100KHZ以后誤差迅速加大,達到了千分之九左右。</p><p><b> 結束語</b>&
63、lt;/p><p> 經(jīng)過長達3個月的準備工作,最終完成了畢業(yè)論文的寫作,盡管已經(jīng)取得了初步的成果,也就是完成當初所設想的完成設計,完成仿真,實現(xiàn)仿真圖的正常展現(xiàn)。從這次寫作畢業(yè)論文中,我學到了很多東西,除了非常專業(yè)的有關本次設計所需要的知識,我查閱了大量的專業(yè)資料,已經(jīng)WORD軟件PPT軟件等更是學會了如何相互學習,相互交流,取長補短的學習精神。</p><p> 但是,從設計初期的規(guī)劃
64、(最主要的方面)到論文的書寫格式,都存在著某些不足,比如設計過于簡單,還停留在90年代的方式,還有就是關于結果的分析還是不能夠到位,,即不能夠深入進去,需要不斷的修正。</p><p><b> 致謝</b></p><p> 本次實驗能夠順利的通過仿真離不開xx老師的督促和教導,使我本人能夠做到不拋棄不放棄,堅持完成張老師安排的任務,在此,學生無以為報,僅以文字
65、表達謝意。</p><p> 另外更要感謝我們信息工程學院的全體老師這四年來的諄諄教導,感謝信息工程學院09級所有同學無論在學習生活上,都不同程度的給予我?guī)椭诖吮硎旧钌畹闹x意。是他們使得我在這四年里生活的非常愉快!</p><p><b> 參考文獻</b></p><p> [1] 譚浩強.C程序設計(第三版)[M].清華大學出版社
66、,2005。</p><p> [2] 鄭江.數(shù)字電路實驗(第一版)[M].南京大學出版社,2008。</p><p> [3] 牛昱光.單片機原理與接口技術(第一版)[M].電子工業(yè)出版社,2010。</p><p> [4] 閻石.數(shù)字電子技術基礎(第五版)[M].高等教育出版社,2005。</p><p> [5] 郭天祥.單片
67、機C語言教程[M].電子工業(yè)出版社,2009。</p><p> [6] 郝建國.基于單片機的頻率設計[J].西安郵電學院學報,2003。</p><p> [7] 柳毅.探索單片機的密碼鎖[J].科學時代,2012。</p><p><b> 附錄</b></p><p> #include <AT89C
68、51.H> </p><p> unsigned char code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; </p><p> unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66, </p><p> 0x6d,0x7d,0x0
69、7,0x7f,0x6f,0x00,0x40}; </p><p> unsigned char dispbuf[8]={0,0,0,0,0,0,10,10}; </p><p> unsigned char temp[8]; </p><p> unsigned char dispcount; </p><p> unsigned c
70、har T0count; </p><p> unsigned char timecount; </p><p> bit flag; </p><p> unsigned long x; </p><p> void main(void) //主函數(shù)
71、</p><p><b> { </b></p><p> unsigned char i; </p><p> TMOD=0x15; </p><p><b> TH0=0; </b></p><p><b> TL0=0; </b>&
72、lt;/p><p> TH1=(65536-5000)/256; </p><p> TL1=(65536-5000)%256; </p><p><b> TR1=1; </b></p><p><b> TR0=1; </b></p><p><b> E
73、T0=1; </b></p><p><b> ET1=1; </b></p><p><b> EA=1; </b></p><p><b> while(1) </b></p><p><b> { </b></p>
74、<p> if(flag==1) </p><p><b> { </b></p><p><b> flag=0; </b></p><p> x=T0count*65536+TH0*256+TL0; </p><p> for(i=0;i<8;i++) &
75、lt;/p><p><b> { </b></p><p> temp[i]=0; </p><p><b> } </b></p><p><b> i=0; </b></p><p> while(x/10) </p><p
76、><b> { </b></p><p> temp[i]=x%10; </p><p><b> x=x/10; </b></p><p><b> i++; </b></p><p><b> } </b></p><
77、;p> temp[i]=x; </p><p> for(i=0;i<6;i++) </p><p><b> { </b></p><p> dispbuf[i]=temp[i]; </p><p><b> } </b></p><p> time
78、count=0; </p><p> T0count=0; </p><p><b> TH0=0; </b></p><p><b> TL0=0; </b></p><p><b> TR0=1; </b></p><p><b>
79、 } </b></p><p><b> } </b></p><p><b> } </b></p><p> void t0(void) interrupt 1 using 0 //中斷1模塊的函數(shù)編寫</p><p><b> { <
80、;/b></p><p> T0count++; </p><p><b> } </b></p><p> void t1(void) interrupt 3 using 0 //中斷3模塊的函數(shù)編寫</p><p><b> { </b></p>
81、<p> TH1=(65536-5000)/256; </p><p> TL1=(65536-5000)%256; </p><p> timecount++; </p><p> if(timecount==200) </p><p><b> { </
82、b></p><p><b> TR0=0; </b></p><p> timecount=0; </p><p><b> flag=1; </b></p><p><b> } </b></p><p><b> P2=0
83、xff;</b></p><p> P0=dispcode[dispbuf[dispcount]]; </p><p> P2=dispbit[dispcount]; </p><p> dispcount++; </p><p> if(dispcount==8) </p><p><b&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文--基于proteus仿真的頻率計數(shù)器
- 頻率計數(shù)器電路設計畢業(yè)論文
- 頻率計數(shù)器
- 頻率計數(shù)器的設計論文
- 頻率計數(shù)器.pdf
- 頻率計數(shù)器質量分等標準
- 頻率計數(shù)器課程設計
- 數(shù)字頻率計數(shù)器畢業(yè)設計
- 自制25MHz頻率計數(shù)器.pdf
- 基于單片機的頻率計數(shù)器課程設計
- 基于單片機的頻率計數(shù)器的設計.pdf
- CPCI功率計和頻率計數(shù)器模塊.pdf
- 頻率計數(shù)器-功率計軟件設計.pdf
- 電子電工課程設計頻率計數(shù)器
- 單片機課程設計--簡易頻率計數(shù)器
- 頻率計數(shù)器仍然是通用工具.pdf
- 基于單片機的頻率計數(shù)器的設計3.pdf
- 智能電子計數(shù)器的畢業(yè)論文
- 基于vhdl頻率計畢業(yè)論文
- 基于proteus仿真的信號發(fā)生器
評論
0/150
提交評論