單片機(jī)頻率計程序設(shè)計.doc_第1頁
單片機(jī)頻率計程序設(shè)計.doc_第2頁
單片機(jī)頻率計程序設(shè)計.doc_第3頁
單片機(jī)頻率計程序設(shè)計.doc_第4頁
單片機(jī)頻率計程序設(shè)計.doc_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

頻率計程序設(shè)計沈陽工程學(xué)院課程設(shè)計任務(wù)書課程設(shè)計題目: 頻率計程序設(shè)計 系 別 自動控制工程系 班級 測控本091 學(xué)生姓名 喻志華 學(xué)號 2009308125 指導(dǎo)教師 呂勇軍 職稱 教授 課程設(shè)計進(jìn)行地點: F422 任 務(wù) 下 達(dá) 時 間: 11年 12月31日起止日期: 11年12月31日起至12年1月13日止教研室主任 年 月 日批準(zhǔn)1.設(shè)計主要內(nèi)容及要求;編寫頻率計程序。要求:1)能夠測量頻率并顯示。 2)能夠進(jìn)行閘門時間選擇。2.對設(shè)計論文撰寫內(nèi)容、格式、字?jǐn)?shù)的要求;(1).課程設(shè)計論文是體現(xiàn)和總結(jié)課程設(shè)計成果的載體,一般不應(yīng)少于3000字。(2).學(xué)生應(yīng)撰寫的內(nèi)容為:中文摘要和關(guān)鍵詞、目錄、正文、參考文獻(xiàn)等。課程設(shè)計論文的結(jié)構(gòu)及各部分內(nèi)容要求可參照沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范執(zhí)行。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。(3).論文要求打印,打印時按沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范的要求進(jìn)行打印。(4). 課程設(shè)計論文裝訂順序為:封面、任務(wù)書、成績評審意見表、中文摘要和關(guān)鍵詞、目錄、正文、參考文獻(xiàn)。3.時間進(jìn)度安排;順序階段日期計 劃 完 成 內(nèi) 容備注112月31日教師講解題目,學(xué)生查閱相關(guān)資料21月4日查閱相關(guān)資料、進(jìn)行方案論證31月5日參數(shù)計算、確定閘門時間切換方法41月6-8日編寫程序51月9-11日調(diào)試程序61月12日撰寫論文71月13日論文答辯沈 陽 工 程 學(xué) 院頻率計程序設(shè)計課程設(shè)計成績評定表系(部):自動控制工程系 班級:測控本091 學(xué)生姓名:喻志華 指 導(dǎo) 教 師 評 審 意 見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分調(diào)研論證能獨立查閱文獻(xiàn),收集資料;能制定課程設(shè)計方案和日程安排。0.15432工作能力態(tài)度工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好,能夠獨立完成設(shè)計工作, 0.25432工作量按期圓滿完成規(guī)定的設(shè)計任務(wù),工作量飽滿,難度適宜。0.25432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.55432指導(dǎo)教師評審成績(加權(quán)分合計乘以12) 分加權(quán)分合計指 導(dǎo) 教 師 簽 名: 年 月 日評 閱 教 師 評 審 意 見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分查閱文獻(xiàn)查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能力0.25432工作量工作量飽滿,難度適中。0.55432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.35432評閱教師評審成績(加權(quán)分合計乘以8)分加權(quán)分合計評 閱 教 師 簽 名: 年 月 日課 程 設(shè) 計 總 評 成 績分 目錄中 文 摘 要21設(shè)計任務(wù)描述31.1閘門時間的確定31.2 信號的采集31.3 定時與計數(shù)31.4 數(shù)據(jù)處理31.5 液晶顯示32 設(shè)計思路42.1 程序流程圖42.2 程序原理52.2.1時鐘初始化。52.2.2閘門時間控制模塊。52.2.3定時器計數(shù)器設(shè)置62.2.4數(shù)據(jù)轉(zhuǎn)換模塊82.2.4.1數(shù)據(jù)轉(zhuǎn)換模塊一82.2.4.2數(shù)據(jù)轉(zhuǎn)換模塊二82.2.4.3數(shù)據(jù)轉(zhuǎn)換模塊三82.2.4.4數(shù)據(jù)轉(zhuǎn)換模塊四82.2.4.5數(shù)據(jù)轉(zhuǎn)換模塊五92.4 LCD顯示102.4.1液晶顯示初始化模塊。102.4.2液晶顯示模塊。113 參數(shù)計算143.1 閘門時間的計算143.2 頻率的計算144 工作過程分析155小 結(jié)166致謝177參考文獻(xiàn)18附錄:源程序代碼19中 文 摘 要頻率測量儀器使用在生產(chǎn)和科研的各個部門,也是某些大型系統(tǒng)的重要組成部分。數(shù)字頻率計是計算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進(jìn)制數(shù)字顯示被測信號頻率的數(shù)字測量儀器。其基本功能是測量正弦信號,方波信號及其他各種單位時間內(nèi)變化的物理量。在進(jìn)行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試過程中,由于其使用十進(jìn)制數(shù)顯示,測量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計。 本次設(shè)計的數(shù)字頻率計將采用定時、計數(shù)的方法測量頻率,采用一個 LCD顯示器動態(tài)顯示4位數(shù)。測量范圍從100Hz-2MHz的方波。本頻率計的基本設(shè)計原理是通過控制按鈕來控制閘門時間,利用T1進(jìn)行定時,所定時間即為閘門時間,在定時的同時利用T0進(jìn)行計數(shù),一旦時間到了,即開始對TH0和TL0中的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,轉(zhuǎn)換后的BCD碼即可利用液晶顯示器顯示。雖然實現(xiàn)頻率測量有專用的頻率測量儀器,但不易用于特殊場合。而本設(shè)計介紹的用單片機(jī)實現(xiàn)的頻率測量儀,利用分頻和單片機(jī)的計數(shù)功能來實現(xiàn)等精度的測量.該頻率測量儀器可獨立使用;也可方便的嵌入電路系統(tǒng)中,并且將降低產(chǎn)品的成本,有利于新產(chǎn)品的設(shè)計與研制。本次設(shè)計通過對一個基于單片機(jī)的功能實現(xiàn)頻率計的設(shè)計學(xué)習(xí),詳細(xì)介紹了單片機(jī)應(yīng)用中的數(shù)據(jù)轉(zhuǎn)換顯示、LCD顯示原理和單片機(jī)的定時原理。從而達(dá)到學(xué)習(xí)、了解單片機(jī)相關(guān)指令在各方面的應(yīng)用的目的,將理論與實踐成功的結(jié)合起來。關(guān)鍵詞 單片機(jī) 頻率測量 分頻器 硬件 軟件1設(shè)計任務(wù)描述1.1閘門時間的確定當(dāng)測量頻率一定時,閘門時間選得越長,測量精度越高。本次設(shè)計通過對按鈕的控制來選擇閘門時間,選擇四個不同的閘門時間: 1ms、10ms、100ms、1s。 1.2 信號的采集 本次實驗通過交叉開關(guān)XBR1,選擇P0.0作為信號輸入端口。1.3 定時與計數(shù) 設(shè)置定時器T0作為外部計數(shù)器,T1作為定時器,通過控制閘門時間控制T1的定時,通過控制T1的啟停來控制T0的計數(shù),在T1開啟的階段由T0對信號進(jìn)行計數(shù)。在閘門時間范圍內(nèi),查看計數(shù)器T0所計的數(shù),并由此算出被測量信號的頻率。1.4 數(shù)據(jù)處理 數(shù)據(jù)的處理對于c8051f020單片機(jī)的指令沒有可以直接將計數(shù)/定時器中所存放的16位的數(shù)據(jù)轉(zhuǎn)換為10 進(jìn)制的數(shù)據(jù)用來顯示輸出。所以對于TH0里的數(shù)值通過*256進(jìn)行轉(zhuǎn)換,而對于TL0里的數(shù)值%100、%10來進(jìn)行轉(zhuǎn)換。 1.5 液晶顯示 將轉(zhuǎn)換的數(shù)據(jù)放入地址中,然后通過查表的方式,利用液晶顯示器將數(shù)據(jù)顯示出來。2 設(shè)計思路 2.1 程序流程圖時鐘初始化定時器T0,T1初始化端口初始化0.1ms開始 1ms 10ms1s定時到時間開啟定時器T0.T1液晶顯示數(shù)據(jù)轉(zhuǎn)換繼續(xù)定時1檔是否4檔3檔2檔外部信號改變2.2 程序原理2.2.1時鐘初始化。原理選擇內(nèi)部時鐘2MHZ,設(shè)定為1ms的初值。MOV XBR2,#40HMOV XBR1,#02H;分配引腳,p0.0分配給t0SETB EA;總使能中斷SETB TR0 ;T0開始計時SETB TR1 ;T1開始計時SETB ET1 ;開啟定時器1的中斷MOV CKCON,#08H;t0不分頻,t1分頻MOV TMOD,#1DH;t0計數(shù),t1定時MOV TH1,#0FFHMOV TL1,#59HMOV TH0,#0MOV TL0,#0統(tǒng)時間 2.2.2閘門時間控制模塊。原理:閘門時間的選擇是通過讀取P5口的狀態(tài)來控制的,然后通過基準(zhǔn)的定時時間1ms時間,通過計算使其相應(yīng)的在定時器中斷中循環(huán)次數(shù)來控制閘門時間。比如要設(shè)定1s的閘門時間,則應(yīng)該在中斷中循環(huán)1000次。循環(huán)的次數(shù)是存儲在R1,R0中,其中R0為內(nèi)循環(huán),R1為為循環(huán)。MOV A,P5JB ACC.0,AAAJB ACC.1,BBBJB ACC.2,CCCAJMP KKKAAA:MOV 30H,#1 ;10ms的設(shè)置AJMP DDDBBB:MOV 30H,#2 ;100ms的設(shè)置AJMP DDDCCC:MOV 30H,#3 ;1s的設(shè)置AJMP DDDKKK:MOV 30H,#0 ;1ms的設(shè)置,這是默認(rèn)的狀態(tài)DDD:MOV DPTR,#0F00HMOV R0,30HMOV A,R0MOVC A,A+DPTR ;查表操作MOV R1,AMOV A,30HCJNE A,#03H,LOP1MOV R2,#03HAJMP LOP2LOP1:MOV R2,#00HLOP2:MOV A,R1MOV 33H,A查表部分為:ORG 0F00HTAB:DB 00H,0AH,64H,0C8H下圖為P5口的中的原理圖,從圖中可以看出P5口與按鍵K相對應(yīng)的。 圖1.P5口控制按鈕圖 2.2.3定時器計數(shù)器設(shè)置 TIMER:CJNE R1,#00,LOD1 ;判斷R1,R2寄存器的狀態(tài)來控制循環(huán) CJNE R2,#00,LOD2 CLR TR0 ;當(dāng)達(dá)到設(shè)定時間的時間后關(guān)閉計時 CLR TR1 AJMP LOD LOD1:DJNZ R1,LOD AJMP LODLOD2:MOV R1,33H DJNZ R2,LODLOD: ;定時器初始化,時間設(shè)定為1ms。MOV TH1,#0FFHMOV TL1,#59HRETI T0計數(shù)值=MT1定時圖2.頻率計波形圖圖3. T0/T1方式1的原理圖 2.2.4數(shù)據(jù)轉(zhuǎn)換模塊2.2.4.1數(shù)據(jù)轉(zhuǎn)換模塊一 初始化數(shù)據(jù)時間存儲模塊。 MOV 20H,TH0;將十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),并將四位轉(zhuǎn)換后的數(shù)值存放在22H25H中最大為4095MOV 21H,TL0MOV 22H,#0MOV 23H,#0MOV 24H,#0MOV 25H,#02.2.4.2數(shù)據(jù)轉(zhuǎn)換模塊二 功能為判斷高四位是否為0,為零則直接計算第八位,不為零則須把高四位給區(qū)出來。;如果高四位大于零,則進(jìn)行下面的運算LCALL INITMOV A,20HCJNE A,#00H,LOP;判斷最高位是否為零,為零則只有三位數(shù)最大為255AJMP NEXT2.2.4.3數(shù)據(jù)轉(zhuǎn)換模塊三 高四位的轉(zhuǎn)換;高四位相當(dāng)于20H*256LOP:MOV A,20HMOV B,#2MUL ABADD A,23H;百位數(shù)加上高四位中的百位上的數(shù)MOV 23H,AMOV A,20HMOV B,#5MUL ABADD A,24H ;十位上的數(shù)加上十位數(shù)MOV 24H,AMOV A,20HMOV B,#6MUL ABADD A,25H ;個位上的數(shù)加上高八位上個位上的數(shù)MOV 25H,ALCALL JINWEI ;調(diào)用函數(shù)處理高八位 2.2.4.4數(shù)據(jù)轉(zhuǎn)換模塊四 低八位的數(shù)據(jù)轉(zhuǎn)換子程序。;定義一個函數(shù)入口這是計算低八位的十進(jìn)制數(shù)INIT:MOV A,21HLOPPP:CLR CYSUBB A,#64HJC LODDINC 23H;百位自加一AJMP LOPPPLODD:ADD A,#64HLOP3:CLR CYSUBB A,#0AHJC LOP4INC 24H;十位自加一MOV 21H,AAJMP LOP3LOP4:ADD A,#0AHMOV 25H,A;個位給25HRET2.2.4.5數(shù)據(jù)轉(zhuǎn)換模塊五 把低八位和高四位結(jié)合部分,注意這個子函數(shù)只有在高四位有值時且高四位的值給取出來時才調(diào)用該模塊。 JINWEI:MOV A,25H ;取出個位上的數(shù)JW:CLR CY ;處理個位上的數(shù)SUBB A,#0AHJC YYYINC 24HLJMP JWYYY:ADD A,#0AHMOV 25H,A ;存取個位上的十進(jìn)制數(shù)MOV A,24H ;取出十位上的數(shù)JWW: ;處理十位上的數(shù)CLR CYSUBB A,#0AHJC NETINC 23H ;百位上加一AJMP JWWNET:ADD A,#0AHMOV 24H,A ;存取十位上的十進(jìn)制數(shù)MOV A,23H ;取出百位上的數(shù),進(jìn)行轉(zhuǎn)換JW3:CLR CYSUBB A,#0AHJC NEXT3INC 22H ;把千位上的十進(jìn)制數(shù)給存取了AJMP JW3NEXT3:ADD A,#0AHMOV 23H,A ;存取百位上的十進(jìn)制數(shù)RET 2.3.1 實測結(jié)果與誤差分析 量化誤差為1誤差,被測信號與門控信號之間沒有同步鎖定的關(guān)系,門控信號何時到來是隨機(jī)的。在固定的閘門時間內(nèi)可能多(或少)放過一個脈沖信號,在顯示器的末位產(chǎn)生1的附加誤差。2.4 LCD顯示圖4.液晶顯示器原理電路圖2.4.1液晶顯示初始化模塊。25 這個子函數(shù)在用液晶顯示之前都調(diào)用一次。PORTINIT: ANL A,#0 MOV XBR0, A;交叉開關(guān)寄存器0 MOV P74OUT, #0F0H;端口47輸出方式寄存器推挽和漏極開路的選擇 RETLCDINIT: LCALL DELAY MOV P7, #38H ;功能設(shè)置;兩行顯示,5*7矩陣 MOV P6, #01H ;寫命令 MOV P6, #00H ;結(jié)束寫命令 LCALL DELAY MOV P7, #0EH ;開顯示,開光標(biāo),字符不閃爍 MOV P6, #01H ;寫命令 MOV P6, #00H ;結(jié)束寫命令 LCALL DELAY MOV P7, #06H ;I/D=1,AC自動增一;S=0,整體顯示不移動 MOV P6, #01H ;寫命令 MOV P6, #00H ;結(jié)束寫命令 LCALL DELAY MOV P7, #01H ;清除DDRAM,置AC=0 MOV P6, #01H ;寫命令 MOV P6, #00H ;結(jié)束寫命令 LCALL DELAY RET2.4.2液晶顯示模塊。LCALL LCDINIT ;調(diào)用顯示的初始化子程序。 MOV DPTR, #1100H ; MOV R4, #0AHLINE1: ANL A,#0 ;第一行的顯示的模塊 MOVC A, A+DPTR INC DPTR MOV P7,A ;字符送數(shù)據(jù)口P7 MOV P6,#05H ;寫 MOV P6,#04H ;結(jié)束寫 LCALL DELAY DJNZ R4,LINE1 MOV P7,#0C0H MOV P6,#01H MOV P6,#00H LCALL DELAY MOV DPTR, #1000H MOV R4, #04H ;顯示數(shù)據(jù)模塊 MOV R0,#22H LINE2:MOV A,R0 ;第一行的顯示的模塊 MOVC A,A+DPTR INC R0 MOV P7,A MOV P6,#05H ;A10=1xuan選擇數(shù)據(jù)寄存器a8=1,寫狀態(tài) MOV P6, #04H ;a8=0,結(jié)束寫狀態(tài) LCALL DELAY DJNZ R4, LINE2 LCALL DELAY;顯示單位模塊 MOV A,30H CJNE A,#0,FFFF MOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAY AJMP EEEEFFFF:MOV A,30HCJNE A,#1,GGGGMOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#30H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#2DH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYLJMP EEEEGGGG:MOV A,30HCJNE A,#2,EEEEMOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#30H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#2DH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#32H MOV P6,#05H MOV P6, #04H LCALL DELAYEEEE: MOV P7,#48H MOV P6,#05H MOV P6, #04H LCALL DELAY MOV P7,#5AH MOV P6,#05H MOV P6, #04H LCALL DELAY LJMP over3 參數(shù)計算3.1 閘門時間的計算 設(shè)定閘門時間定時器的定時寬度分別為0.1ms1ms10ms,當(dāng)計數(shù)器計下脈沖數(shù),通過數(shù)據(jù)轉(zhuǎn)換可將頻率輸出。根據(jù)所需要的時間來決定定時器的初始值。由定時器選擇的基為系統(tǒng)時鐘的12分頻,因此定時器每加一個字就是加1us。對于1ms初值的計算為Ct=216-(fosc*t)/k=65536-(11.0592*106*1*10-3)=65536-11.0592=54477.將其轉(zhuǎn)換為二進(jìn)制數(shù)為1101010011001101,所以可以得到Cth=0D4h,Ctl=0CDh;對于10ms則采用兩次定時,賦予初值Cth=28h,Ctl=00h;對于0.1ms則賦值Cth=0FBh,Ctl=0Ach。3.2 頻率的計算 由于計數(shù)值n=閘門時間頻率F0/被測信號頻率FX,所以對于1ms的閘門時間,頻率為n KHZ,對于10ms的閘門時間則為10n KHZ, 對于0.1ms的閘門時間則為0.1n KHZ。4 工作過程分析 該次課程設(shè)計的大體思路是使用C8051F020單片機(jī)的實驗開發(fā)板,使用T0/T1分別進(jìn)行計數(shù)、定時,被測信號從P0.0口輸入單片機(jī)時,選擇閘門時間,開啟T0.T1,T1開始定時,T0開始計數(shù),當(dāng)定時完畢時,T0計數(shù)完畢,把所計的數(shù)送給數(shù)據(jù)處理模塊,把十六進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù),然后把數(shù)據(jù)送給LCD顯示單元顯示,最后返回主程序,等待下一次信號的輸入。5小 結(jié)兩周簡短而忙碌的單片機(jī)設(shè)計結(jié)束了,在整個設(shè)計的中遇到諸多問題,但收獲遠(yuǎn)遠(yuǎn)超過付出。通過這次設(shè)計加強(qiáng)了我的思考、動手能力和解決問題的能力,同時也能更好的掌握單片機(jī)程序開發(fā)的整個過程,最重要的是學(xué)會了如何去與別人合作。隨著社會的發(fā)展,這方面的知識也在廣泛的應(yīng)用,所以這次設(shè)計同樣為今后的工作奠定了一定的基礎(chǔ)。這次課程設(shè)計的課題是頻率計程序設(shè)計,剛剛拿到題目時感到手足無措不知從哪里開始。雖然老師上課有講過相關(guān)內(nèi)容,但這對課程設(shè)計遠(yuǎn)遠(yuǎn)不夠,腦中比較茫然。所以我去圖書館查詢相關(guān)的資料,盡可能的了解有關(guān)于頻率的測量方法以及單片機(jī)的硬件結(jié)構(gòu)和所需要的軟件模塊的相關(guān)知識。而編寫程序的過程,也并非一帆風(fēng)順。其中雖有曲折,但通過不斷的摸索、嘗試、求證,使得整體程序大致確定,然后將其結(jié)構(gòu)化、模塊化的分解,一步一步進(jìn)行分析調(diào)試。最終程序在反復(fù)的試驗后得以實現(xiàn),在老師的指導(dǎo)下不斷改善方案最終完成任務(wù)。在本次設(shè)計的過程中,學(xué)校給我們提供了一個硬件與軟件結(jié)合設(shè)計的良好機(jī)會,不僅要求我們在掌握單片機(jī)的內(nèi)部的電路功能的同時,還要求我們熟練的編寫單片機(jī)的匯編語言程序并且實現(xiàn)一些課題性的硬軟件設(shè)計。這就要求我們在以后的學(xué)習(xí)中,應(yīng)該注意到這一點,更重要的是我們要學(xué)會把從書本中學(xué)到的知識和實際聯(lián)系起來,這不論是對我們以后的就業(yè)還是學(xué)習(xí),都會有很大的促進(jìn)和幫助。通過這次的課程設(shè)計,將會激勵我在下一階段的學(xué)習(xí)中更加努力。同時,通過本次課程設(shè)計,鞏固了我們學(xué)習(xí)過的專業(yè)知識,也使我們把理論與實踐從真正意義上相結(jié)合了起來;考驗了我們借助互聯(lián)網(wǎng)絡(luò)搜集、查閱相關(guān)文獻(xiàn)資料,和組織材料的綜合能力。更重要的是樹立了一種程序設(shè)計的思想,從中可以自我測驗,認(rèn)識到自己的不足之處,以便于在日后的學(xué)習(xí)中得以不斷改進(jìn)。兩周的課程設(shè)計過去了,我對單片機(jī)設(shè)計程序有了更深刻的認(rèn)識,這兩周雖然辛苦,但留給我更多的是收獲和美好的回憶。這個過程,不但加深了我對課上所學(xué)到的單片機(jī)理論知識的認(rèn)識和理解,重新讓自己認(rèn)識到了這門學(xué)科的在應(yīng)用方面的廣闊前景,并且通過知識與應(yīng)用于實踐的結(jié)合更加豐富了自己的知識。擴(kuò)展了知識面,不但掌握了本專業(yè)的相關(guān)知識,而且對其他專業(yè)的知識也有所了解,而且較系統(tǒng)的掌握單片機(jī)應(yīng)用系統(tǒng)的開發(fā)過程,因而自身的綜合素質(zhì)有了全面的提高。6致謝為期兩周的單片機(jī)課程設(shè)計結(jié)束了,盡管辛苦忙碌,但重要的是鞏固了已學(xué)的知識,與此同時也了解了許多課外的知識,更培養(yǎng)了自己的實踐能力。在這里首先要感謝的是我們的指導(dǎo)教師呂老師,正是有呂老師在最初階段對我們思路的指引,才使我滿懷信心的投入到本次課程設(shè)計中。在設(shè)計過程中呂老師指導(dǎo)了我很多關(guān)于編寫程序的要領(lǐng)和容易出錯的地方,正是因為有呂老師在編程階段的細(xì)心講解,在調(diào)試階段的問題指正,才使得我最終順利完成了本次課程設(shè)計。其次要感謝的是班級的同學(xué),在我遇到問題時,同學(xué)們總能耐心細(xì)致的給我講解,為我解答,是問題得以順利解決。正因為有他們的幫助,我的頻率計程序設(shè)計進(jìn)展很快,為最終調(diào)試贏得了寶貴的時間。最后要感謝圖書館在此期間提供的輔助資料,對設(shè)計的圓滿完成給予了大力幫助。在此對以上部門表示衷心的感謝。7參考文獻(xiàn)1謝自美編著.電子線路設(shè)計實驗測試.華中理工大學(xué)出版社,20022萬光毅 .Soc單片機(jī)實驗、實踐應(yīng)用設(shè)計. 北京:北京航空航天大學(xué)出版社,20063何立民 .單片機(jī)高級教程. 北京:北京航空航天大學(xué)出版社,20004張俊謨 . Soc單片機(jī)原理應(yīng)與用基于C8051F系列. 北京:北京航空航天大學(xué)出版社,20075林占江 .電子測量技術(shù).北京:電子工業(yè)出版社,20076李光飛 ,樓苗然主編.51系列單片機(jī).北京:北京航空航天大學(xué)出版社,2003附錄:源程序代碼$INCLUDE (C8051F020.INC)ORG 0000HLJMP MAINORG 001BHLJMP TIMERORG 3000HMAIN:MOV WDTCN,#0DEHMOV WDTCN,#0ADHMOV 30H,#00over:MOV XBR2,#40HMOV XBR1,#02H;分配引腳,p0.0分配給t0SETB EA;總使能SETB TR0SETB TR1SETB ET1MOV CKCON,#08H;t0不分頻,t1分頻MOV TMOD,#1DH;t0計數(shù),t1定時MOV TH1,#0FFHMOV TL1,#59HMOV TH0,#0MOV TL0,#0MOV A,P5JB ACC.0,AAAJB ACC.1,BBBJB ACC.2,CCCAJMP KKKAAA:MOV 30H,#1AJMP DDDBBB:MOV 30H,#2AJMP DDDCCC:MOV 30H,#3AJMP DDDKKK:MOV 30H,#0DDD:MOV DPTR,#0F00HMOV R0,30HMOV A,R0MOVC A,A+DPTRMOV R1,AMOV A,30HCJNE A,#03H,LOP1MOV R2,#05HAJMP LOP2LOP1:MOV R2,#00HLOP2:MOV A,R1MOV 33H,ASIXUHUAN:JB TR0,SIXUHUANMOV 20H,TH0;將十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),并將四位轉(zhuǎn)換后的數(shù)值存放在22H25H中最大為4095MOV 21H,TL0MOV 22H,#0MOV 23H,#0MOV 24H,#0MOV 25H,#0;如果高四位大于零,則進(jìn)行下面的運算LCALL INITMOV A,20HCJNE A,#00H,LOP;判斷最高位是否為零,為零則只有三位數(shù)最大為255AJMP NEXT;高四位相當(dāng)于20H*256LOP:MOV A,20HMOV B,#2MUL ABADD A,23H;百位數(shù)加上高四位中的百位上的數(shù)MOV 23H,AMOV A,20HMOV B,#5MUL ABADD A,24H ;十位上的數(shù)加上十位數(shù)MOV 24H,AMOV A,20HMOV B,#6MUL ABADD A,25H ;個位上的數(shù)加上高八位上個位上的數(shù)MOV 25H,ALCALL JINWEI ;調(diào)用函數(shù)處理高八位NEXT:LCALL PORTINIT ;REP: LCALL DELAY ; LCALL LCDINIT MOV DPTR, #1100H ; MOV R4, #0AHLINE1: ANL A,#0 MOVC A, A+DPTR INC DPTR MOV P7,A ;字符送數(shù)據(jù)口P7 MOV P6,#05H ;寫 MOV P6,#04H ;結(jié)束寫 LCALL DELAY DJNZ R4,LINE1 MOV P7,#0C0H MOV P6,#01H MOV P6,#00H LCALL DELAY MOV DPTR, #1000H MOV R4, #04H ;顯示數(shù)據(jù)模塊 MOV R0,#22H LINE2:MOV A,R0 MOVC A,A+DPTR INC R0 MOV P7,A MOV P6,#05H ;A10=1xuan選擇數(shù)據(jù)寄存器a8=1,寫狀態(tài) MOV P6, #04H ;a8=0,結(jié)束寫狀態(tài) LCALL DELAY DJNZ R4, LINE2 LCALL DELAY;顯示單位模塊 MOV A,30H CJNE A,#0,FFFF MOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAY AJMP EEEEFFFF:MOV A,30HCJNE A,#1,GGGGMOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#30H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#2DH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYLJMP EEEEGGGG:MOV A,30HCJNE A,#2,EEEEMOV P7,#4BH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#31H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#30H MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#2DH MOV P6,#05H MOV P6, #04H LCALL DELAYMOV P7,#32H MOV P6,#05H MOV P6, #04H LCALL DELAYEEEE: MOV P7,#48H MOV P6,#05H MOV P6, #04H LCALL DELAY MOV P7,#5AH MOV P6,#05H MOV P6, #04H LCALL DELAY LJMP overPORTINIT: ANL A,#0 MOV XBR0, A;交叉開關(guān)寄存器0 MOV P74OUT, #0F0H;端口47輸出方式寄存器推挽和漏極開路的選擇 RETLCDINIT: LCALL DELAY MOV P7, #38H ;功能設(shè)置;兩行顯示,5*

溫馨提示

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

評論

0/150

提交評論