wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

可調(diào)時鐘程序(狀態(tài)機(jī))

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2010年10月01日   【字體:
/***************************************************************************************
         008.ASM
        用八位數(shù)碼管顯示時間,通過兩個按鍵改變顯示內(nèi)容及修改時間
       接線:J15.J16短接,P0接八位數(shù)碼管,P2接獨立鍵盤
                             2010.09.06  
  ***************************************************************************************/
  ORG 0000H
    LJMP MAIN
  ORG 001BH
    LJMP INT_T1
  ORG 0040H
MAIN:
    LCALL FRIST     ;上電初始化
LOOP:        ;主循環(huán)
 LCALL KEY_READ     ;讀鍵盤
 JBC 00H,N
 LJMP N0      ;無鍵,則跳到N0
N:
 LCALL CHAUNG   ;有鍵則去刷新顯示狀態(tài)
 LJMP LOOP
N0:       ;輸出當(dāng)前時分秒
    MOV R0,#60H 
 MOV R1,#07H
 MOV R5,#08H
 LCALL COUNT_OUTPUT  ;刷新輸出
 LCALL SHOW     ;輸出
 LCALL CHANG_TIME   ;按秒改變輸出時間
 LJMP LOOP

FRIST:
 MOV SP,#30H   ;設(shè)置堆棧
 MOV 45H,#01H      ;設(shè)置初始狀態(tài)為00H
 MOV P1,#0FFH       ;初始化P1口 
 MOV TMOD,#21H   ;設(shè)置定時器工作模式,T0為工作模式2,T1為工作模式1

 MOV 50H,#06H    ;初始化年月日 數(shù)碼管顯示
 MOV 51H,#00H
 MOV 52H,#09H
 MOV 53H,#00H
 MOV 54H,#00H
 MOV 55H,#01H
 MOV 56H,#00H
 MOV 57H,#02H

 MOV 46H,#14H  ;初始化年月日
 MOV 47H,#0AH
 MOV 48H,#09H
 MOV 49H,#06H 

 MOV 60H,#00H ;初始化時 分 秒 數(shù)碼管顯示
 MOV 61H,#00H
 MOV 62H,#08H
 MOV 63H,#05H
 MOV 64H,#02H
 MOV 65H,#02H
 MOV 66H,#00H
 MOV 67H,#00H

 MOV 58H,#16H   ;初始化時分秒
 MOV 59H,#3AH
 MOV 68H,#00H

 MOV R6,#19H  ;定時T1計數(shù)
 MOV R7,#28H

 MOV TH0,#15H     ;賦T0定時初值
 MOV TL0,#0A0H
 MOV TH1,#06H   ;賦T1定時初值
 MOV TL1,#06H
 SETB TR1

 CLR 00H        ;初始化按鍵標(biāo)志為“0” , 即 無 鍵
 CLR 01H        ;初始化鍵值為“0”,即A
 CLR 02H        ;初始化按鍵長短為“0”,即短按鍵  
 CLR 03H         ;初始化定時T1標(biāo)志
 CLR 04H         ;初始時間更改標(biāo)志位(秒,分,時,日,月,年)
 CLR 05H 
 CLR 06H
 CLR 07H
 CLR 08H
 CLR 09H
 CLR 0AH
 CLR 0BH         ;01狀態(tài)標(biāo)志位,表示為01狀態(tài)

    MOV IE,#88H    ;開定時中斷
 RET

 /*輸出計算子程序*/
COUNT_OUTPUT:
    JBC 04H,COUNT_S     ;秒改變,則計算出顯示值送相應(yīng)內(nèi)存
 LJMP COUNT_M
COUNT_S:        ;否則去計算分
    MOV B,#0AH       ;秒/10。商送61H,余數(shù)送60H
 MOV A,68H
 DIV AB
 MOV 61H,A
 MOV 60H,B
COUNT_M:
 JBC 05H,COUNT_M0     ;分改變,則計算出顯示值送相應(yīng)內(nèi)存
 LJMP COUNT_H    ;否則去計算時
COUNT_M0:
    MOV B,#0AH     ;分/10,商送63H,余數(shù)送62H
 MOV A,59H
 DIV AB
 MOV 63H,A
 MOV 62H,B
COUNT_H:
    JBC 06H,COUNT_H0   ;時改變,則計算出顯示值送相應(yīng)內(nèi)存
 LJMP COUNT_D     ;否則去計算日
