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

下載本文檔

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

文檔簡介

1、<p><b>  課程設計說明書</b></p><p>  名稱   單片機原理與應用課程設計   </p><p>  2012年 6 月 4日至 2012年 6月 8日共1周</p><p>  院  系 電子信息工程系 </p><p>  班 級 10通信技術2 </p>

2、;<p>  姓 名 汪 </p><p><b>  目錄</b></p><p>  第一章 緒論…………………………………………………………2</p><p>  第二章 數(shù)字鐘和單片機AT89C51..............................................

3、......3</p><p>  2.1 數(shù)字鐘………………………………………………………........3</p><p>  2.1.1 數(shù)字鐘的簡介……………………………………………….3</p><p>  2.1.2單片機數(shù)字鐘的基本原理………………………………........3</p><p>  2.2 單片機 AT89

4、C51………………………………………………….3</p><p>  2.2.1 AT89C51的簡介…………………………………………….3 </p><p>  2.2.2 AT89C51 主要特性……………………………………........42.2.3 AT89C51 管腳說明……………………………………........42.2.4 芯片擦除…………………………………………

5、…………..6</p><p>  2.3 顯示器接口……………………………………………………….6</p><p>  2.3.1 LED 顯示器的介紹…………………………………………6</p><p>  2.3.2 LED 顯示器的顯示方式…………………………………6</p><p>  第三章 Proteus和時鐘原理圖………

6、……………………………..8</p><p>  3.1 Proteus……………………………………………………………...8</p><p>  3.1.1 Proteus 軟件介紹………………………………………… ...8</p><p>  3.2 電子時鐘原理圖………………………………………………8</p><p>  3.2.

7、1 電子時鐘原理圖及介紹…………………………………8</p><p>  3.2.2 電路模塊介紹………………………………………………..9</p><p>  第四章 設計步驟…………………………………………………..11</p><p>  4.1 編程…………………………………………………………………11</p><p>  4

8、.1.1 Keil uvision…………………………………………………11</p><p>  4.2 設計流程圖………………………………………………………..11</p><p>  4.2.1 系統(tǒng)軟件設計流程圖…………………………………………11</p><p>  4.2.2 實時時鐘實現(xiàn)的基本方法:…………………………………..14</p&

9、gt;<p>  4.2.3 實時時鐘程序設計步驟:……………………………………..14</p><p>  第五章 總結(jié)…………………………………………………………15</p><p>  附錄……………………………………………………………………16</p><p>  源程序………………………………………………………………………16</p

10、><p>  參考文獻……………………………………………………………………22</p><p><b>  第一章 緒論 </b></p><p>  20世紀末,電子技術獲得了飛速的發(fā)展,在其推動下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會的各個領域,有力地推動了社會生產(chǎn)力的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產(chǎn)品性能進一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏

11、也越來越快。 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當前的時間。忘記了要做的事情,當事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大禍。</p><p>  目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進一步向著CMOS化、低功耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝化等幾個方面發(fā)展。下面是單片機的主要發(fā)展趨勢。單片機應用的重要意義還在于,它從根本

12、上改變了傳統(tǒng)的控制系統(tǒng)設計思想和設計方法。從前必須由模擬電路或數(shù)字電路實現(xiàn)的大部分功能,現(xiàn)在已能用單片機通過軟件方法來實現(xiàn)了。這種軟件代替硬件的控制技術也稱為微控制技術,是傳統(tǒng)控制技術的一次革命。</p><p>  單片機模塊中最常見的是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。</p&g

13、t;<p>  數(shù)字鐘是采用數(shù)字電路實現(xiàn)對.時,分,秒.數(shù)字顯示的計時裝置,廣泛用于個人家庭,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數(shù)字鐘的精度,遠遠超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關烘箱、通斷動力設備

14、、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎的。因此,研究數(shù)字鐘及擴大其應用,有著非?,F(xiàn)實的意義。</p><p>  數(shù)字鐘已成為人們?nèi)粘I钪校罕夭豢缮俚谋匦杵?,廣泛用于個人家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學習、工作、娛樂帶來極大的方便。由于數(shù)字集成電路技術的發(fā)展和采用了先進的石英技術,使數(shù)字鐘具有走時準確、性能穩(wěn)定、攜帶方便等優(yōu)點,它還用于計時自動報時及自動控制

