2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  單片機課程設(shè)計報告</b></p><p>  設(shè)計課題:脈沖寬度測量</p><p><b>  摘要</b></p><p>  二十世紀跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進入的電腦時代。但是,實際工作中并不是任何需要計算機的場合都要求計算機有很高的性能,一個控制電冰箱溫度

2、的計算機難道要用P4嗎?應(yīng)用的關(guān)鍵是看是否夠用,是否有很好的性能價格比。單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價格便宜、為學習、應(yīng)用和開發(fā)提供了便利條件。自從1976年問世以來,單片機獲得了巨大的發(fā)展。現(xiàn)在比較流行的單片機是美國Intel的MCS51/96以及Motorola的MC系列,Zilog的Z8系列,同時還有更多新型的

3、、功能更強的單片機不斷出現(xiàn)。 Abstract:Twentieth century across the three “power” of the era, that the age of electricity, the electronic age and has </p><p>

4、;  關(guān)鍵字:單片機,脈沖寬度,系統(tǒng)設(shè)計。</p><p><b>  脈沖寬度測量</b></p><p><b>  目錄</b></p><p>  第一章    引言……………………………………………4</p><p>  第二章 方案選擇及總體設(shè)計…………

5、………………4</p><p>  2.1 硬件技術(shù)指標</p><p>  2.2 方案選擇及工作原理</p><p>  2.3 系統(tǒng)實現(xiàn)功能</p><p>  第三章 控制系統(tǒng)的硬件設(shè)計…………………………5</p><p>  3.1 系統(tǒng)模塊構(gòu)成</p><p>  3.

6、2 系統(tǒng)工作原理圖</p><p><b>  3.3 管腳說明</b></p><p>  第四章 軟件設(shè)計及程序………………………………8</p><p>  4.1 軟件設(shè)計流程</p><p>  4.2 各子程序功能描述</p><p>  4.2.1 定時器T0中斷服務(wù)程

7、序</p><p>  4.2.2 顯示子程序</p><p>  4.3 系統(tǒng)總程序</p><p>  第五章 系統(tǒng)制作與調(diào)試…………………………………11</p><p><b>  5.1 硬件調(diào)試</b></p><p>  5.1.1 調(diào)試方法</p><

8、;p><b>  5.2 軟件調(diào)試</b></p><p><b>  5.3 結(jié)果分析</b></p><p>  第六章 總結(jié)與體會 ………………………………………12</p><p>  第七章 教材及參考書………………………………………12</p><p><b>

9、;  第一章 引言</b></p><p>  近年來隨著科技的飛速發(fā)展,單片機的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月益更新。在實時檢測和自動控制的單片機應(yīng)用系統(tǒng)中,單片機往往是作為一個核心部件來使用,僅單片機方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點的軟件結(jié)合,加以完善。本系統(tǒng)采用單片機AT89C51為中心器件來設(shè)計脈沖寬度測量器,系統(tǒng)實用性強、操作簡單、擴展性

10、強。在現(xiàn)有的單片機仿真機系統(tǒng)上掌握相關(guān)軟硬件設(shè)計與調(diào)試知識,根據(jù)所選擇題目,焊接好硬件電路,正確進行元器件的測試與調(diào)試,并在計算機上編寫匯編程序調(diào)試運行,并實現(xiàn)參考選題中要求的設(shè)計。</p><p>  第二章 方案選擇及工作原理</p><p>  2.1 硬件技術(shù)指標</p><p>  脈寬測量范圍:0~9.999s</p><p>

11、  顯示方式:四位數(shù)字顯示</p><p>  2.2 方案選擇及工作原理</p><p>  將脈沖信號從P3.0腳引入。將T0設(shè)為定時器方式工作。并工作在門控方式。初值TL0、TH0設(shè)為(65536-1000)MOD 256 (65536-1000)/256</p><p>  在待測脈沖高電平期間,T0對內(nèi)部周期脈沖進行計數(shù)。在待測脈沖高電平結(jié)束時,其下降

12、沿向P3.0發(fā)中斷,在外中斷0的中斷服務(wù)程序中,讀取TH0、TL0的計數(shù)值,該值就是待測脈沖的脈寬。隨后清零TH0和TL0,以便下一脈寬的測量。</p><p>  2.3 系統(tǒng)實現(xiàn)功能</p><p>  在電源正確接入的前提下,由手動給矩形按鍵按一下產(chǎn)生信號從P3.0口輸入,從手動按下到手動停止之間進行計數(shù)。通過數(shù)碼管顯示計數(shù)脈沖的個數(shù),其個數(shù)即為脈沖寬度。</p>&