COUNT_H0:
    MOV B,#0AH     ;時/10,商送65H,余數(shù)送64H
 MOV A,58H
 DIV AB
 MOV 65H,A
 MOV 64H,B
COUNT_D:       ;日改變,則計算出顯示值送相應(yīng)內(nèi)存
    JBC 07H,COUNT_D0    ;否則去計算月
 LJMP COUNT_MON
COUNT_D0:        ;日/10,商送51H,余數(shù)送50H
    MOV B,#0AH
 MOV A,49H
 DIV AB
 MOV 51H,A
 MOV 50H,B
COUNT_MON:
    JBC 08H,COUNT_MON0      ;月改變,則計算出顯示值送相應(yīng)內(nèi)存
 LJMP COUNT_YL       ;否則去計算年(L)
COUNT_MON0:
    MOV B,#0AH      ;月/10,商送53H,余數(shù)送52H
 MOV A,48H
 DIV AB
 MOV 53H,A
 MOV 52H,B
COUNT_YL:
    JBC 09H,COUNT_YL0     ;年低位改變,則計算出顯示值送相應(yīng)內(nèi)存
 LJMP COUNT_YH      ;否則去計算年(H)
COUNT_YL0:
    MOV B,#0AH       ;年(L)/10,商送55H,余數(shù)送54H
 MOV A,47H
 DIV AB
 MOV 55H,A
 MOV 54H,B
COUNT_YH:         ;年高改變,則計算出顯示值送相應(yīng)內(nèi)存
    JBC 0AH,COUNT_YH0       ;否則子程序返回
 LJMP COUNT_RETURN
COUNT_YH0:
 MOV B,#0AH        ;年(H)/10,商送57H,余數(shù)送56H
 MOV A,46H
 DIV AB
 MOV 57H,A
 MOV 56H,B               
COUNT_RETURN:
     RET

/*時間修改子程序*/
CHAUNG:
     
STAR:
  MOV A,45H       ;讀狀態(tài)值
  CJNE A,#01H,CHAUNG0    ;狀態(tài)值=01H,則轉(zhuǎn)H_M_S0,否則進(jìn)行下一個判斷
  LCALL H_M_S0
  LJMP CHAUNG10
CHAUNG0:
     CJNE A,#02H,CHAUNG1    ;狀態(tài)值=02H,則轉(zhuǎn)H_M_S1,否則進(jìn)行下一個判斷
  LCALL H_M_S1
  LJMP CHAUNG10
CHAUNG1:
     CJNE A,#04H,CHAUNG3    ;狀態(tài)值=04H,則轉(zhuǎn)H_M_S2,否則進(jìn)行下一個判斷
  LCALL H_M_S2
  LJMP CHAUNG10
CHAUNG3:
     CJNE A,#03H,CHAUNG4    ;狀態(tài)值=03H,則轉(zhuǎn)Y_M_D0,否則進(jìn)行下一個判斷
  LCALL Y_M_D0
  LJMP CHAUNG10
CHAUNG4:
     CJNE A,#06H,CHAUNG5    ;狀態(tài)值=06H,則轉(zhuǎn)Y_M_D1,否則進(jìn)行下一個判斷
  LCALL Y_M_D1
  LJMP CHAUNG10
CHAUNG5:
     CJNE A,#0CH,CHAUNG6     ;狀態(tài)值=0cH,則轉(zhuǎn)Y_M_D2,否則進(jìn)行下一個判斷
  LCALL Y_M_D2
CHAUNG6:
     CJNE A,#18H,CHAUNG7     ;狀態(tài)值=18H,則轉(zhuǎn)Y_M_D3,否則進(jìn)行下一個判斷
  LCALL Y_M_D3
  LJMP CHAUNG10
CHAUNG7:
     CJNE A,#07H,CHAUNG8     ;狀態(tài)值=07H,則轉(zhuǎn)S_CLOCK0,否則進(jìn)行下一個判斷
  LCALL S_CLOCK0
  LJMP CHAUNG10
CHAUNG8:
     CJNE A,#0EH,CHAUNG9     ;狀態(tài)值=0eH,則轉(zhuǎn)S_CLOCK1,否則進(jìn)行下一個判斷
  LCALL S_CLOCK1
  LJMP CHAUNG10
CHAUNG9:
     CJNE A,#1CH,CHAUNG10    ;狀態(tài)值=07H,則轉(zhuǎn)S_CLOCK2,否則進(jìn)行下一個判斷
  LCALL S_CLOCK2
  LJMP CHAUNG10
