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