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