數(shù)字頻率計51單片機_第1頁
數(shù)字頻率計51單片機_第2頁
數(shù)字頻率計51單片機_第3頁
數(shù)字頻率計51單片機_第4頁
數(shù)字頻率計51單片機_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、PAGE -PAGE . z.- - - .可修編 .自動化與電子工程學院單片機課程設(shè)計報告課程名稱:單片機原理與應(yīng)用 學 院:自動化與電子工程院 專業(yè)班級:學生*:完成時間:報告成績:評閱意見: 評閱教師 日期 目 錄 TOC o 1-3 h z u HYPERLINK l _Toc3623 第1章 數(shù)字頻率計概述 PAGEREF _Toc3623 1 HYPERLINK l _Toc28098 1.1數(shù)字頻率計概述 PAGEREF _Toc28098 1 HYPERLINK l _Toc1095 1.2數(shù)字頻率計的根本原理 PAGEREF _Toc1095 1 HYPERLINK l _T

2、oc28203 1.3單脈沖測量原理 PAGEREF _Toc28203 2 HYPERLINK l _Toc32727 第2章課程設(shè)計方案設(shè)計 PAGEREF _Toc32727 2 HYPERLINK l _Toc5560 2.1系統(tǒng)方案的總體論述 PAGEREF _Toc5560 2 HYPERLINK l _Toc2202 2.2系統(tǒng)硬件的總體設(shè)計 PAGEREF _Toc2202 3 HYPERLINK l _Toc4821 2.3處理方法 PAGEREF _Toc4821 3 HYPERLINK l _Toc2611 第3章硬件設(shè)計 PAGEREF _Toc2611 4 HYPER

3、LINK l _Toc26072 3.1單片機最小系統(tǒng) PAGEREF _Toc26072 4 HYPERLINK l _Toc16858 第4章軟件設(shè)計 PAGEREF _Toc16858 5 HYPERLINK l _Toc1135 4.1系統(tǒng)的軟件流程圖 PAGEREF _Toc1135 5 HYPERLINK l _Toc3732 4.2程序清單 PAGEREF _Toc3732 7 HYPERLINK l _Toc14701 第5章課程設(shè)計總結(jié) PAGEREF _Toc14701 7 HYPERLINK l _Toc24636 參考文獻 PAGEREF _Toc24636 8 HYP

4、ERLINK l _Toc11308 附錄 仿真截圖 PAGEREF _Toc11308 9 HYPERLINK l _Toc9198 附錄 程序清單 PAGEREF _Toc9198 15-. z.第1章 數(shù)字頻率計概述1.1數(shù)字頻率計概述數(shù)字頻率計又稱為數(shù)字頻率計數(shù)器,是一種專門對被測信號頻率進展測量的電子測量儀器,是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進制數(shù)字顯示被測信號頻率的數(shù)字測量儀器。它的根本功能是測量方波信號及其他各種單位時間內(nèi)變化的物理量。本數(shù)字頻率計將采用定時、計數(shù)的方法測量頻率,采用6個數(shù)碼管顯示6位十進制數(shù)。測量*圍從10Hz5.5kH

5、z,精度為1%,用單片機實現(xiàn)自動測量功能。根本設(shè)計原理是直接用十進制數(shù)字顯示被測信號頻率的一種測量裝置。它以測量頻率的方法對方波的頻率進展自動的測量。1.2數(shù)字頻率計的根本原理數(shù)字頻率計最根本的工作原理為:當被測信號在特定時間段T內(nèi)的周期個數(shù)為N時,則被測信號的頻率f=N/T如圖1.1所示。圖1.1 頻率測量原理頻率的測量實際上就是在1s時間內(nèi)對信號進展計數(shù),計數(shù)值就是信號頻率。用單片機設(shè)計頻率計通常采用的方法是使用單片機自帶的計數(shù)器對輸入脈沖進展計數(shù);好處是設(shè)計出的頻率計系統(tǒng)構(gòu)造和程序編寫簡單,本錢低廉,不需要外部計數(shù)器,直接利用所給的單片機最小系統(tǒng)就可以實現(xiàn)。缺陷是受限于單片機計數(shù)的晶振頻