15、的領域</p><p>  LCD( Liquid Crystal Display),對于許多的用戶而言可能是一個并不算新鮮的名詞了,不過這種技術存在的歷史可能遠遠超過了我們的想像 -早在19世紀末,奧地利植物學家就發(fā)現(xiàn)了液晶,即液態(tài)的晶體,也就是說一種物質(zhì)同時具備了液體的流動性和類似晶體的某種排列特性?,F(xiàn)在的時代其實還是模擬時代,而未來的時代從目前的發(fā)展趨勢來看是數(shù)字時代。顯示器智能化操作,數(shù)字控制、數(shù)碼顯示是

16、未來顯示器的必要條件。隨著數(shù)字時代的來臨,數(shù)字技術必將全面取代模擬技術,LCD不久就會全面取代現(xiàn)在的模擬CRT顯示器。 </p><p>  第二章 數(shù)字鐘和單片機AT89C51</p><p><b>  2.1 數(shù)字鐘</b></p><p>  2.1.1 數(shù)字鐘的簡介</p><p>  時鐘,自從它發(fā)明

17、的那天起,就成為人類的朋友,但隨著時間的推移,科學技術的不斷發(fā)展,人們對時間計量的精度要求越來越高,應用越來越廣。怎樣讓時鐘更好的為人民服務,怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設計出新型時鐘?,F(xiàn)今,隨著社會經(jīng)濟的快速發(fā)展,高精度的計時工具大多數(shù)都使用了石英晶體振蕩器,由于電子鐘,石英表,石英鐘都采用了石英技術,因此走時精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)校,數(shù)字式電子鐘用集成電路計時時,譯碼代替機械式傳動,用LED顯示器

18、代替指針顯示進而顯示時間,減小了計時誤差,這種表具有時,分,秒顯示時間的功能,還可以進行時和分的校對,片選的靈活性好。時鐘電路在計算機系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的基礎。在一個單片機應用系統(tǒng)中,時鐘有兩方面的含義:一是指為保障系統(tǒng)正常工作的基準振蕩定時信號,主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機系統(tǒng)工作的快慢;二是指系統(tǒng)的標準定時時鐘,即定時時間,它通常有兩種實現(xiàn)方法:一是用軟件實現(xiàn),即用單片機內(nèi)部的可編程

19、定時/計數(shù)器來實現(xiàn),但誤差很大,主要用在對時間精度要求不高的場合;二是用專門的時鐘芯片實現(xiàn),在對時間精度</p><p>  2.1.2 單片機數(shù)字鐘的基本原理</p><p>  它是利用單片機的內(nèi)部的定時/計數(shù)器工作與定時方式,對機器周期計數(shù)形成基準時間(如10ms)然后用另外一個計數(shù)器或軟件計數(shù)的形式對基準時間進行計數(shù)形成秒(如對10ms計數(shù)100次),“秒”計數(shù)60次“分”,“分

20、”計數(shù)60次形成“時”,“時”計數(shù)24次形成“天”并清零,然后通過譯碼器,數(shù)碼管把他們的內(nèi)容在相應的位置顯示出來。在具體的設計時定時器采用中斷方式工作,對時鐘的形成在終中斷序中實現(xiàn),在主程序只是對定時/計數(shù)器的定義初始化,調(diào)用顯示程序和控制程序的初始化。另外為了使用的方便,也設計了按鍵,可以通過按鍵對時分秒進行調(diào)整,這樣程序就加了按鍵程序。</p><p>  2.2 單片機 AT89C51</p>

21、<p>  2.2.1 AT89C51的簡介 </p><p>  AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除100

22、次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案</p><p>  圖一 AT89C51</p><p>  AT89C51 主要

23、特性與MCS-51 兼容 4K字節(jié)可編程閃爍存儲器 壽命:1000寫/擦循環(huán)數(shù)據(jù)保留時間:10年·全靜態(tài)工作:0Hz-24Hz·三級程序存儲器鎖定·128*8位內(nèi)部RAM·32可編程I/O線·兩個16位定時器/計數(shù)器·5個中斷源 ·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路</p><

24、p>  2.2.3 AT89C51 管腳說明</p><p>  VCC:供電電壓。    GND:接地。    P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0

25、口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。    P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。     

26、P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)</p><p>  RST:復位輸入

27、。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE

28、只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p>  /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。    /EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器