13、lt;p>  第三章 控制系統(tǒng)的硬件設(shè)計</p><p>  3.1 系統(tǒng)模塊構(gòu)成</p><p><b>  3.2 顯示方案</b></p><p>  于系統(tǒng)要顯示的內(nèi)容較簡單,顯示量不多,所以選用數(shù)碼管既方便又經(jīng)濟。LED有共陰極和共陽極兩種。</p><p>  二極管的陰極連接在一起,通常此公共陰

14、極接地,而共陽極則將發(fā)光二極管的陽極連接在一起,接入+5V的電壓。一位顯示器由8個發(fā)光二極管組成,其中7個發(fā)光二極管構(gòu)成字型“8”的各個筆劃(段)a~g,另一個小數(shù)點為dp發(fā)光二極管。當在某段發(fā)光二極管施加一定的正向電壓時,該段筆劃即亮;不加電壓則暗。為了保護各段LED不被損壞,需外加限流電阻。</p><p>  圖1.1 LED數(shù)碼管結(jié)構(gòu)原理圖</p><p>  眾所周知,LED顯示

15、數(shù)碼管通常由硬件7段譯碼集成電路,完成從數(shù)字到顯示碼的譯碼驅(qū)動。本系統(tǒng)采用軟件譯碼,以減小體積,降低成本和功耗,軟件譯碼的另一優(yōu)勢還在于比硬件譯碼有更大的靈活性。所謂軟件譯碼,即由單片機軟件完成從數(shù)字到顯示碼的轉(zhuǎn)換。從LED數(shù)碼管結(jié)構(gòu)原理可知,為了顯示字符,要為LED顯示數(shù)碼管提供顯示段碼,組成一個“8”字形字符的7段,再加上1個小數(shù)點位,共計8段,因此提供給LED數(shù)碼管的顯</p><p>  示段碼為1個字節(jié)

16、。各段碼位與顯示段的對應(yīng)關(guān)系如表表1.2 </p><p>  表1.2 各段碼位的對應(yīng)關(guān)系</p><p>  需說明的是當用數(shù)據(jù)口連接LED數(shù)碼管a~dp引腳時,不同的連接方法,各段碼位與顯示段有不同的對應(yīng)關(guān)系。通常數(shù)據(jù)口的D0位與a段連接,D1位與b段連接,……D7位與dp段連接,如表1所示,表2.3為用于LED數(shù)碼管顯示的十六進制數(shù)和空白字符與P的顯示段碼。</p>

17、<p>  根據(jù)STC89C52RC單片機灌電流能力強,拉電流能力弱的特點,我們選用共陽數(shù)碼管。將AT89C2051的P1.0~P1.7分別與共陽數(shù)碼管的a~g及dp相連,高電平的位對應(yīng)的LED數(shù)碼管的段暗,低電平的位對應(yīng)的LED數(shù)碼管的段亮,這樣,當P0口輸出不同的段碼,就可以控制數(shù)碼管顯示不同的字符。例如:當P0口輸出的段碼為1100 0000,數(shù)碼管顯示的字符為0。</p><p>  表1.3

18、LED顯示段碼</p><p>  注:(1)本表所列各字符的顯示段碼均為小數(shù)點不亮的情況。</p><p> ?。?)“空白”字符即沒有任何顯示</p><p>  數(shù)碼管顯示器有二種工作方式,即靜態(tài)顯示方式和動態(tài)掃描顯示方式。為節(jié)省端口及降低功耗,本系統(tǒng)采用動態(tài)掃描顯示方式。動態(tài)掃描顯示方式需解決多位LED數(shù)碼管的“段控”和“位控”問題,本電路的“段控”(即要顯

19、示的段碼的控制)通過P0口實現(xiàn);而每一位的公共端,即LED數(shù)碼管的“位控”,則由P1口控制。這種連接方式由于多位字段線連在一起,因此,要想顯示不同的內(nèi)容,必然要采取輪流顯示的方式,即在某一瞬間,只讓其中的某一位的字位線處于選通狀態(tài),其它各位的字位線處于斷開狀態(tài),同時字段線上輸出這一位相應(yīng)要顯示字符的字段碼。在這一瞬時,只有這一位在顯示,其他幾位則暗。在本系統(tǒng)中,字位線的選通與否是通過74HC138來控制,這里74HC138的功能不再詳述

20、。</p><p>  STC89C52RC單片機介紹</p><p>  STC89C52RC單片機是由深圳宏晶公司代理銷售的一款MCU,是由美國設(shè)計生產(chǎn)的一種低電壓、高性能CMOS 8位單片機,片內(nèi)含8kbytes的可反復寫的FlashROM和256bytes的RAM,2個16位定時計數(shù)器[5]。 </p><p>  STC89C52單片機內(nèi)部主要包括累加器A

