單片機C51時鐘的設(shè)計報告_第1頁
單片機C51時鐘的設(shè)計報告_第2頁
單片機C51時鐘的設(shè)計報告_第3頁
單片機C51時鐘的設(shè)計報告_第4頁
單片機C51時鐘的設(shè)計報告_第5頁
免費預(yù)覽已結(jié)束,剩余5頁可下載查看

下載本文檔

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

文檔簡介

1、單片機課程設(shè)計報告設(shè)計名稱:單片機電子時鐘的設(shè)計班級:電信08級1班學(xué)號:指導(dǎo)教師:一 課程設(shè)計 的目的單片計算機即單片微型計算機。(Single-Chip Microcompute),是 集CPU ,RAM ,ROM定時,計數(shù)和多種接口 于一體的微控制器。他體 積小,成本低,功能強,廣泛 應(yīng)用于智能 產(chǎn)品和工 業(yè)自動化上。而 51單片機是各 單片機中最 為典型和最有代表性的一 種。這次課程設(shè)計通過對它 的學(xué)習(xí), 應(yīng)用, 從而達到學(xué)習(xí)、設(shè)計、開 發(fā)軟 、硬的能力。二、課程設(shè)計的具體要求:該課程設(shè)計是利用MCS-51單片機部的定 時/計數(shù)器、中斷系統(tǒng)、以及行列鍵盤和LED顯示器等部件, 設(shè)計一個

2、單片機電子時鐘。 設(shè)計的電子時鐘通過數(shù)碼管顯示, 并能通過按鍵實現(xiàn)設(shè) 置時間和暫停、 啟動控 制等。用定時/計數(shù)器TO,工作于定時,采用方式1,對12MHZ的系統(tǒng)時鐘進行定時計數(shù),初值設(shè)為XXYY (自己計算)。形成定時時間為50ms用片RAM的7BH單元對50ms計數(shù),計20次產(chǎn)生秒計數(shù)器78H單元 加1,秒計數(shù)器加到60則分計數(shù)器79H單元加1,分計數(shù)器加到60則時計數(shù)器7AH單元加1,時計數(shù)器加 到 24則時計數(shù) 器清0。然后把秒、分、 時計數(shù) 器分成十位和 個位放到 8個數(shù)碼管的顯示緩沖區(qū),通過數(shù)碼 管顯示出來。顯示格式為小時十位、小時個位-分十位、分 個位-秒十位、秒 個位。在處理過

3、程中加上了按 鍵判斷程序,能 對按鍵處 理三、MCS-51單片機系統(tǒng)簡介40個引腳按引腳功能大致可分為4個種類:電源、時鐘、控制和I/O引腳。1. 電源: VCC - 芯片 電 源,接 +5V; VSS - 接地端;注:用萬用表 測試單 片機引腳 電壓一般 為0v或者5v,這是標(biāo)準(zhǔn)的TTL電平。但有 時候在單片 機程序正在工作 時候測試結(jié) 果并不是 這個值 而是介于 0v-5v 之間,其實這 是萬用表的 響應(yīng) 速度沒這 么快而已,在某一 個瞬間單片機引腳 電壓仍保持在0v或者5vo2. 時鐘:XTAL1、XTAL2 -晶體振蕩電路反相輸入端和輸出端。3. 控制線:控制線共有4根, ALE/PR

4、OG:地址 鎖存允 許/片EPROM編程脈沖 ALE 功能:用 來鎖 存 P0 口送出的低 8 位地址 PROG功能:片有 EPROM的芯片,在 EPROM編程期間,此引腳 輸入編程脈沖。 PSEN:夕卜ROM讀選通信號。 RST/VPD:復(fù)位/備用 電源。 RST ( Reset)功能:復(fù)位信號輸入端。 VPD功能:在 Vcc掉電情況下,接備用電源。 EA/Vpp:夕卜ROM選擇/片EPROM編程 電源。 EA功能:夕卜ROM選擇端。 Vpp功能:片有 EPROM的芯片,在 EPROM編程期 間,施加 編程電源Vpp。4. I/O 線80C51共有4個8位并行I/O端口: P0、P1、P2、