29、(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。    XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。    XTAL2:來自反向振蕩器的輸出。</p><p&g

30、t;<b>  振蕩器特性:</b></p><p>  XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p>  2.2.4

31、芯片擦除   整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。此外,AT89C51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的

32、內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。 </p><p>  2.3 顯示器接口</p><p>  2.3.1 LED 顯示器的介紹</p><p>  LED數(shù)碼管實際上是由七個發(fā)光管組成8字形構(gòu)成的,加上小數(shù)點就是8個。這些段分別由字母a,b,c,d,e,f,g,dp來表示。當數(shù)碼管特定的段加上電壓后,這些特定的段就會發(fā)亮,以形

33、成我們眼睛看到的樣子。LED數(shù)碼管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸數(shù)碼管的顯示筆畫常用一個發(fā)光二極管組成,而大尺寸的數(shù)碼管由二個或多個發(fā)光二極管組成,一般情況下,單個發(fā)光二極管的管壓降為1.8V左右,電流不超過30mA。發(fā)光二極管的陽極連接到一起連接到電源正極的稱為共陽數(shù)碼管,發(fā)光二極管的陰極連接到一起連接到電源負極的稱為共陰數(shù)碼管。常用LED數(shù)碼管顯示的數(shù)字和字符是0、1、2、3、4、5、6、7、8、9

34、、A、B、C、D 、E、F。</p><p>  LED 顯示器的顯示方式</p><p>  LED 顯示器的顯示方式有靜態(tài)和動態(tài)兩種,本實驗采用動態(tài)顯示方式。</p><p>  數(shù)碼管動態(tài)顯示介面是單片機中應用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp "的同名端連在一起,另外為每個數(shù)

35、碼管的公共極COM增加位元選通控制電路,位元選通由各自獨立的I/O線控制,當單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機對位元選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位元就顯示出字形,沒有選通的數(shù)碼管就不會亮。</p><p>  透過分時輪流控制各個LED數(shù)碼管的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過

36、程中,每位元數(shù)碼管的點亮時間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極體的余輝效應,盡管實際上各位數(shù)碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O口,而且功耗更低。</p><p>  第三章 Proteus和時鐘原理圖</p><p>  3.1 Proteus</p>

37、<p>  3.1.1 Proteus 軟件介紹</p><p>  Proteus軟件是英國electronics公司出版的EDA工作軟件風標電子技術。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA

38、工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設計,真正實現(xiàn)了從概念到產(chǎn)品的完整設計。是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支

39、持IAR、Keil和MPLAB等多種編譯器。</p><p>  3.2 電子時鐘原理圖</p><p>  3.2.1 電子時鐘原理圖及介紹</p><p>  本設計以MCS-51系列單片機為核心,采用常用電子器件設計。要求能顯示出秒、分、時,可調(diào)整各個時間,采用LED動態(tài)顯示。其中AT89C51為主要功能器件,另外還有數(shù)碼顯示器、晶振、按鍵、電阻、電容等總

40、成圖二所示的電子時鐘原理圖。</p><p>  圖二 電子時鐘原理圖</p><p>  3.2.2 電路模塊介紹</p><p><b>  晶振電路</b></p><p>  晶體振蕩器電路給數(shù)字鐘提供一個頻率穩(wěn)定準確的的方波信號,可保證數(shù)字鐘的走時準確及穩(wěn)定。不管是指針式的電子鐘還是數(shù)字顯示的電子鐘都使

41、用了晶體蕩器電路。在XTAL1和XTAL2引腳上外接定時元件,內(nèi)部振蕩電路就產(chǎn)生自激振蕩。定時元件通常石英晶體和電容組成的并聯(lián)諧振回路,晶體振蕩器選擇12MHZ,電容采用30PF。本設計中的震蕩電路如圖三所示</p><p><b>  圖三 晶振電路</b></p><p><b>  復位電路模塊</b></p><p&

42、gt;  單片機的復位是由外部的復位電路來實現(xiàn)的。復位引腳RST通過一個斯密特觸發(fā)器與復位電路相連,斯密特觸發(fā)器用來抑制噪聲,在每個機器周期的S5P2,斯密特觸發(fā)器的輸出電平由復位電路采樣一次,然后才能得到內(nèi)部復位操作所需要的信號。</p><p>  上電復位:上電復位電路是—種簡單的復位電路,只要在RST復位引腳接一個電容到VCC,接一個電阻到地就可以了。上電復位是指在給系統(tǒng)上電時,復位電路通過電容加到RST

43、復位引腳一個短暫的高電平信號,這個復位信號隨著VCC對電容的充電過程而回落,所以RST引腳復位的高電平維持時間取決于電容的充電時間。為了保證系統(tǒng)安全可靠的復位,RST引腳的高電平信號必須維持足夠長的時間。</p><p>  上電自動復位是通過外部復位電路的電容充電來實現(xiàn)的。只要Vcc的上升時間不超過1ms,就可以實現(xiàn)自動上電復位。</p><p><b>  按鍵模塊</

44、b></p><p>  本設計總的用了四個按扭開關作為鍵盤,用于調(diào)整時間和設置狀態(tài)。電路如圖四按鍵部分。</p><p><b>  圖四 按鍵電路</b></p><p><b>  時間顯示模塊</b></p><p>  時間顯示出時分秒三塊,數(shù)碼管1、2顯示時,數(shù)碼管4、5顯示分,

45、數(shù)碼管7、8顯示秒,如圖五所示。</p><p><b>  圖五 時間顯示</b></p><p><b>  第四章 設計步驟</b></p><p><b>  4.1 編程</b></p><p>  4.1.1 Keil uvision</p>

46、<p>  使用匯編語言或C語言要使用編譯器,以便把寫好的程序編譯為機器碼,才能把HEX可執(zhí)行文件寫入單片機內(nèi)。KEIL 是眾多單片機應用開發(fā)軟件中最優(yōu)秀的軟件之一,它支持眾多不同公司的MCS51架構(gòu)的芯片,甚至ARM,它集編輯,編譯,仿真等于一體,它的界面和常用的微軟VC++的界面相似,界面友好,易學易用,在調(diào)試程序,軟件仿真方面也有很強大的功能。因此很多開發(fā)51應用的工程師或普通的單片機愛好者,都對它十分喜歡。</p

47、><p>  在KEIL中對其進行如下設置,便能產(chǎn)生hex文件:</p><p>  點擊菜單“Option for Tagret '...'” ---> 選擇“Output”頁--->鉤“Create HEX File”--->重編譯,如果程序無誤,在Project的當前目錄即會產(chǎn)生HEX文件,再將這個HEX文件用下載線或編譯器寫進單片機就可以了。</

48、p><p><b>  4.2 設計流程圖</b></p><p>  4.2.1系統(tǒng)軟件設計流程圖</p><p>  主程序是先開始,然后啟動定時器,定時器啟動后在進行按鍵檢測,檢測完后,就可以顯示時間。</p><p><b>  圖六 主程序流程圖</b></p><p>

49、;  按鍵處理是先檢測秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就檢測分按鍵是否按下,分按鍵如果按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。</p><p>  圖七 按鍵處理流程圖</p><p>  定時器中斷時是先檢測1秒是否到,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘如果到,分單元

50、就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就檢測24小時是否到,如果沒到,就顯示時間。</p><p>  圖八 定時器中斷流程圖</p><p>  時間顯示是先秒個位計算顯示,然后是秒十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個位計算顯示,然后是時十位顯示。</p><p>  4.2.2 實時時鐘實現(xiàn)的基

51、本方法:</p><p>  時鐘的最小計時單位是秒,使用定時器的方式1,我們可把定時器的定時時間定為50ms。這樣,計數(shù)溢出20次即可得到時鐘的最小計時單位:秒。而計數(shù)20次可以用軟件實現(xiàn)。</p><p>  秒計時是采用中斷方式進行溢出次數(shù)的累積,計滿20次,即得到秒計時。從秒到分,從分到時是通過軟件累加并進行比較的方法來實現(xiàn)的。要求每滿1秒,則“秒”單元中的內(nèi)容加1;“秒”單元滿6

52、0,則“分”單元中的內(nèi)容加1;“分”單元滿60,則“時”單元中的內(nèi)容加1;“時”單元滿24,則將時、分、秒的內(nèi)容全部清零。</p><p>  4.2.3 實時時鐘程序設計步驟:</p><p> ?。?)選擇工作方式,計算初值;</p><p> ?。?)采用中斷方式進行溢出次數(shù)累計;</p><p> ?。?)從秒——分——時的計時是通