6、率,輸入的時鐘頻率通常是單片機晶振頻率的幾分之一甚至是幾十分之一,在本次設(shè)計使用的AT89C51單片機,由于檢測一個由1到0的跳變需要兩個機器周期,前一個機器周期測出1,后一個周期測出0。故輸入時鐘信號的最高頻率不得超過單片機晶振頻率的二十四分之一。根據(jù)頻率檢測的原理,很容易想到利用51單片機的T0、T1兩個定時/計數(shù)器,一個用來定時,另一個用來計數(shù),兩者均應(yīng)該工作在中斷方式,一個中斷用于1s時間的中斷處理,一個中斷用于對頻率脈沖的計數(shù)溢出處理。1.3單脈沖測量原理首先設(shè)置定時器T0為方式1,在被測脈沖信號INT0的下降沿進入外部中斷函數(shù),在中斷函數(shù)中啟動T0計數(shù)碼,被測脈沖信號下降沿停頓T0

7、計數(shù),脈寬測量過程見以下圖:定時器T0以方式1對內(nèi)部脈沖計數(shù),16位計數(shù)值存放在40H高字節(jié)和41H單元第2章課程設(shè)計方案設(shè)計2.1系統(tǒng)方案的總體論述數(shù)字頻率計是用于測量信號(方波,脈沖信號)的頻率,并用十進制數(shù)字顯示,它具有精度高,測量迅速,讀數(shù)方便等優(yōu)點。脈沖信號的頻率就是在單位時間內(nèi)所產(chǎn)生的脈沖個數(shù),其表達式為fNT,其中,f為被測信號的頻率,N為計數(shù)器所累計的脈沖個數(shù)。T為產(chǎn)生N個脈沖所需的時間。計數(shù)器所記錄的結(jié)果,就是被測信號的頻率。如在1S內(nèi)記錄1000個脈沖,則被測信號的頻率為1000Hz。 本實驗課題僅討論一種簡單易制的數(shù)字頻率計。2.2系統(tǒng)硬件的總體設(shè)計本頻率計的數(shù)據(jù)采集系統(tǒng)

8、主要元器件是單片機AT89C51,由它完成對待測信號頻率的計數(shù)和結(jié)果顯示等功能,可分為以下幾個兩個模塊電路:單片機系統(tǒng)、數(shù)碼管及顯示電路。各模塊關(guān)系圖如圖2.1所示:圖2.1 數(shù)字頻率計系統(tǒng)框圖2.3處理方法本頻率計的設(shè)計以AT89C51 單片機為核心,利用它內(nèi)部的定時/ 計數(shù)器完成待測信號周期/ 頻率的測量。單片機AT89C51 內(nèi)部具有2 個16 位定時/計數(shù)器,定時/ 計數(shù)器的工作可以由編程來實現(xiàn)定時、計數(shù)和產(chǎn)生計數(shù)溢出中斷要求的功能。在構(gòu)成為定時器時,每個機器周期加1使用12MHz 時鐘時,每1us 加1,這樣以機器周期為基準可以用來測量時間間隔。在構(gòu)成為計數(shù)器時,在相應(yīng)的外部引腳發(fā)生

9、從1 到0 的跳變時計數(shù)器加1 ,這樣在計數(shù)閘門的控制下可以用來測量待測信號的頻率。外部輸入每個機器周期被采樣一次,這樣檢測一次從1 到0 的跳變至少需要2 個機器周期24 個振蕩周期,所以最大計數(shù)速率為時鐘頻率的1/ 24 使用12MHz 時鐘時,最大計數(shù)速率為500 KHz。定時/計數(shù)器的工作由相應(yīng)的運行控制位TR 控制,當TR置1,定時/ 計數(shù)器開場計數(shù);當TR 清0 ,停頓計數(shù)。第3章硬件設(shè)計3.1單片機最小系統(tǒng)AT89C51是一種高性能低功耗的采用CMOS工藝制造的8位微控制器,它提供以下標準特征:4KB的程序存儲器,128B的RAM,32條I/O線,2個16位定時器/計數(shù)器,2個外