CHAUNG10:              ;子程序返回
     JBC 0BH,STAR
     RET


/*狀態(tài)01修理子程序*/
H_M_S0:
     JB 01H,S_01       ;判斷A鍵,B鍵
  MOV 45H,#02H       ;A鍵,狀態(tài)轉(zhuǎn)為02H
  LJMP S_01_RETURN
S_01:           ;B鍵,狀態(tài)轉(zhuǎn)為03H
     MOV 45H,#03H
S_01_RETURN:
     SETB 0BH
  RET


/*狀態(tài)02修理子程序*/
H_M_S1:
     MOV 69H,#00H        ;定時標(biāo)志,定時到,回到A狀態(tài)
LOOP_02:
     MOV R0,#64H        ;設(shè)置顯示內(nèi)容
  MOV R1,#03H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_02      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_02     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_02_RETURN
S_02:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_02_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_02_1        ;短按,去判斷A鍵B鍵
  INC 58H         ;A鍵,時+1
  SETB 06H          ;置位,時改變標(biāo)志
  LJMP LOOP_02
S_02_0:
     JBC 01H,S_02_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#04H        ;A鍵,狀態(tài)轉(zhuǎn)為04H
  SETB 0BH
  LJMP S_02_RETURN
S_02_1:           ;短按B鍵,時-1,并置位時改變標(biāo)志
      DEC 58H
   SETB 06H
   LJMP LOOP_02
S_02_2:
     MOV 45H,#01H
S_02_RETURN:
     MOV 68H,#00H
  RET

/*狀態(tài)04處理子程序*/
H_M_S2:
    MOV 69H,#00H        ;定時標(biāo)志,定時到,回到A狀態(tài)
LOOP_04:
     MOV R0,#62H        ;設(shè)置顯示內(nèi)容
  MOV R1,#05H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_04      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_04     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_02_RETURN
S_04:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_04_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_04_1        ;短按,去判斷A鍵B鍵
  INC 59H         ;A鍵,分+1
  SETB 05H          ;置位,分改變標(biāo)志
  LJMP LOOP_04
S_04_0:
     JBC 01H,S_04_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_04_RETURN
S_04_1:           ;短按B鍵,分-1,并置位分改變標(biāo)志
      DEC 59H
   SETB 05H
   LJMP LOOP_04
S_04_2:
     MOV 45H,#01H
S_04_RETURN:
     MOV 68H,#00H 
  RET


/*狀態(tài)03修理子程序*/
Y_M_D0:
     MOV R0,#50H
  MOV R1,#07H
  MOV R5,#08H
  LCALL  COUNT_OUTPUT 
  LCALL SHOW
  LCALL KEY_READ 
     JB 01H,S_03       ;判斷A鍵,B鍵
  MOV 45H,#06H       ;A鍵,狀態(tài)轉(zhuǎn)為02H
  LJMP S_03_RETURN
S_03:           ;B鍵,狀態(tài)轉(zhuǎn)為03H
     MOV 45H,#07H
S_03_RETURN:
     SETB 0BH       
     RET


/*狀態(tài)06修理子程序*/
Y_M_D1:
     MOV 69H,#00H        ;定時標(biāo)志,定時到,回到A狀態(tài)
LOOP_06:
     MOV R0,#54H        ;設(shè)置顯示內(nèi)容
  MOV R1,#03H
  MOV R5,#04H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_06      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_06     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_06_RETURN
S_06:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_06_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_06_1        ;短按,去判斷A鍵B鍵
  INC 47H         ;A鍵,年+1
  MOV A,47H
  CJNE A,#64H,S_066
  MOV 47H,#00H
  INC 46H
  SETB 0AH
S_066:
  SETB 09H          ;置位,年改變標(biāo)志
  LJMP LOOP_06
S_06_0:
     JBC 01H,S_06_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_06_RETURN
S_06_1:           ;短按B鍵,年-1,并置位年改變標(biāo)志
      DEC 47H
   MOV A,47H
   CJNE A,#-1,S_0666
   MOV 47H,#00H
   DEC 46H
   SETB 0AH
S_0666:
   SETB 09H
   LJMP LOOP_06
S_06_2:
     MOV 45H,#01H
S_06_RETURN:
     RET

/*狀態(tài)0C修理子程序*/
Y_M_D2:
     MOV 69H,#00H        ;定時標(biāo)志,定時到,回到A狀態(tài)
LOOP_0C:
     MOV R0,#52H        ;設(shè)置顯示內(nèi)容
  MOV R1,#05H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_0C      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_0C     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_0C_RETURN