21、CC(有時也簡稱為A)、程序狀態(tài)字PSW、地址指示器DPTR、只讀存儲器ROM、隨機存取存儲器RAM、寄存器、并行I/O接口P0~P3、定時器/計數(shù)器、串行I/O接口以及定時控制邏輯電路等。這些部件通過內(nèi)部總線聯(lián)接起來,構(gòu)成一個完整的微型計算機。其管腳圖如圖所示。</p><p>  STC89C52RC單片機管腳結(jié)構(gòu)圖</p><p><b>  3.3 管腳說明</b

22、></p><p>  P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在編程時,P0 口作為原碼輸入口,當進行校驗時,P0輸出原碼,此時P0外部必須被拉高。</p><p>  P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收

23、,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地</p><p>  “1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在編程和校驗時接收高八位地址

24、信號和控制信號。</p><p>  P3口也可作為89C51的一些特殊功能口,在本次課程設(shè)計中用到的P3口如下所示:</p><p>  P3.2 /INT0(外部中斷0)</p><p>  3.4 仿真分析圖:</p><p>  第四章 軟件設(shè)計及程序</p><p>  4.1 軟件設(shè)計流程</

25、p><p><b>  . .</b></p><p>  4.2 各子程序功能描述:</p><p>  4.2.1 定時器T0中斷服務(wù)程序:</p><p>  通過對方式寄存器TMOD和控制寄存器TCON的編程來選擇T0的工作方式。TMOD設(shè)為09H,表示門控方式為1,16位定時器。TCON的低四位為外部中

26、斷的觸發(fā)方式控制位和外部中斷請求標志,設(shè)為13H,門控位為1時,僅當TR0等于1且P3.0輸入為高電平時T0才計數(shù),TR0為0或P3.0輸入低電平時都禁止計數(shù),以此來判斷輸入脈沖高電平的開始和結(jié)束。</p><p>  4.2.2顯示子程序:</p><p>  時間顯示子程序每次顯示4個連續(xù)單元的十進制數(shù)。顯示時,先取出內(nèi)存地址中的數(shù)據(jù),然后從P2.4、P2.5、P2.6、P2.7口依次

27、由低位到高位顯示,在顯示過程中通過延時程序控制四個數(shù)碼管的顯示時間長度,以達到可以清晰讀出四位數(shù)。</p><p>  4.3 系統(tǒng)總程序</p><p><b>  ORG 0000H</b></p><p><b>  LJMP MAIN</b></p><p>  ORG 000BH ;//

28、設(shè)置定時器T0入口為000BH</p><p>  LJMP FORT0</p><p><b>  ORG 0050H</b></p><p><b>  MAIN:</b></p><p>  MOV P3,#0FFH;//P3.0接外部獨立按鍵</p><p>  MO

29、V IE,#82H;//開中斷并且設(shè)置T0初值</p><p>  MOV TMOD,#01H</p><p>  MOV TL0,#(65536-1000)MOD 256</p><p>  MOV TH0,#(65536-1000)/256</p><p>  M0: LCALL DISPLAY</p><p>

30、  JB P3.0,M0;//判斷按鍵是否按下,按下即開始計時</p><p><b>  MOV R0,#0</b></p><p><b>  MOV R1,#0</b></p><p><b>  MOV R2,#0</b></p><p><b>  MOV

31、R3,#0</b></p><p><b>  SETB TR0</b></p><p>  JNB P3.0,$;//按鍵抬起后定時結(jié)束</p><p><b>  CLR TR0</b></p><p>  LCALL DISPLAY;//在數(shù)碼管顯示脈沖寬度</p>

32、<p><b>  SJMP M0</b></p><p>  FORT0: MOV TL0,#(65536-1000)MOD 256;//定時器中斷子程序</p><p>  MOV TH0,#(65536-1000)/256</p><p><b>  INC R0</b></p><p

33、>  CJNE R0,#10,M2</p><p><b>  MOV R0,#0</b></p><p><b>  INC R1</b></p><p>  CJNE R1,#10,M2</p><p><b>  MOV R1,#0</b></p>

34、<p><b>  INC R2</b></p><p>  CJNE R2,#10,M2</p><p><b>  MOV R2,#0</b></p><p><b>  INC R3</b></p><p><b>  M2: RETI</b&

35、gt;</p><p>  DISPLAY:MOV P2,#3;//顯示子程序</p><p><b>  MOV A,R0</b></p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV P0,A</b

