版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程設(shè)計報告課程名稱: 單片機課程設(shè)計 題 目: 基于單片機的頻率計數(shù)器設(shè)計 學(xué) 院: 環(huán)境與化學(xué)工程 系:過程裝備與測控工程 專 業(yè): 班 級: 學(xué) 號: 學(xué)生姓名: 起訖日期: 指導(dǎo)教師: 摘要數(shù)字頻率計是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進制數(shù)字,顯示被測信號頻率的數(shù)字測量儀器。它的基本功能是測量正弦信號,方波信號以及其他各種單位時間內(nèi)變化的物理量。本課程設(shè)計主要設(shè)計一個簡易的頻率計,來實現(xiàn)信號在0-9999hz范圍內(nèi)周期變化的方波頻率的測定。該文主要介紹了基于stc89c52 單片機頻率計的設(shè)計方案和實現(xiàn)方法,該系統(tǒng)主要由硬件和軟件兩部分組成,其中
2、重點給出了具體硬件電路圖和軟件流程圖以及具體工作原理。硬件部分通過洞洞板的布線設(shè)計幫助,可以確保焊接時盡量少的飛線和出錯。軟件通過keil µ vision編譯及調(diào)試,其中在p1.7口編入了一個5500hz的方波,用以仿真調(diào)試該頻率計的軟硬件功能是否能夠?qū)崿F(xiàn)輸出頻率的功能。另外,本設(shè)計多增加了一個按鍵功能,通過一個按鍵來控制定時計數(shù)器的開始和關(guān)閉。該頻率計還帶有3*3的矩陣鍵盤,可以作為擴展應(yīng)用區(qū),通過編程實現(xiàn)。本設(shè)計中用的是led共陰數(shù)碼管,輸出頻率時采用的事動態(tài)顯示的方法。關(guān)鍵詞:頻率計;單片機;動態(tài)顯示目錄一、頻率計數(shù)器的設(shè)計任務(wù)和要求11.1 頻率計數(shù)器的設(shè)計任務(wù)11.2 設(shè)
3、計要求及發(fā)揮部分1二、方案的總體設(shè)計12.1 方案的設(shè)計12.2 方案的整體框圖22.3 方案的說明2三、 硬件設(shè)計23.1 單片機的最小系統(tǒng)23.1.1 上電復(fù)位電路23.1.2 晶振電路33.2 led數(shù)碼管顯示電路33.3 整體電路4四、 軟件設(shè)計54.1 程序流程圖54.2 初始化子函數(shù)54.3 延時子函數(shù)54.4 中斷子函數(shù)5五、 系統(tǒng)的調(diào)試和說明65.1 c程序的說明65.2 c程序編譯的結(jié)果65.3 實物圖7六、 設(shè)計總結(jié)與心得體會86.1設(shè)計總結(jié)86.2 設(shè)計心得9七、 參考文獻9附錄1012一、頻率計數(shù)器的設(shè)計任務(wù)和要求1.1 頻率計數(shù)器的設(shè)計任務(wù)本課程設(shè)計任務(wù)主要是基于單片
4、機系統(tǒng),通過軟件、硬件的調(diào)試,完成一個具有計數(shù)功能的頻率計數(shù)器。1.2 設(shè)計要求及發(fā)揮部分1.設(shè)計要求主要有:l 設(shè)計的方案合理、正確;l 完成系統(tǒng)硬件的設(shè)計及正確焊接;l 完成系統(tǒng)軟件的設(shè)計與調(diào)試; 2.發(fā)揮部分:本課程設(shè)計的發(fā)揮部分較小,只再增加了一個按鍵來控制定時器,計數(shù)器的開始。 二、方案的總體設(shè)計2.1 方案的設(shè)計本課程設(shè)計的基于atmel公司stc89c52單片機的頻率計數(shù)器,是利用該52單片機內(nèi)部的定時計數(shù)器來完成待測信號頻率的測量。stc89c52單片機內(nèi)部具有2個16位的定定時計數(shù)器t0與t1,可以通過編程來實現(xiàn)所需要的功能。定時/計數(shù)器t0與t1的核心都是16位的加1計數(shù)器
5、,th0與tl0構(gòu)成 在構(gòu)成定時器/計數(shù)器t0加1計數(shù)器的高8位和低8位;th1與tl1構(gòu)成在構(gòu)成定/計數(shù)器t1加1計數(shù)器的高8位和低8位。加1計數(shù)器的初值可以通過程序設(shè)定,這樣就可以獲得不同的計數(shù)器初值或定時時間。加1計數(shù)器用作定時器時,每個機器周期加1,這樣以機器周期為基準可以用來測量時間間隔。定時/計數(shù)器用作計數(shù)器時,在相應(yīng)的外部方波從1到0的跳變時計數(shù)器加1,這樣在計數(shù)閘門的控制下可以測量待測信號的頻率。定時/計數(shù)器的工作由響應(yīng)的運行控制位tr控制,當tr置1時,定時/計數(shù)器開始計數(shù),當tr置零時停止計數(shù)。 在本設(shè)計方案中,我在程序中設(shè)定t0工作在計數(shù)狀態(tài),t1工作在計時狀態(tài)下。t0計
6、數(shù)器對輸入信號進行計數(shù),由于信號的頻率就是每秒鐘信號的脈沖個數(shù),于是我讓t1工作在定時狀態(tài)下,定時時間為1秒。每定1秒鐘到,就停止t0的計數(shù),然后從t0的計數(shù)單元中讀取計數(shù)的數(shù)值,即完成了信號的頻率測量。最后通過四位數(shù)碼顯示出頻率值。由于要盡可能的使用最少的元件,在滿足設(shè)計要求的前提下,我將p1.7口與p3.4口(即t0)用導(dǎo)線連接,在設(shè)定程序時,利用t1定時的同時在p1.7口輸出一個設(shè)定好的方波,以便直觀的檢測頻率計數(shù)器的軟件、硬件是否達到設(shè)計的基本功能。2.2 方案的整體框圖 stc89c52單片機按鍵電路led數(shù)碼管顯示電路上電復(fù)位電路晶振電路電源電路圖1 系統(tǒng)總體框圖2.3 方案的說明
7、本課程設(shè)計采用內(nèi)部給定的方波來實現(xiàn)頻率計數(shù)的功能,缺陷在于只能測得一個方波的頻率,但是這個方波的輸入意在便于檢測設(shè)計的軟、硬件的功能是否實現(xiàn),若功能可以實現(xiàn),則可用于測量外部輸入的0-10000hz之間的任意頻率值。3、 硬件設(shè)計3.1 單片機的最小系統(tǒng)3.1.1 上電復(fù)位電路復(fù)位是單片機的初始化操作。單片機系統(tǒng)在上電啟動運行時,都需要先復(fù)位。其作用是使cpu 和系統(tǒng)中其他部件都處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。而復(fù)位是一個很重要的操作方式,但單片機本身是不能自動經(jīng)行復(fù)位的,必須配合相應(yīng)的外部復(fù)位電路才能實現(xiàn)。本設(shè)計的復(fù)位電路采用上電復(fù)位加按鍵手動復(fù)位,其電路如下圖所示:圖2 上電
8、復(fù)位電路3.1.2 晶振電路單片機工作是在統(tǒng)一的時鐘脈沖控制下一拍一拍地進行的,這個脈沖是單片機控制器中的時序電路發(fā)出的。單片機的時序就是 cpu 在執(zhí)行指令時所需控制信號的時間順序。為了保證各部件的同步工作,單內(nèi)部電路應(yīng)在唯一的時鐘信號下嚴格按時序進行工作。其電路原理圖如下:圖3 晶振電路3.2 led數(shù)碼管顯示電路顯示器是微機重要的輸出設(shè)備。顯示器有顯示監(jiān)控結(jié)果、提供用戶操作界面等功能。在本次設(shè)計中采用了 led 顯示器,即數(shù)碼管。數(shù)碼管的每一個數(shù)碼段是一只發(fā)光二極管。當發(fā)光二極管導(dǎo)通時,相應(yīng)的一個點或者一個筆畫發(fā)光,控制發(fā)光二極管發(fā)光組合,可以顯示出所需字符。我采用了共陰極結(jié)構(gòu)。在定義其
9、顯示字形的碼段時,通過 i/o 口送出七段碼 其段碼表如下:表1 共陰數(shù)碼管段選碼顯示字形0123456789共陰段選碼3fh06h5bh4fh66h6dh7dh07h7fh6fh數(shù)碼管的電路圖如下: 圖4數(shù)碼管接線電路3.3 整體電路 圖5 整體原理圖4、 軟件設(shè)計本課程設(shè)計包含了主函數(shù)、初始化子函數(shù)、中斷子函數(shù)、按鍵掃描子函數(shù)和延時子函數(shù)等多個函數(shù)。開始4.1 程序流程圖初始化中斷程序頻率輸出圖6 主流程圖4.2 初始化子函數(shù)初始化子函數(shù)主要是:1.對t0、t1定時/計數(shù)器進行初始化;2.對單片機各管腳及按鍵賦初值,以便主程序的執(zhí)行。4.3 延時子函數(shù)主要用于數(shù)碼管動態(tài)顯示的子程序中。vo
10、id delay(uchar z)uchar x,y;for(x=z;x>0;x-)for(y=113;y>0;y-);4.4 中斷子函數(shù)流程圖如下:圖7 中斷程序流程圖5、 系統(tǒng)的調(diào)試和說明5.1 c程序的說明c 語言是一種通用的程序設(shè)計語言,其代碼率高,數(shù)據(jù)類型及運算符豐富,位操作能力強,適用于各種應(yīng)用的程序設(shè)計。使用 c 語言進行單片機應(yīng)用系統(tǒng)開發(fā),具有編程靈活、調(diào)試方便、目標代碼編譯效率高的特點。c 語言也是目前使用最廣的單片機應(yīng)用系統(tǒng)編程語言。由 c 語言編程的單片機應(yīng)用程序,稱為單片機 c 語言程序。mcs-51 系列單片機開發(fā)系統(tǒng)的編譯軟件可以對 51 單片機 c 語
11、言源程序進行編譯,稱為 c51 編譯器。在 c51 編譯軟件中可進行 51 單片機c 語言程序的調(diào)試。5.2 c程序編譯的結(jié)果在keil µ vision上編譯的結(jié)果:圖8 程序調(diào)試圖5.3 實物圖 圖9 正面實物圖 圖10 反面實物圖6、 設(shè)計總結(jié)與心得體會6.1設(shè)計總結(jié)為期一周的單片機課程設(shè)計已經(jīng)接近尾聲了,單片機課程設(shè)計的主要目的是讓我們提高動手能力和綜合運用能力。經(jīng)過這一周的設(shè)計,我更加深刻的體會到“萬事開頭難”這話的含義了。這次單片機的課程設(shè)計,我選的課題是頻率計數(shù)器。這個看似很簡單的課題,要實現(xiàn)起來卻是困難重重。首先是硬件的設(shè)計,通過在loch master上布線設(shè)計硬件
12、的連接方式,這一步還是比較輕松,主要是布的線要盡可能的不交叉。之后就開始對著圖焊板子,開始把元器件焊上去還是比較簡單好看的??墒蔷o接著進入焊線階段就難住我了,線拉不直,焊在板子上就很丑;另一方面,在焊的過程中就會發(fā)現(xiàn)有那么幾根線是按照布線圖來焊是實現(xiàn)不了的,于是,中途又會重新改布線圖。硬件部分我花了一天的時間,反反復(fù)復(fù)的修改,焊接,終于初步完成了。板子焊好后就進入硬件調(diào)試階段,硬件調(diào)試時,發(fā)現(xiàn)了線路的一些錯誤接法和元器件位置的錯接等等,這樣有花了半天時間調(diào)試修改,硬件就基本上算是完成了。接著馬上又進入了編寫軟件及調(diào)試過程,這是讓我最頭疼的一部分。我自己邊看視頻邊按著流程圖慢慢的編寫了一個,可是
13、輸入硬件后不出意外的,無法實現(xiàn)其功能。于是就進入軟件的調(diào)試階段,這個過程持續(xù)了很長時間,最后是通過同學(xué)的幫助才能調(diào)試成功,實現(xiàn)它能實現(xiàn)的功能,當然還是有些微小誤差的。總的來說,這一個星期里學(xué)到了很多的東西,更覺得自己需要不斷的提高自己。6.2 設(shè)計心得通過一周的單片機課程設(shè)計,真的是感觸頗多。這一個星期以來我們每天早上9點就到教室一直待到晚上9點才回去,每天和大家在一起焊板子,一起討論問題,一起互相幫助的畫面還歷歷在目。這其中有歡聲笑語,也有苦有累。在評優(yōu)答辯的時候,看到了很多很多優(yōu)秀的課程設(shè)計,讓我一邊敬佩,又一邊自慚形穢。每個優(yōu)秀的人都有著不同常人的努力,而我還不夠努力,所學(xué)的東西也很有限
14、。很多優(yōu)秀的課程設(shè)計都是通過他們自己在課余時間自學(xué)而成的。相比之下,我需要更加努力的去學(xué)習(xí)更多的知識,不斷的填充自己。7、 參考文獻【1】張友德,單片微型機原理應(yīng)用與實踐(第四版),復(fù)旦大學(xué)出版社,2000【2】李朝青.單片機原理及接口技術(shù)(第三版). 北京航空航天大學(xué)出版社.2005.【3】丁明亮、唐前輝. 51單片機應(yīng)用設(shè)計與仿真-基于keil c與proteus. 北京航空航天大學(xué)出版社,2009.【4】楊長興、劉衛(wèi)國.c+程序設(shè)計.中國鐵道出版社.2010.附錄1、 源程序#include<reg52.h>#define uint unsigned int#define u
15、char unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;sbit d1=p10;sbit d2=p11;sbit d3=p12;sbit d4=p13;sbit d5=p17;sbit a1=p24;sbit a2=p25;uint m,i,t;uint a0,b0,c0,d0;void display(uint a0,uint b0,uint c0,uint d0);void init();void delay(uchar z);void main()init();a1=0; a
16、2=1;while(1) if(a2=0) a2=0; tr0=1; tr1=1; if(i<1000) a0=m/1000;b0=m%1000/100;c0=m%100/10;d0=m%10;display(a0,b0,c0,d0);if(i=1000) while(1)display(a0,b0,c0,d0);void init() i=0;m=0;t=0; d5=1;tmod=0x16;th1=(65536-20)/256;tl1=(65536-20)%256;ea=1;et1=1;et0=1;th0=0xff;tl0=0xff;tr0=0; tr1=0;void delay(uchar z)uchar x,y;for(x=z;x>0;x-)for(y=113;y>0;y-);void timer0() interrupt 1 tr0=0;th0=0xff;tl0=0xff;m=m+1;void timer1() interrupt 3tr1=0;th1=(65536-20)/256;tl1=(65536-20)%256;i+;t+; if(t=15)d5=d5;t=0; tr1=1;void display(uint
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)中秋節(jié)的慰問信范文(7篇)
- 主持人的心得體會
- DB12T 606.1-2015 農(nóng)村地區(qū)郵政與快遞服務(wù)規(guī)范 第1部分:郵政
- 中秋晚會董事長精彩致辭范文(15篇)
- 端午節(jié)周記范文合集4篇
- 高等數(shù)學(xué)(管)-教學(xué)大綱
- 影響疫苗免疫效果的幾點因素
- 影響孩子一生的早期教育
- 糖果王國課件教學(xué)課件
- 機房停電應(yīng)急預(yù)案
- 《中級微觀經(jīng)濟學(xué)》考試復(fù)習(xí)題庫(附答案)
- 三年級 上冊科學(xué) 課件-2.4 哺乳動物 |湘教版(一起)(共23張PPT)
- 建設(shè)工程總投資組成表
- 箱變施工方案
- 心系中國夢兒童競選少先隊大隊長PPT飄揚紅領(lǐng)巾光榮少先隊PPT課件(帶內(nèi)容)
- 專題05 家國情懷 中考歷史學(xué)科核心素養(yǎng)專題解讀課件(2022版新課標)
- 醫(yī)院護理品管圈成果匯報縮短腦卒中靜脈溶栓患者DNT完整版本PPT易修改
- 幼兒園教學(xué)課件中班美術(shù)《百變的花瓶》課件
- 液化石油氣充裝操作規(guī)程(YSP118液化石油氣鋼瓶)
- 工程樣板過程驗收單
- 顱內(nèi)動脈動脈瘤介入治療臨床路徑
評論
0/150
提交評論