S_0C:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_0C_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_0C_1        ;短按,去判斷A鍵B鍵
  INC 48H         ;A鍵,月+1
  SETB 08H          ;置位,月改變標(biāo)志
  LJMP LOOP_0C
S_0C_0:
     JBC 01H,S_0C_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_0C_RETURN
S_0C_1:           ;短按B鍵,月-1,并置位月改變標(biāo)志
      DEC 48H
   SETB 08H
   LJMP LOOP_0C
S_0C_2:
     MOV 45H,#01H
S_0C_RETURN:
     RET

/*狀態(tài)18修理子程序*/
Y_M_D3:
     MOV 69H,#00H        ;定時標(biāo)志,定時到,回到A狀態(tài)
LOOP_18:
     MOV R0,#50H        ;設(shè)置顯示內(nèi)容
  MOV R1,#07H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_18      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_18     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_18_RETURN
S_18:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_18_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_18_1        ;短按,去判斷A鍵B鍵
  INC 49H         ;A鍵,日+1
  SETB 07H          ;置位,日改變標(biāo)志
  LJMP LOOP_18
S_18_0:
     JBC 01H,S_18_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_18_RETURN
S_18_1:           ;短按B鍵,日-1,并置位日改變標(biāo)志
      DEC 49H
   SETB 07H
   LJMP LOOP_18
S_18_2:
     MOV 45H,#01H
S_18_RETURN:
     MOV 68H,#00H 
     RET

/*狀態(tài)07修理子程序*/
S_CLOCK0:
     JB 01H,S_07       ;判斷A鍵,B鍵
  MOV 45H,#01H       ;A鍵,狀態(tài)轉(zhuǎn)為02H
  LJMP S_07_RETURN
S_07:           ;B鍵,狀態(tài)轉(zhuǎn)為03H
     MOV 45H,#07H
S_07_RETURN:
     SETB 0BH       
     RET


/*狀態(tài)0E修理子程序*/
S_CLOCK1:
    
LOOP_0E:
     MOV R0,#62H        ;設(shè)置顯示內(nèi)容
  MOV R1,#05H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_0E      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_0E     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_18_RETURN
S_0E:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_0E_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_0E_1        ;短按,去判斷A鍵B鍵
  INC 59H         ;A鍵,分+1
  SETB 05H          ;置位,時改變標(biāo)志
  LJMP LOOP_0E
S_0E_0:
     JBC 01H,S_0E_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_0E_RETURN
S_0E_1:           ;短按B鍵,分-1,并置位時改變標(biāo)志
      DEC 59H
   SETB 05H
   LJMP LOOP_0E
S_0E_2:
     MOV 45H,#01H
S_0E_RETURN:
     MOV 68H,#00H 
     RET
   
/*狀態(tài)1C修理子程序*/
S_CLOCK2:

LOOP_1C:
     MOV R0,#62H        ;設(shè)置顯示內(nèi)容
  MOV R1,#05H
  MOV R5,#02H
  LCALL COUNT_OUTPUT       ;計算顯示數(shù)據(jù)
  LCALL SHOW         ;顯示
  LCALL KEY_READ      ;讀鍵盤
     JBC 00H,S_1C      ;有鍵,則去判斷長按短按
  INC 69H        ;無鍵,定時標(biāo)志+1
  MOV A,69H
  CJNE A,#0FFH,LOOP_1C     ;定時到,狀態(tài)轉(zhuǎn)為01H,子程序返回
  MOV 45H,#01H
  LJMP S_1C_RETURN
S_1C:
     MOV 69H,#00H       ;有按鍵,清零定時標(biāo)志
     JBC 02H,S_1C_0        ;長按,去判斷A鍵B鍵
  JBC 01H,S_1C_1        ;短按,去判斷A鍵B鍵
  INC 59H         ;A鍵,分+1
  SETB 05H          ;置位,時改變標(biāo)志
  LJMP LOOP_1C
S_1C_0:
     JBC 01H,S_1C_2        ;長按,B鍵,狀態(tài)變?yōu)榱?1H,并子程序返回
  MOV 45H,#01H        ;A鍵,狀態(tài)轉(zhuǎn)為08H
  LJMP S_1C_RETURN
S_1C_1:           ;短按B鍵,分-1,并置位時改變標(biāo)志
      DEC 59H
   SETB 05H
   LJMP LOOP_1C
S_1C_2:
     MOV 45H,#01H