5、P3 口,共 32個引腳。P3 口還具有第二功能,用于特殊信號輸入輸出和控制信 號(屬控制總線)四、MCS-51單片機部定時器/計數(shù)器、中斷系統(tǒng)簡介定時/計數(shù)器是單片機中重要的功能模 塊之一,在檢測,控制和智能 儀器等設(shè)備中經(jīng)常用它來定時。MCS-51 系列中51子系列有2個16位的可編程定時/計數(shù)器:T0和T1;每個定時計數(shù)器既可以對系統(tǒng)時鐘計數(shù)實現(xiàn) 定時,也可以對外部信號計數(shù)實現(xiàn)計數(shù) 功能,通過編程設(shè)定來實現(xiàn)。T0有4種工作方式,T1有3種工作方式,T2有3種工作方式,可通過編程設(shè)定。每個定時/計數(shù)器計數(shù)事件到時產(chǎn)生溢岀,使相應(yīng)的溢岀位置位, 溢出可通過查詢或中斷方式處理。2. 中斷系統(tǒng)簡

6、介MCS-51單片機提供5個硬件中斷源:2個外部中斷源INT0(P3.2和INT1(P3.3) 2個定時/計數(shù)器TO和T1的溢 出中斷TFO和TF1; 1個串行口發(fā)送TI和接收RI中斷。TO中斷服務(wù)程序流程圖如圖11.3五、鍵盤和LED數(shù)碼管顯示器簡介本系統(tǒng)共用8個數(shù)碼管,從右到左依次 顯示秒個位、秒十位、橫線、分個位、分十位、橫線、時個位和時 十位。采用軟件譯碼動態(tài)顯 示。按鍵處理設(shè)置為:如沒有按鍵,則時鐘正常走時。當(dāng)按下K0按鍵時,進入 調(diào)分狀態(tài),時鐘停止走動;按K1可K2按鍵可進行加1或減1操作;繼續(xù)按K0鍵可分別進行分和小時的調(diào) 整;最后按K0鍵將退岀調(diào)整狀態(tài),時鐘開始計時運行。六、基

7、本原理1.定時器/計數(shù)器T0定時器/計數(shù)器T0用于時間計時。選擇方式1,重復(fù)定時,定時時間設(shè)為50ms,定時時間到則中 斷,在中斷服務(wù)程序中用一個計數(shù)器對50ms計數(shù),計20次則對秒單元加1,秒單元加到60則對分單元加 1,同時秒單元清0;分單元加到60則對時單元加1,同時分單元清0;時單元加到24則對時單元清0,標(biāo) 志一天時間計滿。在對各單元計數(shù)的同時,把它們的值放到存儲單元的指定位置。七硬件電路C247uFX1189CRYSTAL1947uFR35.1k,XTAL1P0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RS

8、TP0.7/AD7P2.0/A8P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1.1P3.1/TXDP1.2P3.2/INT0P1.3P3.3/INT-P1.4P3.4/T0P1.5P3.5/T1P1 6P3 6AWP1.7P3.7/RD-U13938373634333221232930-31-2527281104581780C5113-1415-166723K0鍵為模式選擇鍵,按第一次暫停,設(shè)小時; 按第二次暫停,設(shè)分,按第三次重新開始走動。 K1為加1鍵,K2為減1健。八、軟件程序流

9、程及代碼1. T0中斷服務(wù)程序流程圖開始2.主程序流程圖TO、T1設(shè)為16位計數(shù)模式忖允許TO中斷時單元=24?調(diào)用顯示子程序時單元清0按下鍵否? 進入功能程序:中斷返回3. 程序代 碼ORG 0000HLJMP STARTORG 000BH;定時器/計數(shù)器TO中斷程序入口LJMP INTT0;主程序START:MOV R0, #70HMOV R7, #0CHINIT: MOV R0, #00HINC R0DJNZ R7, INITMOV 72H, #10MOV 75H, #10MOV TMOD,#01HMOV TL0, #0B0HMOV TH0, #03CHSETB EASETB ET0SE

10、TB TR0START1:LCALL SCANLCALL KEYSCANSJMP START1;延 時 1MS 子程序DL1MS: MOV R6,#14HDL1:MOV R7, #19HDL2:DJNZ R7, DL2DJNZ R6,DL1RET;延 時 20MS 子程序DL20MS: ACALL SCANACALL SCANACALL SCANRET;數(shù)碼 管顯示程序SCAN: MOV A,78H; 時間存入顯示緩沖區(qū)相應(yīng)位置MOV B, #0AHDIV ABMOV 71H, AMOV 70H, BMOV A, 79HMOV B, #0AHDIV ABMOV 74H, AMOV 73H, B

11、MOV A, 7AHMOV B, #0AHDIV ABMOV 77H, AMOV 76H, BMOV R1,#70H;循環(huán)掃 描顯示MOV R5, #80HMOV R3, #08HSCAN1:MOV A, R5MOV P2, AMOV A, R1MOV DPTR, #TABMOVC A, A+DPTRMOV P0, AMOV A, R5LCALL DL1MSINC R1MOV A, R5RR AMOV R5, ADJNZ R3, SCAN1MOV P2, #00HMOV P0, #0FFHRETTAB:DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H,82H, 0F8H,

12、80H, 90H, 0BFH ;“0,9”“-”的共 陽極 字段碼;定時器/計數(shù)器TO中斷服務(wù)程序INTT0: PUSH ACCPUSH PSWCLR ETOCLR TROMOV TLO, #OBOHMOV THO, #O3CHSETB TROINC 7BHMOV A, 7BHCJNE A, #14H, OUTTOMOV 7BH,#OOINC 78HMOV A, 78HCJNE A, #3CH, OUTTOMOV 78H, #OOINC 79H MOV A, 79HCJNE A, #3CH, OUTT0MOV 79H, #00INC 7AHMOV A, 7AHCJNE A, #18H, OUT

13、T0MOV 7AH, #00OUTT0:SETB ET0POP PSWPOP ACCRETI;按 鍵處 理程序KEYSCAN: CLR EAJNB P1.0, KEYSCAN0JNB P1.1, KEYSCAN1JNB P1.2, KEYSCAN2 KEYOUT: SETB EARETKEYSCAN0: LCALL DL20MS JB P1.0, KEYOUT WAIT0: JNB P1.0, WAIT0INC 7CHMOV A, 7CHCLR ET0CLR TR0CJNE A, #03H, KEYOUT MOV 7CH, #00SETB ET0SETB TR0SJMP KEYOUT KEYS

14、CAN1: LCALL DL20MS JB P1.1, KEYOUT WAIT1: JNB P1.1, WAIT1MOV A, 7CHCJNE A, #02H, KSCAN11INC 79HMOV A, 79HCJNE A, #3CH,KEYOUTMOV 79H, #00SJMP KEYOUTKSCAN11: INC 7AHMOV A, 7AHCJNE A, #18H, KEYOUTMOV 7AH, #00SJMP KEYOUTKEYSCAN2: LCALL DL20MSJB P1.2, KEYOUTWAIT2: JNB P1.2, WAIT2MOV A, 7CHCJNE A, #02H, K

15、SCAN21DEC 79HMOV A, 79HCJNE A, #0FFH,KEYOUTMOV 79H, #3BHSJMP KEYOUTKSCAN21:DEC7AHMOVA,7AHCJNEA,#0FFH, KEYOUTMOV7AH, #17HSJMPKEYOUTEND九 設(shè)計 制作流程1、在PROTEUS中設(shè)計硬件PROTEUS軟件使用過程如下:1 ) 選擇 元器件2)放置元器件3)連線4)添加程序5)運行仿 真元器件 清單 如下:單片機: 80C52按鍵 : BUTTON電阻: RES電容: CAP晶振: CRYSTALLED 數(shù)碼管:7SEG-MPX8-CA-BLUE CA:共陽,CC:共陰)地: GRAND電源: POWER2、在KEIL51中編寫程序,編譯、連接形成HEX文件。3、在PROTEUS中把 HEX文件加 載到單片機芯片上。4、運行仿 真看結(jié)果。十 總結(jié)這次課程設(shè)計,有很多的心得體 會,有關(guān)于單片機方面的,更多的是 關(guān)于人與人之間關(guān)系方面的。在這期間,我得到了很多同 學(xué)

溫馨提示

  • 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論