簡單的51單片機(jī)數(shù)字鐘設(shè)計_第1頁
簡單的51單片機(jī)數(shù)字鐘設(shè)計_第2頁
簡單的51單片機(jī)數(shù)字鐘設(shè)計_第3頁
簡單的51單片機(jī)數(shù)字鐘設(shè)計_第4頁
簡單的51單片機(jī)數(shù)字鐘設(shè)計_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、07級單片機(jī)課程設(shè)計題目:簡單51單片機(jī)數(shù)字時鐘設(shè)計院 系: 電子信息工程 專 業(yè):電信專業(yè) 班 級:07級電信本科三班 姓 名: 劉 濤 學(xué) 號:0 老 師:楊加國 2010-6摘要 班級學(xué)號 1 設(shè)計內(nèi)容 3 進(jìn)度安排 3 MCS-51單片機(jī)系統(tǒng)簡介3 課程設(shè)計背景 4 課程設(shè)計目的 4 MCS-51單片機(jī)內(nèi)部定時器/計數(shù)器中 斷系統(tǒng)簡介 4 課程設(shè)計原理 5 課程設(shè)計代碼 6 設(shè)計相關(guān)說明10 設(shè)計內(nèi)容利用單片機(jī)的定時計數(shù)器,中斷系統(tǒng),以及陣列鍵盤和LED顯示器進(jìn)行設(shè)計。在數(shù)碼管顯示器上實現(xiàn)電子時鐘,并且能進(jìn)行設(shè)置時間和暫停、啟動控制。 進(jìn)度安排地點:電路CAD室設(shè)備:計算機(jī),KEIL

2、51軟件、PROTEUS軟件準(zhǔn)備一周,仿真、調(diào)試一周。 MCS-51單片機(jī)系統(tǒng)簡介MCS51是指由美國INTEL公司(對了,就是大名鼎鼎的INTEL)生產(chǎn)的一系列單片機(jī)的總稱,這一系列單片機(jī)包括了好些品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產(chǎn)品,該系列其它單片機(jī)都是在8051的基礎(chǔ)上進(jìn)行功能的增、減、改變而來的,所以人們習(xí)慣于用8051來稱呼MCS51系列單片機(jī),而8031是前些年在我國最流行的單片機(jī),所以很多場合會看到8031的名稱。INTEL公司將MCS51的核心技術(shù)授權(quán)給了很多其它公司,所以有很多公司在做以8051為核心的單片機(jī),當(dāng)

3、然,功能或多或少有些改變,以滿足不同的需求,其中89C51就是這幾年在我國非常流行的單片機(jī),它是由美國ATMEL公司開發(fā)生產(chǎn)的。以后我們將用89C51、89S51來完成一系列的實驗。MCS-51系列單片機(jī)MCS-51系列單片機(jī)分為兩大系列,即51子系列與52子系列。51子系列:基本型,根據(jù)片內(nèi)ROM的配置,對應(yīng)的芯片為8031、8051、8751、895152子系列:增強(qiáng)型,根據(jù)片內(nèi)ROM的配置,對應(yīng)的芯片為8032、8052、8752、8952這兩大系列單片機(jī)的主要硬件特性如下表:上表中可以看到,8031、8031、8032、80C32片內(nèi)是沒有ROM的,對應(yīng)著上表看,我們可以發(fā)現(xiàn),51系列

4、的單片機(jī)的RAM大小為128B,52系列的RAM大小為256B,51系列的計數(shù)器為兩個16位的,52系列的計數(shù)器為三個16位計數(shù)器。51系列的中斷源為5個,52系列的中斷源為6個。 課程設(shè)計背景近年來隨著計算機(jī)在社會領(lǐng)域的滲透和大規(guī)模集成電路的發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,由于它具有功能強(qiáng),體積小,功耗低,價格便宜,工作可靠,使用方便等特點,因此特別適合于與控制有關(guān)的系統(tǒng),越來越廣泛地應(yīng)用于自動控制,智能化儀器,儀表,數(shù)據(jù)采集,軍工產(chǎn)品以及家用電器等各個領(lǐng)域,單片機(jī)往往是作為一個核心部件來使用,在根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點的軟件結(jié)合,以作完善。關(guān)鍵字 : 單片機(jī) 時鐘設(shè)

5、計 MC51 課程設(shè)計目的1、綜合利用所學(xué)單片機(jī)知識完成一個單片機(jī)應(yīng)用系統(tǒng)設(shè)計并在實驗室實現(xiàn),從而加深對單片機(jī)軟硬知識的理解,獲得初步的應(yīng)用經(jīng)驗。2、學(xué)習(xí)AT89C51定時/計數(shù)器的原理及基本應(yīng)用。3、掌握多為數(shù)碼管動態(tài)顯示方法。4、掌握Keil uVision2 IDE的使用方法?!景椖课募慕?,給項目添加程序文件,編譯、連接項目,形成目標(biāo)文件,運(yùn)行調(diào)試觀察結(jié)果,多文件的處理,仿真環(huán)境的設(shè)置?!?、掌握Keil C51的調(diào)試技巧?!景ㄈ绾卧O(shè)置和刪除斷點,如何查看和修改寄存器的內(nèi)容,如何觀察和修改變量,如何觀察存儲器區(qū)域,并行口的使用,定時/計數(shù)器的使用,串行口的使用,外中斷的使用?!?/p>