S_1C_RETURN:
     MOV 68H,#00H 
     RET

 


/*時間按秒增長子程序*/
CHANG_TIME:
     JBC 03H,C_TIME      ;秒定時標(biāo)志是否為1,為1則去改變時間,否則子程序返回
  LJMP C_RETURN
C_TIME:
     MOV A,68H       ;讀出秒,加1,判斷是否大于等于60,是則送#00H到68H,否則將秒寫回68H
  INC A
  SETB 04H
  CJNE A,#3CH,S       ;僅當(dāng)秒大于等于60時,才去改變分
  MOV 68H,#00H
  LJMP M0
S:
     MOV 68H,A          
  LJMP C_RETURN
M0:
     MOV A,59H         ;讀出分,加1,判斷是否大于等于60,是則送#00H到59H,否則將秒寫回59H
  INC A
  SETB 05H
  CJNE A,#3CH,M1      ;僅當(dāng)分大于等于60時,才去改變時
  MOV 59H,#00H
  LJMP H0
M1:
     MOV 59H,A
  LJMP C_RETURN
H0:
     MOV A,58H        ;讀出時,加1,判斷是否大于等于24,是則送#00H到58H,否則將秒寫回58H
  INC A
  SETB 06H
  CJNE A,#18H,H1       ;僅當(dāng)時大于等于24時,才去改變?nèi)?  MOV 58H,#00H
  LJMP DAY0
H1: 
     MOV 58H,A
  LJMP C_RETURN
DAY0:
     MOV A,49H         ;讀出日,加1,判斷是否大于等于31,是則送#01H到49H,否則將秒寫回49H
  INC A
  SETB 07H
  CJNE A,#1EH,DAY1        ;僅當(dāng)日大于等于30時,才去改變月
  MOV 49H,#01H
  LJMP MON0
DAY1:
     MOV 49H,A
  LJMP C_RETURN
MON0:
     MOV A,48H        ;讀出月,加1,判斷是否大于等于13,是則送#01H到48H,否則將秒寫回48H
  INC A
  SETB 08H
  CJNE A,#0CH,MON1      ;僅當(dāng)月大于等于13時,才去改變年
  MOV 48H,#01H
  LJMP YEARL0
MON1:
     MOV 48H,A
  LJMP C_RETURN
YEARL0:
     MOV A,47H       ;讀出年(L),加1,判斷是否大于等于100,是則送#00H到48H,否則將秒寫回47H
  INC A
  SETB 09H
  CJNE A,#64H,YEARL1     ;僅當(dāng)年(L)大于等于100時,才去改變年(H)
  MOV 47H,#00H
  LJMP YAERH0
YEARL1:
     MOV 47H,A
  LJMP C_RETURN
YAERH0:
     MOV A,46H       ;讀出年(H),加1,判斷是否大于等于100,是則送#00H到48H,否則將秒寫回46H
  INC A
  SETB 0AH
  CJNE A,#64H,YEARH1
  MOV 46H,#00H
  LJMP C_RETURN
YEARH1:
  MOV 46H,A
                         
C_RETURN:
     RET

/*數(shù)碼管顯示子程序,R0存顯示內(nèi)容首址,R1存位選首址 ,*/


SHOW:
 MOV DPTR,#LED_DATA
S2:
 MOV A,R1
 RL A
 RL A
 MOV P2,A
 MOV A,@R0
 MOVC A,@A+DPTR
 CPL A
 MOV P0,A
 INC R0
 DEC R1
 MOV R4,#01H
 LCALL DELAY
 DJNZ R5,S2
 MOV R4,#01H
    LCALL DELAY
 RET


/*鍵盤掃描子程序*/

 


KEY_READ:
    JB P1.0,NEXT
 MOV R4,#64H
 LCALL DELAY
 JB P1.0,NEXT
 SETB TR0
 SETB 00H
 CLR 01H
 JNB P1.0,$
 CLR TR0
 JNB TF0,KEY_RETUN
 SETB 02H
 LJMP KEY_RETUN
NEXT:
    JB P1.2,KEY_RETUN
 MOV R4,#64H
 LCALL DELAY
 JB P1.2,KEY_RETUN
 SETB TR0
 SETB 00H
 SETB 01H
 JNB P1.2,$
 CLR TR0
 JNB TF0,KEY_RETUN
 SETB 02H
 LJMP KEY_RETUN

KEY_RETUN:
    MOV TH0,#15H     ;重賦T0定時初值
 MOV TL0,#0A0H
    CLR TF0
 RET    
    
