基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作_第1頁
基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作_第2頁
基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作_第3頁
基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作_第4頁
基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于數(shù)字鐘的課程設(shè)計(jì)-單片機(jī)電子鐘的制作2007-06-30 12:23;主程序(MAIN,如下:ORG 0000HAJMP MAINORG 000BHAJMP TIMEORG 0300HMAIN:mov 20h#00hMOV 21H#00HMOV 22H#00HMOV 23H#00HMOV IP#02H ;IPIE初始化MOV IE#82HMOV TMOD#01H ;設(shè)定定時器工作方式? MOV TL0#0B0HMOV TH0#3CHSETB TR0 ;啟動定時?MOV SP#40H ;重設(shè)堆棧指針NEXT: LCALL DISP ;調(diào)用顯示子程序? LCALL KEY ;調(diào)用按鍵檢測子程序

2、JZ NEXT ;LCALL ANKEY ;調(diào)用按鍵處理子程序SJMP NEXT ;重新循環(huán)NOPNOPNOP;定時中斷處理程序:TIME: PUSH ACC ;保護(hù)現(xiàn)場PUSH PSWMOV TL0#0B4H ;賦定時初值MOV TH0#3CHINC 20H ;MOV A20HCJNE A#20RETI1MOV 20H#00H ;一秒鐘時間到MOV A21HADD A#01HDA AMOV 21HACJNE A#60HRETI1MOV 21H#00H ;一分鐘時間到MOV A22HADD A#01HDA AMOV 22HACJNE A#60HRETI1MOV 22H#00H ;一小時時間到M

3、OV A23HADD A#01HDA AMOV 23HACJNE A#24HRETI1MOV 23H#00H ;到時間達(dá)到24小時清零. RETI1: POP PSW ;恢復(fù)現(xiàn)場POP ACCRETI ;中斷返回?NOPNOP;顯示子程序DISP: ANL 2FH#10H ;處理小數(shù)點(diǎn)>MOV A21H ;處理秒21H->2DH2EH ANL A#0FHORL A2FHMOV 2FHAMOV A21HANL A#0F0HSWAP AMOV 2EHAANL 2DH#10HMOV A22H ;處理分鐘22H->2CH2DH ANL A#0FHORL A2DHMOV 2DHAMOV

4、 A22HANL A#0F0HSWAP AMOV 2CHAANL 2BH#10HMOV A23H ;處理小時23H->2AH2BH ANL A#0FHORL A2BHMOV 2BHAMOV A23HANL A#0F0HSWAP AMOV 2AHAMOV R0#2FH ;顯示偏移量MOV R3#06HMOV DPTR#TABLEMOV A#0BFHLOOP1: MOV BA ;MOV P2aMOV AR0MOVC AA+DPTRMOV P0a ;送顯示MOV R2#80H ;延時DJNZ R2$DEC R0MOV ABRR ADJNZ R3LOOP1 ;循環(huán)顯示RETTABLE: db 2

5、8h7eh0a2h62h74h61h21h ;不帶小數(shù)點(diǎn)DB 7ah20h60h000000000000DB 8H5eH82H42H54H41H1H5aH ;帶小數(shù)點(diǎn)DB 00H40H000000000000NOPNOP;按鍵判斷程序KEY: MOV P3#0FFH ;MOV AP3CPL AANL A#3CHJZ RETX ;無鍵按下則返回LCALL DISP ;LCALL DISPMOV AP3CPL AANL A#3CHJZ RETX ;鍵盤去抖動。MOV R6A ;將鍵值存入R6。LOOP2: LCALL DISP ;MOV AP3CPL AANL A#3CHJNZ LOOP2 ;等待

6、鍵釋放MOV AR6RETX: RETNOPNOP;按鍵處理子程序ANKEY: CLR EA ;關(guān)中斷LX: MOV AR6JB ACC.2L1 ;是功能鍵轉(zhuǎn)L1JB ACC.3L2 ;是確認(rèn)鍵轉(zhuǎn)L2JB ACC.4L3 ;是減1鍵轉(zhuǎn)L3JNB ACC.5L12 ;不是增1鍵,轉(zhuǎn)L12JB 2BH.4L6 ;判斷使哪一位(時、分、秒的值加1 JB 2DH.4L8JB 2FH.4L9L12: LCALL DISPLCALL DISPLCALL KEY ;判斷有無鍵按下。JZ L12LJMP LXL2: MOV 25H#00H ;確認(rèn)鍵處理程序CLR 2BH.4CLR 2DH.4CLR 2FH.4

7、SETB EARETL3: JB 2BH.4L61 ;增一鍵處理程序 JB 2DH.4L81 JB 2FH.4L91 AJMP L12 L1: MOV A25H ;功能鍵處理程序 JZ LB1 JB ACC.0LB2 JB ACC.1LB3 JNB ACC.2L12 LB1: MOV 25H#01H ;25H 單元是標(biāo)志位, (25H)=01H 調(diào)節(jié)時單元的值 SETB 2BH.4 CLR 2DH.4 CLR 2FH.4 AJMP L12 LB3: MOV 25H#04H ;25H 單元是標(biāo)志位, (25H)=01H 調(diào)節(jié)秒單元的值 SETB 2FH.4 CLR 2DH.4 CLR 2BH.4

8、 AJMP L12 LB2: MOV 25H#02H ;25H 單元是標(biāo)志位, (25H)=01H 調(diào)節(jié)分單元的值 SETB 2DH.4 CLR 2BH.4 CLR 2F H.4 AJMP L12 L61: AJMP L611 ; L81: AJMP L811 ; L91: AJMP L911 L6: MOV A23H ;時加一 ADD A#01H DA A MOV 23HA CJNE A#24HL15 L15: JC L112 MOV 23H#00H L112: AJMP L12 L8: MOV A22H ;分加一 ADD A#01H DA A MOV 22HA CJNE A#60HL16 L16: JC L112 MOV 22H#00H AJMP L12 L9: MOV A21H ;秒加一 ADD A#01H DA A MOV 21HA CJNE A#60HL17 L17: JC L112 MOV 21H#00H AJMP L12 L611: MOV A23H ;時減一 ADD A#99H DA A MOV 23HA CJNE A#99HL112 MOV 23H#23H AJMP L12 L811: MOV A22H ;分減一 ADD A#99H DA

溫馨提示

  • 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

提交評論