新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 利用AT89C2051制作的6位電子鐘

利用AT89C2051制作的6位電子鐘

作者: 時間:2011-12-06 來源:網(wǎng)絡(luò) 收藏

CLR 02H ;清閃爍標(biāo)志

CLR TR1 ;關(guān)閉定時器T1

CLR ET1 ;關(guān)定時器T1中斷

SETB TR0 ;開啟定時器T0

SETB ET0 ;開定時器T0中斷(計時開始)

LJMP START1 ;跳回主程序

SET1: LCALL DISPLAY ;鍵釋放等待時調(diào)用顯示程序(調(diào)分)

AJMP SET2 ;防止鍵按下時無時鐘顯示

SET3: LCALL DISPLAY ;等待調(diào)分按鍵時時鐘顯示用

AJMP SET4

SET5: LCALL DISPLAY ;鍵釋放等待時調(diào)用顯示程序(調(diào)小時)

AJMP SETHH1 ;防止鍵按下時無時鐘顯示

SET7: LCALL DISPLAY ;等待調(diào)小時按鍵時時鐘顯示用

AJMP SET6

SETOUT1:LCALL DISPLAY ;退出時鐘調(diào)整時鍵釋放等待

AJMP SETOUT ;防止鍵按下時無時鐘顯示

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; 顯示程序 ;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; 顯示數(shù)據(jù)在70H-75H單元內(nèi),用六位LED共陽數(shù)碼管顯示,P1口輸出段碼數(shù)據(jù),P3口作

; 掃描控制,每個LED數(shù)碼管亮1MS時間再逐位循環(huán)。

DISPLAY:MOV R1,#70H ;指向顯示數(shù)據(jù)首址

MOV R5,#0FEH ;掃描控制字初值

PLAY: MOV A,R5 ;掃描字放入A

MOV P3,A ;從P3口輸出

MOV A,@R1 ;取顯示數(shù)據(jù)到A

MOV DPTR,#TAB ;取段碼表地址

MOVC A,@A+DPTR;查顯示數(shù)據(jù)對應(yīng)段碼

MOV P1,A ;段碼放入P1口

LCALL DL1MS ;顯示1MS

INC R1 ;指向下一地址

MOV A,R5 ;掃描控制字放入A

JNB ACC.5,ENDOUT ;ACC.5=0時一次顯示結(jié)束

RL A ;A中數(shù)據(jù)循環(huán)左移

MOV R5,A ;放回R5內(nèi)

AJMP PLAY ;跳回PLAY循環(huán)

ENDOUT: SETB P3.5 ;一次顯示結(jié)束,P3口復(fù)位

MOV



關(guān)鍵詞: AT89C2051 6位電子鐘

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