36、></p><p>  LCALL DELAY</p><p><b>  MOV P2,#2</b></p><p><b>  MOV A,R1</b></p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p&g

37、t;<p><b>  MOV P0,A</b></p><p>  LCALL DELAY</p><p><b>  MOV P2,#1</b></p><p><b>  MOV A,R2</b></p><p>  MOV DPTR,#TAB</p&

38、gt;<p>  MOVC A,@A+DPTR</p><p><b>  MOV P0,A</b></p><p>  LCALL DELAY</p><p><b>  MOV P2,#0</b></p><p><b>  MOV A,R3</b></

39、p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV P0,A</b></p><p>  LCALL DELAY</p><p><b>  RET</b></p><p>  

40、DELAY: MOV R6,#5;//延時子程序</p><p>  DL0: MOV R7,#250</p><p><b>  DJNZ R7,$</b></p><p>  DJNZ R6,DL0</p><p><b>  RET</b></p><p>  T

41、AB: ;//字型碼查詢表</p><p>  DB 03FH,006H,05BH,04FH</p><p>  DB 066H,06DH,07DH,007H</p><p>  DB 07FH,06FH,077H,07CH</p><p>  DB 039H,05EH,079H,071H</p><p><b&

42、gt;  END</b></p><p>  第五章 系統(tǒng)制作與調(diào)試</p><p><b>  5.1 硬件調(diào)試</b></p><p>  5.1.1 調(diào)試方法</p><p>  硬件調(diào)試是利用基本測試儀器(萬用表、示波器等),檢查系統(tǒng)硬件中存在的故障。</p><p> 

43、 第一步:目測。檢查外部的各種元件或者是電路是否有斷點。</p><p>  第二步:用萬用表測試。先用萬用表復核目測中有疑問的連接點,再檢測各種電源線與地線之間是否有短路現(xiàn)象。</p><p>  第三步:加電檢測。給系統(tǒng)加電,檢測所有器件的電源端是否符合要求。</p><p> ?。?)取穩(wěn)壓電源打開電源,檢查電源的輸出電壓是否為5V,可通過觀察電源的量程及指針

44、的讀數(shù)來判斷或用萬用表測量。(2)在確定輸出電壓正確的情況下,接好電路,用一根導線從地引出,接到P3.2口;再用另一根線從地引出分別接到P2.4、P2.5、P2.6、P2.7口,觀察數(shù)碼管的亮滅情況。</p><p>  5.2 軟件調(diào)試:</p><p>  軟件調(diào)試是通過對程序的匯編、連接、執(zhí)行來發(fā)現(xiàn)程序中存在的語法錯誤與邏輯錯誤并加以排除糾正的過程。在keil編譯器下進行程序編譯,

45、檢查程序是否有語法錯誤。接好仿真機判斷接口。以子程序為單位逐個進行仿真,最后結(jié)合硬件實時調(diào)試。</p><p>  將上述各編譯好的子程序結(jié)合為總程序編譯后加載到單片機芯片中進行仿真,結(jié)果并不是出現(xiàn)穩(wěn)定的四位數(shù)字,閃的頻率比較快,調(diào)整延時時間后問題解決。</p><p><b>  調(diào)試前:</b></p><p><b>  調(diào)試后

46、:</b></p><p><b>  5.3 結(jié)果分析</b></p><p>  通過測試我們一般的手動按下按鈕再停止一般時間為165~225ms,比較符合事實情況,成功完成實驗要求。</p><p>  第六章 總結(jié)與體會</p><p>  本系統(tǒng)是以單片機89C52芯片為核心部件,通過89C52

47、芯片內(nèi)部軟件計數(shù)來測量脈沖寬度的功能。此次在軟件上是花費時間最多的,我們上網(wǎng)找資料,上圖書館,盡可能的了解有關(guān)于脈沖寬度測量這方面的知識。通過這次課程設(shè)計,使我得到了一次用專業(yè)知識、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在單片機的基本原理、單片機應(yīng)用系統(tǒng)結(jié)合過程,以及在常用編程設(shè)計思路技巧(特別是匯編語言C51語言)的掌握方面都能向前邁了一大步。 </p><p>  第七章 教材

48、及參考書</p><p>  [1] 胡漢才,單片機原理及其接口技術(shù),清華大學出版社</p><p>  [2] 鄒逢興,微型計算機接口原理與技術(shù),國防科技大學出版社</p><p>  [3] 閻凱,微型計算機硬件設(shè)計原理分析與維修,科學出版社</p><p>  [4] 何立民,MCS-51系列單片機應(yīng)用系統(tǒng)設(shè)計系統(tǒng)配置與接口技術(shù),北京航

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論