10、部中斷源和1個串行口。圖3.1 單片機最小系統(tǒng)其引腳功能如下:電源: VCC -電源引腳,接+5V;GND -接地端;時鐘:*TAL1、*TAL2 - 晶體振蕩電路反相輸入端和輸出端。控制線:控制線共有4根, :地址鎖存允許/片內(nèi)EPROM編程脈沖 ALE功能:用來鎖存P0口送出的低8位地址 功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 PSEN:外ROM讀選通信號。 RESET:復(fù)位信號。 :內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。 功能:內(nèi)外ROM選擇端。 Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。 I/O線 89C51共有4

11、個8位并行I/O端口:P0、P1、P2、P3口,共32個引腳。P3口還具有第二功能,用于特殊信號輸入輸出和控制信號屬控制總線。5.P3口第二功能 P3.0 R*D 串行輸入口P3.1 T*D 串行輸出口P3.2 外部中斷0申請輸入端P3.3 外部中斷1申請輸入端P3.4 T0 定時計數(shù)器0計數(shù)輸入端P3.5 T1 定時計數(shù)器1計數(shù)輸入端P3.6外部數(shù)據(jù)存儲器寫選通P3.7外部數(shù)據(jù)存儲器讀選通第4章軟件設(shè)計4.1系統(tǒng)的軟件流程圖系統(tǒng)軟件設(shè)計采用模塊化設(shè)計方法。整個系統(tǒng)由初始化模塊、顯示模塊和信號頻率測量模塊和脈沖測量模塊組成(見圖4.1) 。上電后,進入系統(tǒng)初始化模塊,系統(tǒng)軟件開場運行。在執(zhí)行過

12、程中,根據(jù)外界開關(guān)選擇是頻率測量模式還是脈沖寬度測量模式。其中當閉合開關(guān),藍色指示燈亮時,表示是在單脈沖測量模式,翻開開關(guān),藍色指示燈滅,表示是在頻率測量模式。假設(shè)模式選擇錯誤,將會導(dǎo)致不能得到正確的測量結(jié)果。具體程序流程見以下圖:圖4.1 主函數(shù)流程圖圖4.2頻率測量流程圖圖4.3脈沖寬度測量流程圖4.2程序清單程序詳見附錄。第5章課程設(shè)計總結(jié)通過本次對數(shù)字頻率計的設(shè)計使我對書本上的知識有了更進一步的了解,同時也使我感覺到,在實際運用中僅僅憑借書本上的的知識是遠遠不夠的。在設(shè)計中我遇到了一些困難,比方測量方法的選擇上曾一度陷入困境,終于攻克了難題。本次課程設(shè)計使我的分析能力和動手能力都有了很

13、大的進步,激起了我對課程的更大興趣。在電子技術(shù)中,頻率是最根本的參數(shù)之一,并且與許多電參量的測量方案、測量結(jié)果都有十分密切的關(guān)系,因此頻率的測量就顯得更為重要。頻率計的根本原理是用一個頻率穩(wěn)定度高的頻率源作為基準時鐘,比照測量其他信號的頻率。通常情況下計算每秒內(nèi)待測信號的脈沖個數(shù),此時我們稱閘門時間為1秒。閘門時間也可以大于或小于一秒。閘門時間越長,得到的頻率值就越準確,但閘門時間越長則沒測一次頻率的間隔就越長。閘門時間越短,測的頻率值刷新就越快,但測得的頻率精度就受影響。本設(shè)計還有很多地方需要改良,其中包括對數(shù)據(jù)的處理,因為取模運算耗時過大 ,導(dǎo)致數(shù)碼管在測量高頻信號時出現(xiàn)閃爍。所以應(yīng)該優(yōu)化

14、算法,獲得更好的顯示效果。參考文獻1單片機原理及應(yīng)用陳為,中國石油大學附錄仿真截圖開關(guān)翻開,指示燈滅,表示此時為測量頻率模式,調(diào)整方波頻率,在數(shù)碼管上得到測量值為520Hz開關(guān)翻開,指示燈滅,表示此時為測量頻率模式,調(diào)整方波頻率,在數(shù)碼管上得到測量值為21Hz經(jīng)過放著可見,對頻率的測量還是比擬準確的以下是對脈沖寬度測量的仿真截圖雙擊脈沖發(fā)生器 ,會出現(xiàn)如下對話框設(shè)置脈沖格式,單脈沖,正脈沖,起始時間為1s后即開場仿真一秒后,脈沖自動產(chǎn)生,脈沖寬度設(shè)置為520us,點擊OK保持開關(guān)閉合,模式指示燈亮,表示此時在脈沖測量方式下,點擊仿真開場按鈕,開場仿真,1s后,單片機接收到脈沖信號,并把結(jié)果顯示