53、過累加和數(shù)值比較實現(xiàn)的;</p><p> ?。?)時鐘顯示緩沖區(qū):時鐘時間在方位數(shù)碼管上進行顯示,為此在內(nèi)部</p><p>  RAM中要設置顯示緩沖區(qū),共6個地址單元。顯示緩沖區(qū)從左到右依次存放時、分、秒數(shù)值;</p><p> ?。?)主程序:主要進行定時器/計數(shù)器的初始化編程,然后反復調(diào)用顯示</p><p>  子程序的方法等待中

54、斷的到來。</p><p>  (6)中斷服務程序:進行計時操作</p><p> ?。?)加1子程序:用于完成對時、分、秒的加操作,中斷服務程序在秒、</p><p>  分、時加1時共有三種條調(diào)用加1子程序,包括三項內(nèi)容:合字、加1并進行十進制調(diào)整、分字</p><p><b>  第五章 總結(jié)</b></p

55、><p>  通過本次課程設計的制作,我明白設計一個電路,首先要深刻理解其原理,并根據(jù)其原理進行電路的設計。用理論指導實踐可以達到事倍功半的效果,有堅實的理論做基礎將會使設計變得得心應手。在設計電路的過程中應注意充分利用并擴展所學過的基礎知識,設計的過程就是學習的過程,在設計過程中驗證理論的正確性,彌補知識的漏洞。正確對待設計過程中遇到的錯誤,遇到錯誤與問題要敢于面對并設法找到解決的辦法。通過對該電路的設計過程,我掌

