久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1443|回復(fù): 0
收起左側(cè)

電子時(shí)鐘程序

[復(fù)制鏈接]
ID:269769 發(fā)表于 2018-1-1 15:36 | 顯示全部樓層 |閱讀模式
        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í)器工作方式1
         MOV TL0,#0B0H
         MOV TH0,#3CH
         SETB TR0          ;啟動(dòng)定時(shí)T0
         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,#0B0H               ;賦定時(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
;****************************************************
;顯示子程序
;****************************************************
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                       ;無(wú)鍵按下則返回
         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                  ;判斷有無(wú)鍵按下。
         JZ L12
         LJMP LX
L2:    MOV 25H,#00H                 ;確認(rèn)鍵處理程序
         CLR 2BH.4
         CLR 2DH.4
         CLR 2FH.4
         SETB EA
         RET
L3:    JB 2BH.4,L61            ;增一鍵處理程序
         JB 2DH.4,L81
         JB 2FH.4,L91
         AJMP L12
L1:    MOV A,25H                   ;功能鍵處理程序
         JZ LB1
         JB ACC.0,LB2
         JB ACC.1,LB3
         JNB ACC.2,L12
LB1: MOV 25H,#01H                 ;25H單元是標(biāo)志位,(25H=01H調(diào)節(jié)時(shí)單元的值
         SETB 2BH.4
         CLR 2DH.4
         CLR 2FH.4
         AJMP L12
LB3: MOV 25H,#04H                 ;25H單元是標(biāo)志位,(25H=01H調(diào)節(jié)秒單元的值
         SETB 2FH.4
         CLR 2DH.4
         CLR 2BH.4
         AJMP L12
LB2: MOV 25H,#02H             ;25H單元是標(biāo)志位,(25H=01H調(diào)節(jié)分單元的值
         SETB 2DH.4
         CLR 2BH.4
         CLR 2FH.4
         AJMP L12
L61: AJMP L611
L81: AJMP L811
L91: AJMP L911
L6:    MOV A,23H               ;時(shí)加一
         ADD A,#01H
         DA A
         MOV 23H,A
         CJNE A,#24H,L15
L15: JC L112
         MOV 23H,#00H
L112:        AJMP L12
L8:    MOV A,22H               ;分加一
         ADD A,#01H
         DA A
         MOV 22H,A
         CJNE A,#60H,L16
L16: JC L112
         MOV 22H,#00H
         AJMP L12
L9:    MOV A,21H               ;秒加一
         ADD A,#01H
         DA A
         MOV 21H,A
         CJNE A,#60H,L17
L17: JC L112
         MOV 21H,#00H
         AJMP L12
L611:        MOV A,23H               ;時(shí)減一
         ADD A,#99H
         DA A
         MOV 23H,A
         CJNE A,#99H,L112
         MOV 23H,#23H
         AJMP L12
L811:        MOV A,22H               ;分減一
         ADD A,#99H
         DA A
         MOV 22H,A
         CJNE A,#99H,L112
         MOV 22H,#59H
         AJMP L12
L911:        MOV A,21H               ;秒減一
         ADD A,#99H
         DA A
         MOV 21H,A
         CJNE A,#99H,L112
         MOV 21H,#59H
         AJMP L12
         NOP
         NOP
         END

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产日产久久高清欧美一区 | 亚洲精品99 | 国产精品视频网 | 91精品国产综合久久小仙女图片 | 成人国产精品免费观看 | 中文字幕视频三区 | 91精品久久 | 精品国产99 | 99国产精品久久久 | 日韩中文字幕第一页 | 亚洲国产成人久久综合一区,久久久国产99 | 午夜a√ | 亚洲一区网站 | 国产不卡在线播放 | 国色天香成人网 | 日日日日操 | 97精品久久 | 在线一级片| 欧美国产精品久久久 | 久操国产 | 能看的av网站 | 日韩三区在线 | 精品国产免费人成在线观看 | 日本黄色激情视频 | 97精品国产97久久久久久免费 | 久久久久久久91 | 天堂中文在线播放 | 一区二区伦理电影 | 国产激情毛片 | 亚洲精品字幕 | 国产在线精品一区二区三区 | 精品久久久久久久久久久久久 | 日韩一区精品 | 日韩中文字幕一区 | 亚洲精色 | 国产丝袜人妖cd露出 | 九九热在线视频观看这里只有精品 | 牛牛热在线视频 | 久久久久久久综合 | 午夜视频一区二区 | se婷婷|