6、6、掌握PROTEUS軟件使用過程。 MCS-51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)5個中斷源的符號、名稱及產(chǎn)生的條件如下。INT0:外部中斷0,由P32端口線引入,低電平或下跳沿引起。INT1:外部中斷1,由P33端口線引入,低電平或下跳沿引起。T0:定時器計數(shù)器0中斷,由T0計滿回零引起。T1:定時器計數(shù)器l中斷,由T1計滿回零引起。TIRI:串行IO中斷,串行端口完成一幀字符發(fā)送接收后引起。MCS-51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu) 課程設(shè)計原理單片機(jī)控制的數(shù)字鐘的硬件結(jié)構(gòu)與軟件設(shè)計,給出了匯編語言源程序。此數(shù)字鐘是一個將“時”、“分”、“秒”顯示于人的視覺器官的計時裝置。顯示器件選用LED七段數(shù)碼管。在譯碼顯

7、示電路輸出的驅(qū)動下,顯示出清晰、直觀的數(shù)字符號。針對數(shù)字鐘會產(chǎn)生走時誤差的現(xiàn)象,在電路中就設(shè)計有有校準(zhǔn)時間功能的電路。使用動態(tài)數(shù)碼顯示的方法,運(yùn)用獨立式按鍵識別過程,按“時”,“分”,“秒”數(shù)據(jù)送出顯示處理方法。 設(shè)計代碼;簡要說明:實現(xiàn)24小時制電子鐘,8位數(shù)碼管顯示,顯示時分秒; 顯示格式:23-59-59(小時十位如果為0則不顯示); P0口輸出段選信號,P2口輸出位選信號; P1.0為調(diào)時按鈕,P1.1為調(diào)分按鈕;晶振12MORG 0000H ;程序入口地址LJMP STARTORG 000BH ;定時器0中斷入口地址LJMP TIMER_0K1 BIT P1.0 ;定義調(diào)時按鍵K2

8、BIT P1.1 ;定義調(diào)分按鍵START: MOV TMOD,#01H;定時器0,工作模式1MOV TH0,#03CHMOV TL0,#0B0H;賦初值,定時50msSETB EA ;開中斷總開關(guān)SETB TR0 ;開啟定時器0SETB ET0 ;定時器0中斷允許位MOV R6,#0 ;用于控制走時的基準(zhǔn)時鐘源,計中斷次數(shù)MOV R5,#0 ;R5用于控制掃描按鍵的時間間隔 MOV 20H,#0 ;秒個位寄存器清零MOV 21H,#0 ;秒十位寄存器清零MOV 22H,#0 ;分個位寄存器清零MOV 23H,#0 ;分十位寄存器清零MOV 24H,#0 ;時個位寄存器清零MOV 25H,#0

9、 ;時十位寄存器清零LJMP DISPLAYTIMER_0: CLR EAINC R6INC R5 MOV TH0,#03CHMOV TL0,#0B0H;重新賦初值,定時50msSETB EARETIADD_TIME:CJNE R6,#20,EXIT ;定時器中斷20次,1秒到MOV R6,#0INC 20H MOV A,20H CJNE A,#10,EXIT;如果秒個位等于10,清零MOV 20H,#00H INC 21H MOV A,21H CJNE A,#6,EXIT;如果秒十位等于6,清零MOV 21H,#00H INC 22H MIN:MOV A,22H CJNE A,#10,EXI

10、T;如果分個位等于10,清零MOV 22H,#00H INC 23H MOV A,23H CJNE A,#6,EXIT;如果分十位等于6,清零MOV 23H,#00H INC 24H HOUR:MOV A,25HCJNE A,#2,LOOP;如果時十位等于2,檢查時個位MOV A,24HCJNE A,#4,EXIT;如果時個位等于4,清零MOV 24H,#00H;清零時個位MOV 25H,#00H;清零時十位LJMP EXITLOOP:MOV A,24H CJNE A,#10,EXIT;如果時個位等于10,清零MOV 24H,#00HINC 25HLJMP EXIT EXIT:LJMP DIS

11、PLAY;刷新完畢,跳轉(zhuǎn)到顯示DISPLAY:MOV DPTR,#TABLEMOV A,20HMOVC A,A+DPTRMOV P0,ACLR P2.7LCALL DELAYSETB P2.7 ;顯示秒個位MOV A,21HMOVC A,A+DPTRMOV P0,ACLR P2.6LCALL DELAYSETB P2.6 ;顯示秒十位MOV A,#0BFHMOV P0,ACLR P2.5LCALL DELAYSETB P2.5 ;顯示“-”MOV A,22HMOVC A,A+DPTRMOV P0,ACLR P2.4LCALL DELAYSETB P2.4 ;顯示分個位MOV A,23HMOVC

12、 A,A+DPTRMOV P0,ACLR P2.3LCALL DELAYSETB P2.3 ;顯示分十位MOV A,#0BFHMOV P0,ACLR P2.2LCALL DELAYSETB P2.2 ;顯示“-”MOV A,24HMOVC A,A+DPTRMOV P0,ACLR P2.1LCALL DELAYSETB P2.1 ;顯示時個位MOV DPTR,#TABLE1 ;該位使用TABLE1以消除前置0MOV A,25HMOVC A,A+DPTRMOV P0,ACLR P2.0LCALL DELAYSETB P2.0 ;顯示時十位CJNE R5,#4,EXIT0 ;當(dāng)R5到4時,掃描按鍵MOV R5,#0KEY_SCAN:JNB K1,ADD_HOURJNB K2,ADD_MINLJMP ADD_TIME;無鍵按下,跳至走時ADD_HOUR:INC 24H ;小時加1LJMP HOUR ;更新ADD_MIN:INC 22H ;分鐘加1LJMP MIN ;更新EXIT0:LJMP ADD_TIMEDELAY:MOV R7,#150 ;掃描延時 DJNZ R7,$RET TABLE: ;數(shù)碼管字形顯示編碼表DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,9

溫馨提示

  • 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

提交評論