56、握到了基本的操作,而且我還查閱了不少相關資料,更深刻地認識和鞏固了平時所學的知識,使理論與實踐有機結(jié)合,提高了我對所學專業(yè)的興趣并積累了一些相關經(jīng)驗。我認為這就是一種很好的提高自身能力的方法。這個設計的大部分內(nèi)容都是在網(wǎng)上找的內(nèi)容,自己做了一點點小小的改動,在上網(wǎng)找資料的同時也學到了許多東西,找到了很多學習單片機的網(wǎng)站,里面的內(nèi)容都比較適合我初學者去學,有些網(wǎng)站還專門介紹這種單片機的類型、用法、功能等等。其實我平時不懂就應該自己去學習去

57、弄明白,只是平時我都太懶。通過這個課程設計,使我發(fā)現(xiàn),原來小小的一片單片機有這么強大的功能,能應用于各種領域。都是覺得很神奇,人類真是聰明啊。我應該在自己</p><p>  今后將會更加的把理論知識和實際應用結(jié)合起來,提高自己的能力。</p><p><b>  附錄</b></p><p><b>  源程序如下:</b&g

58、t;</p><p><b>  ORG0000H</b></p><p><b>  LJMPMAIN</b></p><p><b>  ORG0003H</b></p><p><b>  LJMPMIAO</b></p>&l

59、t;p><b>  ORG000BH</b></p><p><b>  LJMPSHI</b></p><p><b>  ORG0013H</b></p><p><b>  LJMPFEN</b></p><p><b>  

60、ORG001BH</b></p><p><b>  LJMPSZ</b></p><p>  MAIN:MOVR7,#20</p><p>  MOVR4,#00H</p><p>  MOVR5,#00H</p><p>  MOVR6,#00H</p&

61、gt;<p>  MOVTMOD,#16H</p><p>  MOVTH1,#3CH</p><p>  MOVTL1,#0B0H</p><p>  MOVTH0,#0FFH</p><p>  MOVTL0,#0FFH</p><p><b>  SETBTR0<

62、;/b></p><p>  SETB TR1</p><p><b>  SETBEA</b></p><p><b>  SETBET1</b></p><p><b>  SETBPT1</b></p><p><b>

63、  SETBIT0</b></p><p><b>  SETBIT1</b></p><p><b>  CLREX0</b></p><p><b>  CLREX1</b></p><p><b>  CLRET0</b><

64、;/p><p>  LOOP: MOVA, R4</p><p>  MOVB,#10</p><p><b>  DIVAB</b></p><p>  MOVDPTR,#TAB</p><p>  MOVCA, @A+DPTR</p><p><

65、b>  MOVP0,A</b></p><p>  MOVP1, #40H</p><p>  LCALLDELAY</p><p>  MOVP0,#0FFH</p><p><b>  MOVA,B</b></p><p>  MOVCA, @A+

66、DPTR</p><p><b>  MOVP0,A</b></p><p>  MOVP1, #80H</p><p>  LCALLDELAY</p><p>  MOVP0,#0FFH</p><p>  MOVP2,#0FFH</p><p>

67、;  JNBP2.0,TIAOJIE</p><p>  MOVP1,#04H</p><p>  MOVP0,#0F6H</p><p>  LCALLDELAY</p><p>  MOV P0,#0FFH</p><p>  MOVA, R5</p><p>  MO

