

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 單片機課程設計</b></p><p> 項目名稱 基于單片機的秒表設計 </p><p> 專業(yè)班級 </p><p> 學生姓名 </p&g
2、t;<p> 指導教師 … </p><p> 2012年11 月20日</p><p><b> 摘 要</b></p><p> 本課程設計的數字電子秒表系統(tǒng)采用AT89C51單片機為中心器件,利用其定時器/計數器定時和記數的原理,結合顯示電路、LED數碼管以
3、及外部中斷電路來設計計時器。將軟、硬件有機地結合起來,使得系統(tǒng)能夠實現五位LED顯示,顯示時間為0~99.99秒,計時精度為0.01秒,能精確地進行計時,并可以隨時暫停和開始。軟件系統(tǒng)采用C語言編寫,包括顯示程序,定時中斷服務,外部中斷服務程序,延時程序等,硬件系統(tǒng)利用PROTEUS強大的功能來實現,簡單且易于觀察,在仿真中就可以觀察到系統(tǒng)實際的工作狀態(tài)。</p><p> 關鍵詞:AT89C51單片機 ;數字
4、秒表 ;數碼管</p><p><b> Abstract</b></p><p> This course is designed digital electronic stopwatch system uses the AT89C51 microcontroller devices, the use of timer / counter timing and
5、counting principle, combined with the display circuit LED digital tube as well as the external interrupt circuit designed timer. The hardware and software combine to enable the system to achieve five LED display, the dis
6、play time of 99.99 seconds, the timing accuracy of 0.01 seconds, the correct timing, and the right to suspend and start. Software system usi</p><p> Keywords: AT89C51 Microcontroller; Digital stopwatch; Dig
7、ital tubes </p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 第1章 緒論1</b></p><p><b>
8、 1.1 概述1</b></p><p> 1.2 定時器術的研究現狀1</p><p> 1.2.1 定時器的應用1</p><p> 1.2.2 定時器定時軟件2</p><p> 1.3 本文研究的意義2</p><p> 第2章 系統(tǒng)總體設計3</p>
9、<p> 2.1 總體方案的設計3</p><p> 2.2 系統(tǒng)總電路的設計3</p><p> 第3章 系統(tǒng)硬件設計5</p><p> 3.1 單片機的選擇5</p><p> 3.2 顯示電路的選擇與設計6</p><p> 3.3 復位電路模塊8</p&
10、gt;<p> 3.4 系統(tǒng)總體設計8</p><p> 第4章 系統(tǒng)的軟件設計10</p><p> 第5章 實物焊接、仿真與調試12</p><p> 5.1 軟件的仿真與調試12</p><p> 5.2 硬件的安裝與調試13</p><p> 第6章 結論14&
11、lt;/p><p><b> 致謝15</b></p><p><b> 參考文獻16</b></p><p><b> 附錄117</b></p><p><b> 源程序代碼17</b></p><p><b&
12、gt; 附錄220</b></p><p><b> 軟件仿真截圖20</b></p><p><b> 附錄321</b></p><p><b> 實物照片展示21</b></p><p><b> 第1章 緒論</b>
13、</p><p><b> 1.1 概述</b></p><p> 人類最早使用的定時工具是沙漏或水漏,但在鐘表誕生發(fā)展成熟之后,人們開始嘗試使用這種全新的計時工具來改進定時器,達到準確控制時間的目的。</p><p> 1876年,英國外科醫(yī)生索加取得一項定時裝置的專利,用來控制煤氣街燈的開關。它利用機械鐘帶動開關來控制煤氣閥門。起初
14、每周上一次發(fā)條,1918年使用電鐘計時后,就不用上發(fā)條了。定時器確實是一項了不起的發(fā)明,使相當多需要人控制時間的工作變得簡單了許多。人們甚至將定時器用在了軍事方面,制成了定時炸彈,定時雷管。現在的不少家用電器都安裝了定時器來控制開關或工作時間。</p><p> 秒表計時器是電器制造,工業(yè)自動化控制、國防、實驗室及科研單位理想的計時儀器,它廣泛應用于各種繼電器、電磁開關,控制器、延時器、定時器等的時間測試。&l
15、t;/p><p> 在現在的體育競技比賽中,隨著運動員的水平不斷提高,差距也在不斷縮小。有些運動對時間精度的要求也越來越高,有時比賽冠亞軍之間的差距只有幾毫秒,因此就需要高精度的秒表來記錄成績。</p><p> 1.2 定時器術的研究現狀</p><p> 1.2.1 定時器的應用</p><p> 1、 接通延時型定時器:接通延時
16、型定時器是各種PLC中最常見最基本的定時器,這種定時器在 SIEMENS的PLC中,稱為SD型定時器 </p><p> 2、 斷開延時型定時器:這種定時器是當輸入條件00000為ON時無延時作用,只有在輸入條件00000為OFF時產生延時作用。在SIEMENS的PLC中,稱為SF型定時器?!?lt;/p><p> 保持型接通延時定時器:這種定時器是當輸入條件00000為ON后,即產生鎖
17、存功能,即使輸入條件00000又變?yōu)镺FF,仍視輸入條件為ON,當定時器的當前值等于設定值時,定時器動作,這種定時器在SIEMENS的PLC中,稱為SS型定時器。</p><p> 4、脈沖型定時器:這種定時器是當輸入條件00000為ON后,定時器即時動作,但經過定時器所設定的時間后,即使輸入條件00000仍為ON,定時器卻變?yōu)镺FF狀態(tài)。即這種定時器ON狀態(tài)的維持時間是由設定值決定的。如果00000為ON的時
18、續(xù)時間小于定時器的設定值,定時器的ON狀態(tài)維持時間為輸入條件00000為ON的持續(xù)時間。這種定時器在SIEMENS的PLC中,稱為SP型定時器。 </p><p> 5、擴張型脈沖定時器:這種定時器與脈沖型定時器的區(qū)別是,只要輸入條件00000出現了ON狀態(tài),不管其持續(xù)時間多長,均可使定時器為ON的維持的時間與定時器的設定值一致。這種定時器在SIEMENS的PLC中,稱為SE型定時器。</p>
19、<p> 1.2.2 定時器定時軟件</p><p> 是一個多任務定時提醒的軟件,它全面支持WINDOWS 9X/ME/NT/2K/XP按時執(zhí)行程序、播放聲音、關機、待機、撥號、斷開連接、關閉顯示器等等操作。具有多種設定任務的方法。支持SKIN,可以隨意更換界面。 </p><p> 工業(yè)用定時器是指輸入信號進入后,按預先設定的時間發(fā)送輸出信號的控制設備。定時
20、器的開始方法 動作模式有2種開始方法。 </p><p> 例:ON延遲動作,信號ON延遲動作:預先在定時器電源部施加電壓的狀態(tài)下輸入進入輸入部開始計時動作。電源ON延遲動作:定時器的電源部上施加電壓的話定時器開始動作。</p><p> 1.3 本文研究的意義</p><p> 目前,定時器確實是一項了不起的發(fā)明,使相當多需要人控制時間的工作變得簡單了
21、許多。人們甚至將定時器用在了軍事方面,制成了定時炸彈,定時雷管?,F在的不少家用電器都安裝了定時器來控制開關或工作時間。所以,定時器的研究對我們現在以及將來的生活具有十分重要的現實意義。</p><p> 本課程設計是在校學生素質教育的重要環(huán)節(jié),是理論與實踐相結合的橋梁和紐帶。單片機課程設計,要求學生更多的完成軟硬件結合的動手實踐方案,解決目前學生課程實際過程中普遍存在的缺乏動手能力的現象。其目的和任務是訓練學生
22、綜合運用已學習的課程“單片機原理及應用”、“數字電子技術”的基本知識,獨立進行單片機應用技術和開發(fā)工作,掌握單片機程序設計、調試和應用電路設計、分析及調試檢測。</p><p> 本設計利用AT89C51單片機的定時器/計數器定時和記數的原理,使其能精確計時。利用中斷系統(tǒng)使其能實現開始暫停的功能。P0口輸出段碼數據,P2.0-P2.3口作列掃描輸出,P1.0、P1.1、P1.2、P1.3、P1.4分別接五個按鈕
23、開關,分別實現開始/暫停、清零和可增加的拓展功能。顯示部分由四位共陰極數碼管組成。</p><p> 初始狀態(tài)下計時器顯示00.00,當按下開始鍵時,外部中斷INT0向AT89C51發(fā)出中斷請求,CPU轉去執(zhí)行外部中斷0服務程序,即開啟定時器T0。計時采用定時器T0中斷完成,定時溢出中斷周期為1ms,當一處中斷后向CPU發(fā)出溢出中斷請求,每發(fā)出一次中斷請求就對毫秒計數單元進行加一,達到10次就對十毫秒位進行加一
24、,依次類推,直到99.99秒重新復位。</p><p> 本論文主要內容包括三部分:第一部分介紹硬件部分設計思路及方案;第二部分介紹了軟件部分的設計思路和設計;最后一部分則是整個系統(tǒng)的安裝與調試過程。</p><p> 第2章 系統(tǒng)總體設計</p><p> 2.1 總體方案的設計</p><p> 數字電子秒表具有顯示直觀、讀取
25、方便、精度高等優(yōu)點,在計時中廣泛使用。本設計用單片機組成數字電子秒表,力求結構簡單、精度高為目標。</p><p> 設計中包括硬件電路的設計和系統(tǒng)程序的設計。其硬件電路主要有主控制器,計時與顯示電路和回零、啟動和停表電路等。主控制器采用單片機AT89C51,顯示電路采用共陰極LED數碼管顯示計時時間。利用定時器/計數器定時和記數的原理,使其能精確計時。利用中斷系統(tǒng)使其能實現開始暫停的功能。P0口輸出段碼數據,
26、P2.0-P2.3口作列掃描輸出,P1.0、P1.1、P1.2、P1.3、P1.4分別接五個按鈕開關,分別實現開始/暫停、清零和可增加的拓展功能。電路原理圖設計最基本的要求是正確性,其次是布局合理,最后在正確性和布局合理的前提下力求美觀。硬件電路圖按照圖1.1進行設計。</p><p> 圖2-1 數字秒表硬件電路基本原理圖</p><p> 根據要求知道秒表設計主要實現的功能是計時和
27、顯示。計時部分采用定時器T0中斷完成,定時溢出中斷周期為1ms,當一處中斷后向CPU發(fā)出溢出中斷請求,每發(fā)出一次中斷請求就對毫秒計數單元進行加一,達到10次就對十毫秒位進行加一,依次類推,直到99.99秒重新復位。 </p><p> 再看按鍵的處理,通常對于按鍵的處理有中斷和掃描兩種方法。本設計的這五個鍵則是采用掃描的方法來識別。復位鍵的功能在于數值復位,而開始和停止鍵則是用于對時間的鎖定,因此可以對復位、暫
28、停/開始按鍵采取掃描的方式。</p><p> 2.2 系統(tǒng)總電路的設計</p><p> 系統(tǒng)總電路由以上設計的顯示電路,時鐘電路,按鍵電路和復位電路組成,只要將單片機與以上各部分電路合理的連接就組成了系統(tǒng)總電路。系統(tǒng)總電路圖附錄B所示。</p><p> AT89C51單片機為主電路的核心部分,各個電路均和單片機相連接,由單片機統(tǒng)籌和協(xié)調各個電路的運行工
29、作。</p><p> AT89C51單片機提供了XTAL1和XTAL2兩個專用引腳接晶振電路,因此只要將晶振電路接到兩個專用引腳即可為單片機提供時鐘脈沖,但在焊接晶振電路時要盡量使晶振電路靠近單片機,這樣可以為單片機提供穩(wěn)定的始終脈沖。</p><p> 復位電路同晶振電路,單片機設有一個專用的硬件復位接口,并設置為高電平有效。</p><p> 顯示電路由
30、四位數碼管組成,采用動態(tài)顯示方式,因此有八位段控制端和四位位控制端,八位段控制接P0口,P0.0~P0.7分別控制數碼顯示管的a、b、c、d、e、f、g、dp顯示,單片機的P0口沒有集成上拉電阻,高電平的驅動能力很弱,所以需要接上拉電阻來提高P0的高電平驅動能力。四位位控制則由低位到高位分別接到P2.0~P2.3口,當P2.0~P2.4端口任意一個端口為高電平時,對應的數碼管導通顯示。</p><p> 通過以
31、上設計已經將各部分電路與單片機有機的結合到一起,硬件部分的設計基本完成,剩下的部分就是對單片機的編程,使單片機按程序運行,實現數字電子秒表的全部功能。</p><p> 第3章 系統(tǒng)硬件設計</p><p> 3.1 單片機的選擇</p><p> 本課題在選取單片機時,充分借鑒了許多成形產品使用單片機的經驗,并根據自己的實際情況,選擇了ATMEL公司的A
32、T89C51型單片機。</p><p> 圖3-1 AT89C51單片機引腳圖</p><p> AT89C51單片機采用40引腳的雙列直插封裝方式。圖2-2為引腳排列圖,40條引腳說明如下:</p><p> 主電源引腳Vss和Vcc</p><p><b> 1. Vss接地</b></p>&
33、lt;p> 2. Vcc接+5伏電源</p><p> 外接晶振引腳XTAL1和XTAL2</p><p> 1. XTAL1內部振蕩電路反相放大器的輸入端,是外接晶體的一個引腳。當采用外部振蕩器時,此引腳接地。 </p><p> 2. XTAL2內部振蕩電路反相放大器的輸出端。是外接晶體的另一端。當采用外部振蕩器時,此引腳接外部振蕩源。<
34、;/p><p> 控制或與其它電源復用引腳RST/VPD,ALE/,和/Vpp</p><p> 1. RST/VPD 當振蕩器運行時,在此引腳上出現兩個機器周期的高電平(由低到高跳變),將使單片機復位在Vcc掉電期間,此引腳可接上備用電源,由VPD向內部提供備用電源,以保持內部RAM中的數據。</p><p> 2. ALE/正常操作時為ALE功能(允許地址鎖
35、存)提供把地址的低字節(jié)鎖存到外部鎖存器,ALE 引腳以不變的頻率(振蕩器頻率的1/6)周期性地發(fā)出正脈沖信號。因此,它可用作對外輸出的時鐘,或用于定時目的。對于EPROM型單片機,在EPROM編程期間,此引腳接收編程脈沖(功能)</p><p> 3. 外部程序存儲器讀選通信號輸出端,在從外部程序存儲取指令(或數據)期間,在每個機器周期內兩次有效。同樣可以驅動八LSTTL輸入。</p><p
36、> 4. /Vpp、/Vpp為內部程序存儲器和外部程序存儲器選擇端。當/Vpp為高電平時,訪問內部程序存儲器,當/Vpp為低電平時,則訪問外部程序存儲器。對于EPROM型單片機,在EPROM編程期間,此引腳上加21伏EPROM編程電源(Vpp)。</p><p> 輸入/輸出引腳P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7</p><
37、p> 1. P0口(P0.0 - P0.7)是一個8位漏極開路型雙向I/O口,在訪問外部存儲器時,它是分時傳送的低字節(jié)地址和數據總線,P0口能以吸收電流的方式驅動八個LSTTL負載。</p><p> 2. P1口(P1.0 - P1.7)是一個帶有內部提升電阻的8位準雙向I/O口。能驅動(吸收或輸出電流)四個LSTTL負載。</p><p> 3. P2口(P2.0 - P2
38、.7)是一個帶有內部提升電阻的8位準雙向I/O口,在訪問外部存儲器時,它輸出高8位地址。P2口可以驅動(吸收或輸出電流)四個LSTTL負載。</p><p> 4. P3口(P3.0 - P3.7)是一個帶有內部提升電阻的8位準雙向I/O口。能驅動(吸收或輸出電流)四個LSTTL負載。</p><p> 3.2 顯示電路的選擇與設計</p><p> 對于數
39、字顯示電路,通常采用液晶顯示或數碼管顯示。本設計的顯示電路采用7段數碼管作為顯示介質。</p><p> 數碼管顯示可以分為靜態(tài)顯示和動態(tài)顯示兩種。由于本設計需要采用四位數碼管顯示時間,如果靜態(tài)顯示則占用的口線多,硬件電路復雜。所以采用動態(tài)顯示。 </p><p> 動態(tài)顯示是一位一位地輪流點亮各位數碼管,這種逐位點亮顯示器的方式稱為位掃描。通常各位數碼管的段選線相應并聯(lián)在一起,由一個
40、8位的I/O口控制;各位的公共陰極位選線由另外的I/O口線控制。動態(tài)方式顯示時,各數碼管分時輪流選通,要使其穩(wěn)定顯示必須采用掃描方式,即在某一時刻只選通一位數碼管,并送出相應的段碼,在另一時刻選通另一位數碼管,并送出相應的段碼,依此規(guī)律循環(huán),即可使各位數碼管顯示將要顯示的字符,雖然這些字符是在不同的時刻分別顯示,但由于人眼存在視覺暫留效應,只要每位顯示間隔足夠短就可以給人同時顯示的感覺。</p><p> 圖3
41、-2 顯示電路基本原理圖</p><p> 數碼顯示管分為共陽數碼管和共陰數碼管兩種</p><p> 共陽極數碼管的8個發(fā)光二極管的陽極(二極管正端)連接在一起,如圖1.4(b),通常,公共陽極接高電平(一般接電源),其它管腳接段驅動電路輸出端。當某段驅動電路的輸出端為低電平時,則該端所連接的字段導通并點亮,根據發(fā)光字段的不同組合可顯示出各種數字或字符。此時,要求段驅動電路能吸收額定
42、的段導通電流,還需根據外接電源及額定段導通電流來確定相應的限流電阻。</p><p> 共陰極數碼管的8個發(fā)光二極管的陰極(二極管負端)連接在一起,如圖(c),通常,公共陰極接低電平(一般接地),其它管腳接段驅動電路輸出端,當某段驅動電路的輸出端為高電平時,則該端所連接的字段導通并點亮,根據發(fā)光字段的不同組合可顯示出各種數字或字符。此時,要求段驅動電路能提供額定的段導通電流,還需根據外接電源及額定段導通電流來確
43、定相應的限流電阻。</p><p> 圖3-3 (a)數碼管引腳圖 (b)共陽極內部結構圖 (c)共陰極內部結構圖</p><p> 本設計采用共陰極數碼顯示管做顯示電路,由于采用的是共陰的數碼顯示管,所以只要數碼管的a、b、c、d、e、f、g、h引腳為高電平,那么其對應的二極管就會發(fā)光,使數碼顯示管顯示0~9的編碼見表1.1。</p><p> 表3-1 共
44、陰極數碼顯示管字型代碼</p><p> 3.3 復位電路模塊</p><p> 為確保微機系統(tǒng)中電路穩(wěn)定可靠工作,復位電路是必不可少的一部分,復位電路的第一功能是上電復位。一般微機電路正常工作需要供電電源為5V±5%,即4.75~5.25V。由于微機電路是時序數字電路,它需要穩(wěn)定的時鐘信號,因此在電源上電時,只有當VCC超過4.75V低于5.25V以及晶體振蕩器穩(wěn)定工作時
45、,復位信號才被撤除,微機電路開始正常工作。</p><p> 圖3-4 復位模塊電路圖</p><p> 3.4 系統(tǒng)總體設計</p><p> 本設計利用AT89C51單片機的定時器/計數器定時和記數的原理,使其能精確計時。利用中斷系統(tǒng)使其能實現開始暫停的功能。P0口輸出段碼數據,P2.0-P2.3口作列掃描輸出,P1.0、P1.1、P1.2、P1.3、P
46、1.4分別接五個按鈕開關,分別實現開始/暫停、清零和可增加的拓展功能。顯示部分由四位共陰極數碼管組成。系統(tǒng)總體圖如下:</p><p> 圖3-5 系統(tǒng)總體設計電路圖</p><p> 第4章 系統(tǒng)的軟件設計</p><p> 在軟件設計中,一般采用模塊化的程序設計方法,它具有明顯的優(yōu)點。把一個多功能的復雜的程序劃分為若干個簡單的、功能單一的程序模塊,有利于
47、程序的設計和調試,有利于程序的優(yōu)化和分工,提高了程序的閱讀性和可靠性,使程序的結構層次一目了然。</p><p> 圖4-1 主程序流程圖</p><p> 方案中采用了定時中斷T0。CPU在響應中斷時,先處理高級中斷,在處理低級中斷,若有多個同級中斷時,則按自然優(yōu)先順序處理。例如當CPU正在處理一個中斷申請時,有出現了另一個優(yōu)先級比它高的中斷請求,這是,CPU就暫停終止對當前優(yōu)先級較
48、低的中斷源的服務,轉去響應優(yōu)先級比它高的中斷請求,并為其服務。待服務結束,再繼續(xù)執(zhí)行原來較低級的中斷服務程序。而當CPU為級別高的終端服務程序服務時,如果級別低的中斷發(fā)出中斷請求,此時CPU是不會響應的。</p><p> AT89C51單片機的自然優(yōu)先級順序排列如下:</p><p> 中斷源 最高</p
49、><p><b> 外部中斷0</b></p><p> 定時/計數器0溢出中斷</p><p><b> 外部中斷1</b></p><p> 定時/計數器1溢出中斷</p><p> 串行口中斷 最低
50、</p><p> 第5章 實物焊接、仿真與調試</p><p> 5.1 軟件的仿真與調試</p><p> Proteus ISIS是英國Labcenter公司開發(fā)的電路分析與實物仿真軟件,它可以仿真、分析(SPICE)各種模擬器件和集成電路。該軟件的主要特點總結后有以下四點:①實現了單片機仿真和SPICE電路仿真相結合的功能。②支持目前主流單片機系統(tǒng)
51、的仿真。③提供了軟件調試功能,并可以與WAVE聯(lián)合仿真調試。④具有強大的原理圖繪制功能??傊?,該軟件是一款集單片機和SPICE分析于一身的仿真軟件,功能極其強大。在電子領域中也起到了很大的作用,它的出現仿真不需要先焊接電路,可以先仿真調試通過后在焊電路,節(jié)省了不少在硬件調試上所花的時間。</p><p> Proteus ISIS的工作界面是一種標準的Windows界面。它包括標題欄、主菜單、狀態(tài)欄、標準工具欄
52、、繪圖工具欄、對象選擇按鈕、預覽對象方位控制按鈕、仿真進程控制按鈕、預覽窗口、對象選擇器窗口、圖形編輯窗口等十幾個工具,方便了使用者的使用。</p><p> 首先打開已經畫好的proteus DSN文件,雙擊圖中的AT89C51芯片,就彈出一個窗口,在Program File項中通過路徑選擇在WAVE中生成的HEX文件,雙擊選中后確定,這樣仿真圖中的AT89C51芯片就已經讀取了本設計中的HEX文件。單擊“三
53、角形按鈕”進行仿真。通過對仿真結果的觀察來對程序進行修改,最終使程序到達設計要求。</p><p> 圖5-1 proteus仿真圖</p><p> 5.2 硬件的安裝與調試</p><p> 按照之前設計好的數字電子秒表原理圖,詳細計算系統(tǒng)中各個元件的參數,選擇相應器件,焊接實際電路板。由于考慮到萬能板大小的問題及元件之間連線的方便,在焊接元器件前必須考
54、慮元件的布局然后進行實際操作。</p><p> 制作好的電路板可以用萬用表(200歐姆檔)的紅、黑表筆測試電路板的每條走線,當其電阻非常小時,證明走線沒有斷開,當其電阻很大時,證明該條走線斷了,應該重新走線,使電路板在電氣上得到正確地連接。選用萬用表的20K歐姆檔,檢測電路中是否存在短路。因為系統(tǒng)采用的是共陰極數碼管作為顯示電路,必須確保數碼管的公共端接的是低電平。</p><p>&
55、lt;b> 1.晶振電路的測試</b></p><p> 在單片機正常運行的必要條件是單片機系統(tǒng)的時鐘穩(wěn)定正常。實際中,因為各種原因導致系統(tǒng)時鐘不正常而出現系統(tǒng)無法正常運行的情況時有,因此系統(tǒng)時鐘是否振是通電檢查的首要環(huán)節(jié)。在系統(tǒng)通電的狀況下,用萬用表的直流電壓檔(20V),分別測量XTAL1和XTAL2引腳的電壓,看是否正常,在調試過程中,測得電壓XTAL1引腳應為2.05V,XTAT2應
56、為2.15V。</p><p><b> 2.復位電路的測試</b></p><p> 復位不正常也會導致系統(tǒng)不能工作。如果復位引腳始終為高電平,系統(tǒng)將始終處于復位狀態(tài);如果始終為低電平,不能產生復位所需的高電平信號脈沖,則系統(tǒng)也可能無法正常工作。單片機正常工作時,RST復位引腳應為0V,按下復位按鍵時,復位引腳為高電平5V左右。</p><p
57、><b> 3.顯示電路的測試</b></p><p> 顯示電路是數字電子秒表正常運行最直觀的觀察窗口,我們可以通過觀察顯示電路的顯示結果觀察系統(tǒng)能否正常運行。當顯示電路按照電路圖焊接好后,用萬用表的測二極管檔位,將黑表筆接共陰數碼管的公共段,然后將紅表筆接數碼管的各段,當數碼管的段能正常顯示,說明各點焊接正常。</p><p><b> 第6
58、章 結論</b></p><p> 本設計的數字電子秒表是由AT89C51單片機、共陰數碼顯示管、控制按鍵等器件構成的,設有四位計時顯示,開始、暫停、復位按鍵以及一個系統(tǒng)整機復位按鈕。計時精度能到達10ms,設計精簡,使用簡單易懂。系統(tǒng)設計合理,線路簡單、功能先進,性能穩(wěn)定,程序精簡,并給出了詳細的電路設計方法。本系統(tǒng)是以單片機為核心,僅單片機方面知識是不夠的,還應根據具體硬件結構,以及針對具體應
59、用對象特點的軟件結合,以作完善。</p><p> 通過本次設計,復習鞏固我們以前所學習的數字、模擬電子技術、單片機原理及應用等課程知識,加深對各門課程及相互關系的理解,并成功使用了Proteus、Keil和兩款電子軟件,使理論知識系統(tǒng)化、實用化,系統(tǒng)地掌握微機應用系統(tǒng)的一般設計方法,培養(yǎng)較強的編程能力、開發(fā)能力。</p><p> 同時,在設計的過程中,我也發(fā)現了本系統(tǒng)的許多不足和可
60、以改進的地方。但因時間緊迫等原因沒能改進。本設計的數字電子秒表缺少對多次計時時間進行記錄的功能。應給在單片機的內部存儲區(qū)多設置一些存儲空間,用來存儲多次計時時間。并在程序中編入對多次計時時間的調用顯示。雖然存在不足,但本設計的數字電子秒表仍具有它的實用性。</p><p> 做了將近兩周的課程設計,讓我感受頗深,有很多知識是書本上學不到的知識,這些都是需要親自動手實踐的。</p><p>
61、; 通過10多天的努力,在向老師的請教和同學的幫助下我終于完成了單片機的課程設計。我覺得作為一名通信專業(yè)的學生,單片機的課程設計是十分有意義的。重要的是如何把自己平時所學的東西應用到實際中。雖然自己對于這門課懂的并不多,很多基礎的東西都還沒有很好的掌握,覺得很難,也沒有很有效的辦法通過自身去理解,但是靠著這一個多禮拜的努力,在同學的幫助和講解下,漸漸對這門課逐漸產生了些許的興趣,自己開始主動學習并逐步從基礎慢慢開始弄懂它。我認為這個收
62、獲應該說是相當大的。</p><p> 我覺得課程設計反映的是一個從理論到實際應用的過程,但是更遠一點可以聯(lián)系到以后畢業(yè)之后從學校轉到踏上社會的一個過程。向別人詢問、請教、配合﹑相處,以及自身的動腦和努力,都是以后工作中需要的。</p><p><b> 致謝</b></p><p> 感謝我的導師朱恒軍老師,他嚴謹細致、一絲不茍的作風一
63、直是我工作、學習中的榜樣;他循循善誘的教導和不拘一格的思路給予我無盡的啟迪。</p><p> 感謝我的爸爸媽媽,焉得諼草,言樹之背,養(yǎng)育之恩,無以回報,你們永遠健康快樂是我最大的心愿。</p><p> 感謝我的室友們,是你們和我共同維系著彼此之間兄弟般的感情,維系著寢室那份家的融洽。三年了,仿佛就在昨天。三年里,我們沒有紅過臉,沒有吵過嘴,沒有發(fā)生上大學前所擔心的任何不開心的事情。
64、</p><p> 在論文即將完成之際,我的心情無法平靜,從開始進入課題到論文的順利完成,有多少可敬的師長、同學、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!</p><p><b> 參考文獻</b></p><p> [1] 張毅剛,彭喜元,彭宇.單片機原理及其應用.2010 , 05 :(101-113).</p>
65、<p> [2] 譚浩強.C語言程序設計(第二版)[M],北京:清華大學出版社,1991.</p><p> [3] 黃智偉.凌陽單片機課程設計指導[M],北京:北京航空航天大學出版社,2006.11.</p><p> [4] 李廣弟,朱月秀,王秀山.單片機基礎[M],北京:北京航空航天大學出版社,2001.7.</p><p> [5] 趙曙
66、光,郭萬有,楊頌華.可編程邏輯器件原理開發(fā)與應用[M],西安:西安電子科技大學, 2000.</p><p> [6] 候伯亨.VHDL硬件描述語言與數字邏輯電路設計[M], 西安:西安電子科技大學出版社, 1999.</p><p> [7] 康華光. 模擬電子技術基礎(第四版)[M], 武漢:華中理工大學出版社,1999.</p><p><b>
67、 附錄1</b></p><p><b> 源程序代碼</b></p><p> #include <reg51.h></p><p> #define uchar unsigned char</p><p> sbit P20=P2^0; // 數碼管位定義</p>
68、<p> sbit P21=P2^1;</p><p> sbit P22=P2^2;</p><p> sbit P23=P2^3;</p><p> sbit P27=P0^7; //控制小數點</p><p> sbit KS=P1^0; //開始</p><p> sbit KR=
69、P1^1; //復位</p><p> uchar time,xs,ge,shi,bai,qian;</p><p> uchar code tab[ ]={</p><p> 0x3F, /*0*/</p><p> 0x06, /*1*/</p><p> 0x5B,
70、 /*2*/</p><p> 0x4F, /*3*/</p><p> 0x66, /*4*/</p><p> 0x6D, /*5*/</p><p> 0x7D, /*6*/</p><p> 0x07, / *7*/</p><p&
71、gt; 0x7F, /*8*/</p><p> 0x6F, /*9*/</p><p> }; // 數碼管顯示字符0-9</p><p> void delay_ms(unsigned int ms) //1ms延時函數</p><p><b> {</b><
72、/p><p><b> uchar a;</b></p><p> while(ms--)</p><p> for(a=123;a>0;a--);</p><p><b> }</b></p><p> void display(); </p>&
73、lt;p> void T0intinit( ) //定時器T0初始化</p><p><b> {</b></p><p> TMOD=0x01;</p><p> TH0=(65536-10000)/256; //10ms定時</p><p> TL0=(65536-10000)%25
74、6;</p><p><b> EA=1;</b></p><p><b> ET0=1;</b></p><p><b> }</b></p><p> void main() //主程序</p><p>&
75、lt;b> { </b></p><p> T0intinit( ); //調用T0初始化函數</p><p> while(1) //進入循環(huán)</p><p><b> { </b></p><p> display( );
76、 //顯示</p><p> while(!KS) //判斷是否有開始/暫停鍵按下</p><p><b> { </b></p><p> display( );</p><p><b> if(KS)</b></p><p&
77、gt;<b> TR0=!TR0;</b></p><p><b> }</b></p><p> while(!KR) //判斷是否有清零鍵按下</p><p><b> {</b></p><p> display( );</p>
78、<p> if(KR) //全部歸零</p><p><b> TR0=0;</b></p><p><b> qian=0;</b></p><p><b> bai=0;</b></p><p><b> shi=0;<
79、;/b></p><p><b> ge=0;</b></p><p><b> }</b></p><p> if(bai==10) //進位</p><p><b> {</b></p><p><b> ba
80、i=0;</b></p><p><b> qian++;</b></p><p><b> }</b></p><p> if(qian==10)</p><p><b> {</b></p><p><b> qian
81、=0;</b></p><p><b> TR0=0;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void di
82、splay( ) // 顯示函數</p><p><b> {</b></p><p> P23=0; //數碼管動態(tài)顯示</p><p> P0=tab[ge];</p><p> delay_ms(1);</p><p><b> P23=1;</b&g
83、t;</p><p><b> P22=0;</b></p><p> P0=tab[shi];</p><p> delay_ms(1);</p><p><b> P22=1;</b></p><p><b> P21=0;</b><
84、/p><p> P0=tab[bai]|0x80;</p><p> delay_ms(1);</p><p><b> P21=1;</b></p><p><b> P20=0;</b></p><p> P0=tab[qian];</p><p
85、> delay_ms(1);</p><p><b> P20=1;</b></p><p><b> }</b></p><p> void T0int( ) interrupt 1 //定時器T0中斷 方式1</p><p><b> {</b&g
86、t;</p><p> TH0=(65536-10000)/256; //重裝10ms定時常數</p><p> TL0=(65536-10000)%256;</p><p><b> ge++;</b></p><p> if(ge==10)</p><p><b>
87、 {</b></p><p><b> ge=0;</b></p><p><b> shi++;</b></p><p><b> }</b></p><p> if(shi==10)</p><p><b> {&l
88、t;/b></p><p><b> shi=0;</b></p><p><b> bai++;</b></p><p><b> }</b></p><p><b> }</b></p><p><b>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機秒表單片機課程設計
- 單片機課程設計--基于單片機的秒表系統(tǒng)設計
- 單片機課程設計-基于單片機的數字秒表的設計
- 單片機課程設計報告---單片機秒表系統(tǒng)設計
- 單片機秒表課程設計
- 單片機秒表課程設計
- 單片機秒表課程設計
- 單片機課程設計---秒表
- 單片機秒表課程設計
- 秒表(單片機課程設計)
- 單片機秒表系統(tǒng)設計課程設計--基于8051的單片機秒表系統(tǒng)設計
- 基于單片機的秒表課程設計
- 單片機課程設計---秒表設計
- 單片機課程設計報告---單片機控制秒表系統(tǒng)
- 課程設計--基于單片機的(秒表)設計
- 單片機秒表的課程設計
- 單片機數字秒表課程設計
- 單片機課程設計-數字秒表
- 單片機課程設計-數字秒表
- 單片機秒表課程設計報告
評論
0/150
提交評論