利用AT89C2051制作的6位電子鐘
采用AT89C2051的6位電子鐘原理如下圖所示,只要硬件連接無(wú)誤,保證成功。另外圖中的SET按紐用于校準時(shí)間。按住2秒以上進(jìn)入校準時(shí)間狀態(tài)及換檔和退出,快速點(diǎn)觸用于調節時(shí)間數值。三極管采用9015即可。數碼管最好采用紅色的共陽(yáng)型LED數碼管,亮度高些,因為是掃描的顯示方式,所以各個(gè)數碼管的abcdefg各腳采用了總線(xiàn)并聯(lián),改動(dòng)510歐姆的電阻可以改變顯示亮度。
電子鐘源程序
MCS51單片機匯編程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; AT89C2051時(shí)鐘程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 定時(shí)器T0、T1溢出周期為50MS,T0為秒計數用, T1為調整時(shí)閃爍用, ; P3.7為調整按鈕,P1口 為字符輸出口,采用共陽(yáng)顯示管。 ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 中斷入口程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG 0000H ;程序執行開(kāi)始地址 LJMP START ;跳到標號START執行 ORG 0003H ;外中斷0中斷程序入口 RETI ;外中斷0中斷返回 ORG 000BH ;定時(shí)器T0中斷程序入口 LJMP INTT0 ;跳至INTTO執行 ORG 0013H ;外中斷1中斷程序入口 RETI ;外中斷1中斷返回 ORG 001BH ;定時(shí)器T1中斷程序入口 LJMP INTT1 ;跳至INTT1執行 ORG 0023H ;串行中斷程序入口地址 RETI ;串行中斷程序返回 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 主 程 序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; START: MOV R0,#70H ;清70H-7AH共11個(gè)內存單元 MOV R7,#0BHCLEARDISP:MOV @R0,#00HINC R0DJNZ R7,CLEARDISPMOV 20H,#00H ;清20H(標志用) MOV 7AH,#0AH ;放入"熄滅符"數據 MOV TMOD,#11H ;設T0、T1為16位定時(shí)器 MOV TL0,#0B0H ;50MS定時(shí)初值(T0計時(shí)用) MOV TH0,#3CH ;50MS定時(shí)初值 MOV TL1,#0B0H ;50MS定時(shí)初值(T1閃爍定時(shí)用) MOV TH1,#3CH ;50MS定時(shí)初值 SETB EA ;總中斷開(kāi)放
評論