68、VB,#10</p><p><b>  DIVAB</b></p><p>  MOVDPTR,#TAB</p><p>  MOVCA, @A+DPTR</p><p><b>  MOVP0,A</b></p><p>  MOVP1, #0

69、8H</p><p>  LCALLDELAY</p><p>  MOVP0,#0FFH</p><p><b>  MOVA,B</b></p><p>  MOVCA, @A+DPTR</p><p><b>  MOVP0,A</b></p&g

70、t;<p>  MOVP1, #10H</p><p>  LCALLDELAY</p><p>  MOVP0,#0FFH</p><p>  MOVP2,#0FFH</p><p>  JNBP2.0,TIAOJIE</p><p>  MOVP1,#20H</p&

71、gt;<p>  MOVP0,#0F6H</p><p>  LCALLDELAY</p><p>  MOVP0,#0FFH</p><p>  MOVA, R6</p><p>  MOVB,#10</p><p><b>  DIVAB</b></p&

72、gt;<p>  MOVDPTR,#TAB</p><p>  MOVCA, @A+DPTR</p><p><b>  MOVP0,A</b></p><p>  MOVP1, #01H</p><p>  LCALLDELAY</p><p>  MOV

73、P0,#0FFH</p><p><b>  MOVA,B</b></p><p>  MOVCA, @A+DPTR</p><p><b>  MOVP0,A</b></p><p>  MOVP1, #02H</p><p>  LCALLDEL

74、AY</p><p>  MOVP0,#0FFH</p><p>  MOVP2,#0FFH</p><p>  JNBP2.0,TIAOJIE</p><p>  LCALLDELAY</p><p>  LJMP LOOP</p><p><b>  TIAOJIE

75、:</b></p><p><b>  CPLET1</b></p><p><b>  CPLET0</b></p><p><b>  CPLEX0</b></p><p><b>  CPLEX1</b></p>&

76、lt;p><b>  LJMPLOOP</b></p><p>  SZ:PUSHACC</p><p>  MOVTH1,#3CH</p><p>  MOVTL1,#0B0H</p><p>  DJNZR7,L2</p><p>  MOVR7,#20</p

77、><p><b>  INCR4</b></p><p><b>  MOVA,R4</b></p><p>  CJNE A,#60,L2</p><p>  MOVR4,#00H</p><p><b>  INCR5</b><

78、/p><p><b>  MOVA,R5</b></p><p>  CJNEA,#60,L2</p><p>  MOVR5,#00H</p><p><b>  INCR6</b></p><p><b>  MOVA,R6</b>&

79、lt;/p><p>  CJNEA,#12,L2</p><p>  MOVR6,#00H</p><p>  L2:POPACC</p><p><b>  RETI</b></p><p>  MIAO:PUSHACC</p><p><b> 

80、 CLREA</b></p><p><b>  INC R4</b></p><p><b>  SETBEA</b></p><p><b>  POPACC</b></p><p><b>  RETI</b></p>

81、<p>  FEN:PUSHACC</p><p><b>  CLREA</b></p><p><b>  INCR5</b></p><p><b>  SETBEA</b></p><p><b>  POPACC</b>

82、</p><p><b>  RETI</b></p><p>  SHI:PUSHACC</p><p><b>  CLREA</b></p><p><b>  INCR6</b></p><p><b>  SETBEA&l

83、t;/b></p><p><b>  POPACC</b></p><p><b>  RETI</b></p><p>  DELAY: MOV R3,#10 </p><p>  DEL2: MOV R2,#100 </p><p

84、>  NOP </p><p>  DJNZ R2,$ </p><p>  DJNZ R3,DEL2 </p><p><b>  RET</b></p><p>  TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H

85、,0F8H,80H,90H</p><p>  仿真后的結(jié)果,如下圖:圖1為開始仿真結(jié)果圖,圖2為調(diào)秒結(jié)果圖,圖3為調(diào)分結(jié)果圖,圖4為調(diào)時結(jié)果圖。</p><p><b>  圖1</b></p><p><b>  圖2</b></p><p><b>  圖3</b><

86、;/p><p><b>  圖4</b></p><p><b>  參考文獻:</b></p><p>  [1]張迎新等新編:單片機原理及應用(第2版)</p><p>  [2]張迎新等新編:單片機初級教程。北京:航空航天大學出版社,2007.8.</p><p>  [3

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論