15、到數(shù)碼管上其默認單位為us,此時顯示結(jié)果為576us修改脈沖寬度為0.1s(要求測量*圍的上限),仿真結(jié)果如下,此時數(shù)碼管顯示為100000us,即0.1s附錄 程序清單/*課題名稱:單片機測輸入方波脈沖頻率和單脈沖寬度測量*圍:外界輸入頻率在10KHz以內(nèi)可以穩(wěn)定顯示,六位數(shù)碼管默認單位為Hz 當測量*圍過大時,因取模運算耗時大數(shù)碼管會閃爍,但顯示根本正確 單正脈沖測量*圍可達100us-0.1s,六位數(shù)碼管默認單位為us*/#include /包含51單片機存放器定義的頭文件#define uchar unsigned char#define uint unsigned intlong n

16、,num; /全局變量,n用來記錄T1的中斷次數(shù),4000次后正好是一秒:num用來存放測脈沖寬度時T0的計數(shù)值sbit u=P32; /將u位定義為P3.2sbit L=P27; /將L位定義為P2.7 sbit led=P26; /led亮時表示測量脈沖寬度狀態(tài)uchar a,b,c,d,e,f; /六位數(shù)碼管uchar code t=0*3f,0*06,0*5b,0*4f,0*66,0*6d,0*7d,0*07,0*7f,0*6f; /段碼/*函數(shù)功能:延時子函數(shù)*/void delay(uint z) uint i,j;for(i=0;iz;i+) for(j=0;jT1,定時方式二,

17、8位自動重裝;T0,計數(shù),方式1 TH0=0; /計數(shù)初值為零 TL0=0; TH1=6; /定時250us TL1=6;TR1=1; /開T1定時 TR0=1; /開T0計數(shù) ET0=1; /允許TO中斷 ET1=1; /允許T1中斷 EA=1; /開總中斷 /*函數(shù)功能:顯示子函數(shù)*/ void display() /顯示 P2=0*fe; /最右端一位數(shù)碼管P0=tf; /送段碼 delay(1); /延時 P0=0; /熄滅P2=0*fd; /右端數(shù)第二位P0=te; /送段碼delay(1); /延時P0=0; /熄滅P2=0*fb; /右端數(shù)第三位P0=td; /送段碼delay(

18、1); /延時P0=0; /熄滅P2=0*f7; /右端數(shù)第三位P0=tc; /送段碼delay(1); /延時P0=0; /熄滅P2=0*ef; /右端數(shù)第三位P0=tb; /送段碼delay(1); /延時P0=0; /熄滅P2=0*df; /右端數(shù)第三位P0=ta; /送段碼delay(1); /延時P0=0; /熄滅 /*函數(shù)功能:定時器T0中斷,定時1s*/void t1(void) interrupt 3 /定時器T1中斷, n+; /記錄中斷次數(shù),4000次正好1sif(n=4000) /一秒時間到,讀計數(shù)器的T0的值 n=0; /清零 EA=0; /關(guān)中斷TR1=0; /關(guān)T1

19、定時 TR0=0; /關(guān)T0計數(shù) num=(long)TH0*256+TL0; /取計數(shù)值 TL0=0; /計數(shù)清零TH0=0; /計數(shù)清零a=num/100000; /對計數(shù)值取模,顯示用b=num/10000%10;c=num/1000%10;d=num/100%10;e=num/10%10;f=num%10;TR1=1; /開T1定時 TR0=1; /開T0計數(shù) EA=1; /重開 /*函數(shù)功能:測脈沖寬度的子函數(shù)*/void maikuan(void) TMOD=0*01; /TMOD=0001H,使用計數(shù)器T0的模式1 EA=1; /開放總中斷E*0=1; /允許使用外中斷IT0=0; /選擇

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論