音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

實(shí)用單片機(jī)電子鐘的制作

作者:LB 欄目:單片機(jī)
實(shí)用單片機(jī)電子鐘的制作    

   為 六位數(shù)碼管時(shí)鐘程序倚天版直接使用,p3.2,p3.3,p3.4,p3.5 四鍵控制!。強(qiáng)烈推薦,實(shí)測(cè)24小時(shí)誤差5秒。

;;主程序(MAIN),如下:
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP TIME

ORG 0300H
MAIN:
mov 20h,#00h
MOV 21H,#00H
MOV 22H,#00H
MOV 23H,#00H
MOV IP,#02H ;IP,IE初始化
MOV IE,#82H
MOV TMOD,#01H ;設(shè)定定時(shí)器工作方式?
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0 ;啟動(dòng)定時(shí)?
MOV SP,#40H ;重設(shè)堆棧指針
NEXT: LCALL DISP ;調(diào)用顯示子程序?
LCALL KEY ;調(diào)用按鍵檢測(cè)子程序
JZ NEXT ;
LCALL ANKEY ;調(diào)用按鍵處理子程序
SJMP NEXT ;重新循環(huán)
NOP
NOP
NOP
;定時(shí)中斷處理程序:
TIME: PUSH ACC ;保護(hù)現(xiàn)場(chǎng)
PUSH PSW
MOV TL0,#0B4H ;賦定時(shí)初值
MOV TH0,#3CH
INC 20H ;
MOV A,20H
CJNE A,#20,RETI1
MOV 20H,#00H ;一秒鐘時(shí)間到
MOV A,21H
ADD A,#01H
DA A
MOV 21H,A
CJNE A,#60H,RETI1
MOV 21H,#00H ;一分鐘時(shí)間到
MOV A,22H
ADD A,#01H
DA A
MOV 22H,A
CJNE A,#60H,RETI1
MOV 22H,#00H ;一小時(shí)時(shí)間到
MOV A,23H
ADD A,#01H
DA A
MOV 23H,A
CJNE A,#24H,RETI1
MOV 23H,#00H ;到時(shí)間達(dá)到24小時(shí),清零.
RETI1: POP PSW ;恢復(fù)現(xiàn)場(chǎng)
POP ACC
RETI ;中斷返回?
NOP
NOP

2樓: >>參與討論
LB
;顯示子程序
DISP: ANL 2FH,#10H ;處理小數(shù)點(diǎn)
MOV A,21H ;處理秒21H-->2DH,2EH
ANL A,#0FH
ORL A,2FH
MOV 2FH,A
MOV A,21H
ANL A,#0F0H
SWAP A
MOV 2EH,A
ANL 2DH,#10H
MOV A,22H ;處理分鐘22H-->2CH,2DH
ANL A,#0FH
ORL A,2DH
MOV 2DH,A
MOV A,22H
ANL A,#0F0H
SWAP A
MOV 2CH,A
ANL 2BH,#10H
MOV A,23H ;處理小時(shí)23H-->2AH,2BH
ANL A,#0FH
ORL A,2BH
MOV 2BH,A
MOV A,23H
ANL A,#0F0H
SWAP A
MOV 2AH,A
MOV R0,#2FH ;顯示偏移量
MOV R3,#06H
MOV DPTR,#TABLE
MOV A,#0BFH
LOOP1: MOV B,A ;
MOV P2,a
MOV A,@R0
MOVC A,@A+DPTR
MOV P0,a ;送顯示
MOV R2,#80H ;延時(shí)
DJNZ R2,$
DEC R0
MOV A,B
RR A
DJNZ R3,LOOP1 ;循環(huán)顯示
RET

TABLE: db 28h,7eh,0a2h,62h,74h,61h,21h ;不帶小數(shù)點(diǎn)
DB 7ah,20h,60h,00,00,00,00,00,00
DB 8H,5eH,82H,42H,54H,41H,1H,5aH ;帶小數(shù)點(diǎn)
DB 00H,40H,00,00,00,00,00,00
NOP
NOP
;按鍵判斷程序
KEY: MOV P3,#0FFH ;
MOV A,P3
CPL A
ANL A,#3CH
JZ RETX ;無鍵按下則返回
LCALL DISP ;
LCALL DISP
MOV A,P3
CPL A
ANL A,#3CH
JZ RETX ;鍵盤去抖動(dòng)。
MOV R6,A ;將鍵值存入R6。
LOOP2: LCALL DISP ;
MOV A,P3
CPL A
ANL A,#3CH
JNZ LOOP2 ;等待鍵釋放
MOV A,R6
RETX: RET
NOP
NOP
;按鍵處理子程序
ANKEY: CLR EA ;關(guān)中斷
LX: MOV A,R6
JB ACC.2,L1 ;是功能鍵轉(zhuǎn)L1
JB ACC.3,L2 ;是確認(rèn)鍵轉(zhuǎn)L2
JB ACC.4,L3 ;是減1鍵轉(zhuǎn)L3
JNB ACC.5,L12 ;不是增1鍵,轉(zhuǎn)L12
JB 2BH.4,L6 ;判斷使哪一位(時(shí)、分、秒)的值加1
JB 2DH.4,L8
JB 2FH.4,L9

L12: LCALL DISP
LCALL DISP
LCALL KEY ;判斷有無鍵按下。
JZ L12
LJMP LX

3樓: >>參與討論
LQJJ

多謝!

4樓: >>參與討論
gd2062
看別人的程序其實(shí)是一件很煩的事.
5樓: >>參與討論
ouwen84
同意
6樓: >>參與討論
luo123

一年差30分鐘,不錯(cuò)

7樓: >>參與討論
doming

還是不看為好

自己編吧

嘻嘻

樓主的心意領(lǐng)了!

8樓: >>參與討論
自由電子
我不懂,為什么所有的人發(fā)布程序,都要搞一些錯(cuò)誤在里面,或是關(guān)鍵的部分省略掉。地址20H ~2FH好像是位尋址區(qū),堆棧地址似乎要從60H單元開始。
9樓: >>參與討論
風(fēng)箏瓦瓦

因?yàn)樘煜聸]有免費(fèi)的蘑菇吃吧!

不過這樣可以鍛煉像我一樣即將畢業(yè)的~新新~們

我要加油!

10樓: >>參與討論
玲瓏?guó)B兒
en樓上說的沒錯(cuò)! 我想也是還是自己編吧!!
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
0-125度的溫度計(jì).DS1820
[轉(zhuǎn)帖]初學(xué)單片機(jī)幾個(gè)不易掌握的概念
[求助]!如何產(chǎn)生相差一定寬度的脈沖信號(hào)!
用過TLC2543這款A(yù)D芯片的問一下
[分享]數(shù)字溫度計(jì)程序
免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)