www.pudn.com > XUYING2.rar > XUYING2.ASM


ORG 0000H 
LJMP START 
ORG 0003H 
RETI 
ORG 000BH 
LJMP INTT0;T0 
ORG 0013H 
LJMP INTT1 
ORG 001BH 
RETI 
ORG 0023H 
RETI 
START:MOV R0,#70H 
      MOV R1,#30H 
      MOV R7,#08H 
CLEARDISP:MOV @R0,#00H 
          MOV @R1,#00H 
          INC R0 
	  INC R1 
          DJNZ R7,CLEARDISP 
          MOV 30H,#00H 
          MOV 78H,#0AH 
          MOV 50H,#00H 
          MOV 51H,#00H 
          MOV SP,#90H 
          MOV TMOD,#01H 
          MOV TL0,#00H 
          MOV TH0,#4CH 
          SETB EA 
          SETB EX1 
          SETB PX1 
          SETB IT1 
          MOV R4,#200 
	  MOV 68H,#5 
 
START1:   LCALL DISPLAY 
          JNB P1.0,SETMM 
          AJMP START1 
SETMM:    LCALL AUTO 
KK1:      MOV 34H,78H 
          MOV 35H,78H 
          MOV 36H,78H 
          MOV 37H,#00H 
          MOV 30H,34H 
          MOV 31H,35H 
          MOV 32H,36H 
          MOV 33H,37H 
          LCALL DISPLAY;30H-31H 
          MOV R0,#33H 
          AJMP SETT 
    SETT:  LCALL DISPLAY 
          JNB P1.2,NN 
          JNB P1.1,SS 
          JNB P1.0,MM 
          AJMP SETT 
      SS:LCALL AUTO 
         CJNE R0,#30H,KK2 
         LJMP KK1 
      KK2:DEC R0 
          MOV @R0,#00H 
          LCALL DISPLAY 
          AJMP SETT 
       MM:LCALL AUTO 
          MOV 34H,30H 
          MOV 35H,31H 
          MOV 36H,32H 
          MOV 37H,33H 
          LCALL DISPLAY 
       TT:JNB P1.0,COUNT1 
          LCALL DISPLAY 
          AJMP TT 
       NN:CJNE @R0,#9H,LL1 
          MOV @R0,#00H 
          LCALL AUTO 
          AJMP SETT 
      LL1:INC @R0 
          LCALL AUTO 
          LCALL DL50MS 
          JNB P1.2,NN 
          LJMP SETT 
    COUNT1:LCALL AUTO 
    COUNT:SETB ET0 
          SETB TR0 
          MOV 51H,#1;显示为70-73H 
          MOV A,50H 
          CJNE A,#00H,CT 
       SM:JB P0.1,ST 
           LCALL DISPLAY 
           AJMP SM 
       ST: LCALL DISPLAY 
           JNB P0.1,ADDER 
           AJMP SM 
     ADDER:MOV R0,#75H 
           LCALL ADD1 
           LCALL DISPLAY 
           MOV A,R3 
           CLR C 
           CJNE A,#99H,ADDMM 
     ADDMM:JC OUT0 
           LCALL CLR0 
           MOV R0,#77H 
           LCALL ADD1 
           LCALL DISPLAY 
           MOV A,R3 
           CLR C 
           CJNE A,#99H,ADDHH 
     ADDHH:JC OUT0 
           LCALL CLR0 
     OUT0:MOV 70H,74H 
          MOV 71H,75H 
          MOV 72H,76H 
          MOV 73H,77H 
          LCALL DISPLAY 
          AJMP COUNT 
      CT: MOV 70H,74H 
          MOV 71H,75H 
          MOV 72H,76H 
          MOV 73H,77H 
          CLR ET0 
          CLR TR0 
          LCALL DISPLAY 
          MOV A,50H 
          CJNE A,#00H,CM 
          MOV 70H,#00H 
          MOV 71H,#00H 
          MOV 72H,#00H 
          MOV 73H,#00H 
          MOV A,66H 
          CJNE A,#1H,COUNT 
          MOV 74H,#00H 
          MOV 75H,#00H 
          MOV 76H,#00H 
          MOV 77H,#00H 
          MOV 66H ,#00H 
          LCALL DISPLAY 
          AJMP COUNT 
        CM:AJMP CT 
        CLR0:CLR A 
             MOV @R0,A 
             DEC R0 
             MOV @R0,A 
             RET 
        AUTO:CLR P3.4 
	     LCALL DL50MS 
             SETB P3.4 
             RET 
        ADD1:MOV A,@R0 
             DEC R0 
             SWAP A 
             ORL A,@R0 
             ADD A,#01H 
             DA A 
             MOV R3,A 
             ANL A,#0FH 
             MOV @R0,A 
             MOV A,R3 
             INC R0 
             SWAP A 
             ANL A,#0FH 
             MOV @R0,A 
             RET 
    INTT0:PUSH ACC 
          PUSH PSW 
          CLR ET0 
          CLR TR0 
          DJNZ R4,OUT 
          DJNZ 68H,OUT 
          MOV 50H,#1  ;计数停止单元 
          CLR P3.4 
          LCALL DL1S 
          LCALL DL1S 
          LCALL DL1S 
          LCALL DL1S 
          LCALL DL1S 
          SETB P3.4 
    OUT:  MOV TL0,#0CH 
          MOV TH0,#4CH 
          SETB ET0 
          SETB TR0 
          POP PSW 
          POP ACC 
          RETI 
    INTT1:PUSH ACC 
          PUSH PSW 
          LCALL AUTO 
          LCALL DISPLAY 
          MOV 50H,#00H 
 
 
       MS:MOV 25H,#0EH;A 
          MOV 26H,#0DH;B 
          MOV 27H,#0BH ;C 
          MOV 28H,#07H ;D正转 
          MOV 29H,#00H;A 
          MOV 20H,#0EH ;反转 
          MOV 21H,#07H 
          MOV 22H,#0BH 
          MOV 23H,#0DH 
          MOV 24H,#00H 
          MOV 52H,#00H 
          MOV 53H,#00H 
       CB:JNB P1.2,CR1 
          JNB P1.1,CR2 
          JNB P1.0,ML 
          LCALL DISPLAY 
          AJMP CB 
       CR1:MOV A,52H 
           CJNE A,#9H,MT 
           MOV 52H,#00 
           MOV 70H,52H 
           LCALL DISPLAY 
           LCALL AUTO 
           AJMP CB 
        MT:INC 52H 
           LCALL AUTO 
           MOV 70H,52H 
           LCALL DISPLAY 
           AJMP CB 
       CR2:MOV A,53H 
           CJNE A,#9H,MN 
           MOV 53H,#0 
           MOV 72H,#1 
           MOV 71H,53H 
           LCALL DISPLAY 
           LCALL AUTO 
           AJMP CB 
        MN:INC 53H 
           LCALL AUTO 
           MOV 71H,53H 
           LCALL DISPLAY 
           AJMP CB 
        ML:LCALL AUTO 
           MOV A,53H 
 
           RL A 
           MOV R2,A 
           RL A 
           RL A 
           ADDC A,R2 
           ADDC A,52H 
           MOV 80H,A 
           MOV A,72H 
 
           RL A 
           MOV R2,A 
           RL A 
           RL A 
           ADDC A,R2 
           ADDC A,80H 
           MOV R4,A 
           MOV A,33H 
          CJNE A,77H,EMM 
          MOV A,32H 
          CJNE A,76H,EMM 
          MOV A,31H 
          CJNE A,75H,EMM 
          MOV A,30H 
          CJNE A,74H,EMM 
          AJMP EN 
       EMM:JC FZ 
          AJMP ZZ 
       FZ:SETB 7DH 
          AJMP QC 
       ZZ:CLR 7DH 
       QC: CLR C 
           MOV C,7DH 
           JC ROTE 
           MOV R0,#20H 
           AJMP LOOP 
       ROTE:MOV R0,#25H 
       LOOP:MOV A,@R0 
            SWAP A 
            MOV P1,A 
            SETB P1.0 
            SETB P1.1 
            SETB P1.2 
            SETB P1.3 
            ACALL DL5MS 
            INC R0 
            MOV A,#00H 
            ORL A,@R0 
            JZ TPL 
       LOOP1:DJNZ R4,LOOP 
      TPL:MOV A,R0 
          CLR C 
          SUBB A,#04H 
          MOV R0,A 
          AJMP LOOP1 
     EN:LCALL DISPLAY 
            MOV 66H,#1 
            POP  PSW 
            POP ACC 
            RETI 
    DL1MS:MOV R6,#14H 
      DL1:MOV R7,#19H 
      DL2:DJNZ R7,DL2 
          DJNZ R6,DL1 
          RET 
 
  DL20MS:MOV 62H,#2 
      DL3:LCALL  DL1MS 
          LCALL  DISPLAY 
          DJNZ 62H,DL3 
          RET 
  DL50MS:MOV 69H,#30 
    DL8: LCALL DISPLAY 
        DJNZ 69H,DL8 
        RET 
  DL100MS:MOV 63H,#5 
      DL4:LCALL  DL20MS 
          DJNZ 63H,DL3 
          RET 
   DL02S:MOV 64H,#10 
     DL5:LCALL  DL20MS 
          DJNZ 64H,DL4 
          RET 
   DL05S:MOV 65H,#25 
     DL6:LCALL  DL20MS 
          DJNZ 65H,DL6 
          RET 
    DL5MS: MOV 54H,#5 
       DL7:LCALL DL1MS 
           DJNZ 54H,DL7 
           RET 
   DL1S:LCALL DL05S 
        LCALL DL05S 
         RET 
DISPLAY:MOV A,51H 
        CJNE A,#00H,PLAY2 
   PLAY1:MOV R1,#33H 
         MOV R5,#0EFH 
         AJMP PLAY 
   PLAY2:MOV R1,#73H 
         MOV R5,#0EFH 
 PLAY:   MOV A,R5 
        MOV P2,A 
        MOV A,@R1 
        MOV DPTR,#TAB 
        MOVC A,@A+DPTR 
        MOV P0,A 
        LCALL DL1MS 
        DEC R1 
        MOV A,R5 
        JNB ACC.7,ENDOUT 
        RL A 
        MOV R5,A 
        AJMP PLAY 
ENDOUT: SETB P2.7 
        RET 
     TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H 
 
END