/*定時器T1中斷服務(wù)子程序*/ 
  
INT_T1:
    PUSH ACC
    DJNZ R6,INT_1
 MOV R6,#50H
 DJNZ R7,INT_1
 MOV R7,#32H 
 SETB 03H
INT_1:
 POP ACC
    RETI 
    
/*延時子程序,R2,R3為定時常數(shù),R4為定時變量*/

DELAY:
D: MOV R2,#0AH
D0: MOV R3,#0AH
D1: DJNZ R3,D1
    DJNZ R2,D0
 DJNZ R4,D
 RET     

 

 

/*數(shù)碼管顯示代碼,0~F*/

LED_DATA:
     DB 03H,9FH,25H,0DH,99H,49H,41H,1FH
  DB 01H,09H,11H,0C1H,63H,85H,61H,71H


  END    

關(guān)閉窗口

相關(guān)文章

韩国欧美亚洲国产| 一级免费黄色录像| 国产精品对白刺激| 欧美一区二区三区在线视频| 国产精品亚洲成人| 国产欧美高清视频在线| 色av手机在线| www.色五月| 国产精品一品二区三区的使用体验| 国产精品无码电影| 自拍日韩亚洲一区在线| 国产精品美女久久久久av福利| 日韩小视频在线| 在线观看视频欧美| 中文字幕av一区二区三区高 | 日本中文字幕中出在线| www.夜夜| 一色屋成人免费精品网| 中文字幕永久在线视频| 黄色裸体一级片| 日批视频在线看| 人妻少妇精品久久| 国产美女久久久| 久久福利视频导航| 精品国产一区二区三区四区四| 国产精品美女久久久久久| 日本人妖一区二区| 在线观看日韩| 美女亚洲一区| 成年永久一区二区三区免费视频| h片在线免费观看| 在线免费av网址| 黄色大片在线观看| 欧美69xx性欧美| 好吊视频一二三区| 在线免费观看一区二区| 国产成人免费观看视频| 国产aaaaaaaaa| 成人在线观看一区二区| 嫩草av久久伊人妇女超级a| 免费观看黄色大片| 欧美一区二区视频17c| 91国产丝袜在线放| 国产精品99久久久久久白浆小说| 欧美日韩999| 久久精品99久久香蕉国产色戒| 日韩欧美色电影| 欧美色倩网站大全免费| 精品电影在线观看| 一区二区三区美女视频| 国产日产亚洲精品系列| 国产精品老牛影院在线观看| 日日噜噜夜夜狠狠| 亚洲狼人在线| 青青免费在线视频| 中文在线网在线中文| freehdxxxx护士| 美女高潮黄又色高清视频免费| 伊人国产视频| 中文在线视频观看| 影音先锋5566中文源资源| 狠狠人妻久久久久久综合麻豆| 91久久久久国产一区二区| 狠狠躁夜夜躁人人爽视频| 天堂网av手机版| 97久久久久久久| 人人爽人人爽人人片av| 成年人晚上看的视频| 中文精品久久久久人妻不卡| 久久精品视频2| 又色又爽又黄无遮挡的免费视频| 亚洲天堂一区在线| 在线观看毛片av| 在线观看视频中文字幕| 国产美女永久免费| 天天躁日日躁狠狠躁喷水| 黑人精品一区二区| 极品一线天粉嫩虎白馒头| 精品一区二区三区高清免费不卡| 99re6在线视频精品免费| 五月天黄色网址| 色综合小说天天综合网| 97影视大全免费追剧大全在线观看| 亚洲在线精品视频| 精品国产免费无码久久久| 好吊视频一区二区三区| 亚洲欧美天堂网| 你懂的视频在线看| 成人3d漫画免费无遮挡软件| 中国一级特黄毛片大片| 国产三级在线| 菠萝蜜视频在线观看www入口| 欧美日韩美女| 国产精品视屏| 欧美片第1页综合| 青青国产91久久久久久| 91麻豆免费观看| 国产精品电影一区二区| 色婷婷综合五月| 亚洲成人网av| 欧美日本精品在线| 666精品在线| 手机成人av在线| 性猛交ⅹ×××乱大交| 国产精品第8页| 国产麻豆日韩| 国产又粗又大又爽的视频| 日韩手机在线观看视频| 中文在线字幕观看| 午夜免费激情视频| 亚洲系列第一页| 亚洲精品aaaa精品| 成视频在线观看免费观看| 久草在线青青草| 午夜欧美激情| 亚洲宅男一区| 久久狠狠婷婷| 国产午夜精品福利| 日韩欧美国产成人| 日韩激情视频在线播放| 欧美成年人视频| 99久久精品久久久久久ai换脸| 一区二区三区免费看| 日韩av加勒比| 日韩黄色三级视频| 中文字幕av高清片| 成人频在线观看| 性xxxxfreexxxxx欧美丶| 秋霞蜜臀av久久电影网免费| 亚洲综合激情| 国产精品视频第一区| 欧美午夜一区二区三区免费大片| 亚洲香蕉成视频在线观看| 国产精品一区二区三| 中文字幕在线观看一区二区三区| 奇米777在线| 天堂中文在线网| 免费黄色欧美视频| 神马电影在线观看| 高清一区二区三区av| 在线欧美视频| 国产精品国产三级国产有无不卡 | 国产精品一区二| 久久久久久久久久久久久国产精品| 中文字幕免费高清| 亚洲成人中文字幕在线| 2019中文字幕视频| 欧美片第1页| 欧美男男激情videos| 欧美一级二级三级视频| 蜜臀av性久久久久蜜臀aⅴ流畅 | 92看片淫黄大片看国产片| 日本黄色片一级片| 成年人免费视频播放| 免费一区二区在线观看| 天堂а√在线8种子蜜桃视频| 日韩福利影视| 日本少妇一区二区| 日韩欧美视频一区二区三区| 欧美激情视频三区| 中文字幕一区二区三区四区五区人 | 国产一区二区三区欧美| 国产精品久久久久av福利动漫| 乌克兰美女av| 波多野结衣视频免费观看| 天天操天天擦| 国产亚洲欧美日韩精品一区二区三区| 日韩午夜av| 婷婷开心久久网| 国产美女视频91| 91精品国产综合久久久久久| 国产成人综合精品| 97视频在线免费播放| 日韩欧美不卡视频| jizzjizzjizz在线观看| 亚洲日本在线观看视频| 日本欧美大码aⅴ在线播放| 欧美日韩中国免费专区在线看| 久久理论片午夜琪琪电影网| 国产视频在线观看网站| 日产亚洲一区二区三区| 黑人巨大40cm重口| 欧美xxxx网站| 国产一区二区在线电影| 日韩一区二区视频在线观看| 亚洲一区久久久| 欧美熟妇精品一区二区 | 国产精品久久麻豆| 欧美激情第10页| 亚洲精品日韩综合观看成人91| 精品国模在线视频| 国产一二三区在线播放| 免费中文字幕在线观看| www天堂在线观看| 啪啪av大全导航福利综合导航| 久久66热re国产| 日韩激情av在线免费观看| 三区精品视频观看| 激情五月婷婷小说| 国产网站免费观看| 免费观看久久av| 亚洲精品一二三区| 日韩av电影国产| 国产精品19p| 欧美一级久久久久久久久大| yellow在线观看网址| 日产国产高清一区二区三区| 91精品中文字幕一区二区三区 | 精品少妇一二三区| 99re6在线视频| 小嫩嫩12欧美| 亚洲国产日韩一级| 成人黄色影片在线| 中国女人特级毛片| 天天色天天射天天干| 欧美黑白配在线| 亚洲精品久久7777| 在线观看中文字幕不卡| 国产高清不卡av| 国产性xxxx| 亚洲最新合集| 国产亚洲欧洲| 亚洲精品mp4| 精品人妻少妇一区二区| 精品久久人妻av中文字幕| 污污的网站在线看| 国产精品18久久久久久久网站| 视频在线观看99| 99sesese| 成人精品美女隐私视频| 久久精品色综合| 午夜精品久久久久久久| 国严精品久久久久久亚洲影视 | 天天操天天爱天天爽| 一二三四在线观看免费高清中文在线观看 | 91在线直播亚洲| 午夜国产小视频| 中文官网资源新版中文第二页在线观看| 天天色天天操天天| 成人激情开心网| 欧美精品久久一区二区三区| 一区二区三区四区免费视频| 91欧美日韩麻豆精品| 国产在线xxx| 久久综合久久综合久久综合| 欧美性在线观看| 性欧美精品中出| 黄网站app在线观看下载视频大全官网 | 日本在线观看视频网站| 国产日本在线观看| 国产在线视视频有精品| 久久久久久久久久久av| 久久精品成人av| 最近最新中文字幕在线| 天堂蜜桃91精品| 欧美另类极品videosbestfree| 极品人妻一区二区| 男男视频在线观看网站| 国产精品草草| 中文字幕精品—区二区| 一级黄色片在线免费观看| 被陌生人带去卫生间啪到腿软 | 日韩一级免费一区| 日韩黄色片视频| 轻轻操 在线观看| 天天久久综合| 亚洲视频网站在线观看| 久久久福利影院| 久草福利资源在线视频| 噜噜噜91成人网| 欧美成年人视频网站| caopeng视频| 激情综合闲人网| 波多野结衣中文字幕一区二区三区 | 国产主播一区二区| 欧美自拍视频在线| 久久精品视频8| 国产99re66在线视频| 中文字幕在线不卡| 欧美日韩一区二区视频在线观看| 国产露脸国语对白在线| 国产电影一区二区| 欧美日韩国产大片| 国产情侣av自拍| 四虎4hutv紧急入口| 日韩中文欧美在线| 国产成人av在线| 潘金莲一级淫片aaaaaa播放| 日本另类视频| 欧美日韩精品高清| 手机免费av片| 婷婷五月综合久久中文字幕| 日韩精品欧美大片| 精品一区二区三区四区| 懂色av粉嫩av蜜乳av| 成人精品一区二区三区校园激情 | 国产成人精品久久| 999视频在线| 一区二区三区国产好| 欧美成人性福生活免费看| 超碰人人cao| av电影在线网| 亚洲美女视频在线| 青青草精品视频在线| 成人动漫h在线观看| 国产在线精品一区二区三区不卡| 亚洲一区二区三区毛片| 色一情一乱一区二区三区| 天天揉久久久久亚洲精品| 色综合视频一区中文字幕| 久久草视频在线| 免费欧美网站| 亚洲欧美日本另类| 少妇视频一区二区| 国产综合色在线观看| 91麻豆精品国产91久久久资源速度| 中文字幕1区2区| 超碰porn在线| 色天天综合久久久久综合片| 日韩专区在线播放| 欧美极品aaaaabbbbb| 99tv成人影院| 精品中文字幕久久久久久| 国产毛片欧美毛片久久久| 国产精品论坛| 91麻豆精品国产91久久久久 | 久久一留热品黄| 可以在线看黄的网站| 四虎影视永久免费观看| 97se亚洲国产综合自在线观| 中文字幕一区二区三区最新| 色偷偷亚洲女人天堂观看欧| 97超碰欧美中文字幕| 日本aa在线观看| 麻豆电影在线观看| 1024成人网色www| 一本色道无码道dvd在线观看| 美州a亚洲一视本频v色道| 亚洲国产精品一区二区久久| 国产探花在线观看视频| 污污视频在线看| 欧美videos中文字幕| 精品国产视频在线观看| 57pao国产一区二区| 欧美多人爱爱视频网站| av观看在线免费| 99视频在线精品国自产拍免费观看| 91精品入口蜜桃| 夜夜爽视频导航| 99精品久久只有精品| 国产伦精品一区二区三区四区视频_| 偷拍25位美女撒尿视频在线观看| 亚洲成年人影院| 日韩av无码一区二区三区不卡| 自拍视频在线看| 亚洲图片在区色| 中文字幕一区二区免费| 精品999日本| 久久国产精品久久| 国产福利电影网| 亚洲午夜电影在线| 美国黄色a级片| 91成人小视频| 性日韩欧美在线视频| 男人操女人免费网站| 国产一区二区三区香蕉| 日韩精品在线中文字幕| 色老头视频在线观看| 欧美一级黄色录像| 国产成人亚洲精品自产在线| 66视频精品| 久久亚洲高清| 自拍av在线| 欧美日韩一区二区三区四区五区| 在线免费看av网站| 欧美中文一区二区| 国产精品一国产精品最新章节| 国语对白在线视频| 五月激情综合网| 日日噜噜夜夜狠狠久久波多野| 俺要去色综合狠狠| 国产一区二区免费在线观看| 人成在线视频| 欧美色图在线观看| 五月婷婷亚洲综合| 久久国产精品亚洲77777| 公共露出暴露狂另类av| 国产精品实拍| 中文字幕精品在线视频| 日韩永久免费视频| 99精品视频一区| av漫画在线观看| 欧美韩一区二区| 国产91色在线|亚洲| 少妇免费视频| 日韩一区二区视频在线观看| 亚洲精品国产精品国自产网站按摩| 视频一区中文字幕| 中文字幕乱码人妻综合二区三区| 日韩脚交footjobhd|