⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 时钟.asm

📁 常用子程序-61个-4.2M.rar
💻 ASM
字号:
	ORG 0000H
	AJMP MAIN
	ORG 001BH
	AJMP SERVE

MAIN:        MOV TMOD,#10H
	MOV 20H,#20
	MOV R6,#0FFH
	MOV R4,#00H
	CLR A
	MOV 30H,#00H 
	MOV 31H,#00H
	MOV 32H,#00H
	MOV 33H,A
	SETB ET1
	MOV TH1,#4CH
	MOV TL1,#00H
	SETB TR1
	SETB EX0
                  SETB EA
	MOV DPTR,#0FF82H
	MOV A,#0D1H
	MOVX @DPTR,A
WAIT:        MOVX A,@DPTR
  	JB ACC.7,WAIT 
	MOV A,#00H
	MOVX @DPTR,A
	MOV A,#2AH
	MOVX @DPTR,A 
HERE:    	LCALL  DELED
	LCALL  DISP
	SJMP HERE


	

SERVE:PUSH PSW
	PUSH ACC
	LCALL DELED
	LCALL DISP
	MOV TH1,#4CH
	MOV TL1,#00H
	DJNZ 20H,RETURN 
	MOV 20H,#20
	MOV A,#01H
	ADD A,33H
	DA A
	MOV 33H,A
	XRL A,#60H 
	JNZ RETURN
	MOV 33H,#00H
	MOV A,#01H
	ADD A,32H
	DA A
	MOV 32H,A 
	XRL A,#60H 
	JNZ RETURN
	MOV 32H,#00H
	MOV A,#01H
	ADD A,31H
	DA A
	MOV 31H,A
	XRL A,#24H 
	JNZ RETURN
	MOV 31H,#00H
	MOV A,#01H
	ADD A,30H
	DA A
	MOV 30H,A
	XRL A,#31H 
	JNZ RETURN
	MOV 30H,#00H
RETURN: LCALL GETKEY
	CJNE A,#0FFH,RETURN1
	LCALL PD
RETURN1: POP ACC
      	 POP PSW
     	  RETI

GETKEY: PUSH DPH 
                 PUSH DPL
                 PUSH PSW
	MOV DPTR,#0FF82H
	MOVX A,@DPTR
	ANL A,#07H
	JNZ GETVAL
	MOV A,#00H
	SJMP NKBHIT
GETVAL: MOV A,#40H
	MOVX @DPTR,A
	MOV DPTR,#0FF80H
	MOVX A,@DPTR 
	ANL A,#0FH
	MOV B,A
	MOV A,#0FFH
NKBHIT: POP PSW
	POP DPL
	POP DPH
 	RET
      

DELED:   MOV A,33H
	ANL A,#0F0H
	SWAP A
	MOV 71H,A
	MOV A,33H
	ANL A,#0FH
	MOV 70H,A
	
	MOV A,32H
	ANL A,#0F0H
	SWAP A
	MOV 73H,A
	MOV A,32H
	ANL A,#0FH
	MOV 72H,A
	
	MOV A,31H
	ANL A,#0F0H
	SWAP A
	MOV 75H,A
	MOV A,31H
	ANL A,#0FH
	MOV 74H,A
	
	MOV A,30H
	ANL A,#0F0H
	SWAP A
	MOV 77H,A
	MOV A,30H
	ANL A,#0FH
	MOV 76H,A
	RET

DISP:	MOV DPTR,#0FF82H
	MOV A,#90H
	MOVX @DPTR,A
	MOV R0,#70H
	MOV R7,#08H
	MOV A,R0
	ADD A,R4
	MOV R0,A
	MOV DPTR,#0FF81H
DL0:	MOV A,@R0
	ADD A,#1DH
	MOVC A,@A+PC
	PUSH ACC
	MOV A,R7
	CJNE A,#08H,DL1
	AJMP NEXT
DL1:	JB ACC.0,NEXT
	POP ACC
	SETB ACC.7
	AJMP DIR1
NEXT:	POP ACC
DIR1:	MOVX @DPTR,A 
	INC R0
	CJNE R0,#78H,TP
	SJMP TP1
TP:	DJNZ R7,DL0
TP1:	RET
TAB:	DB 3FH,06H,5BH,4FH,66H
	DB 6DH,7DH,07H,7FH,6FH
	

PD:	MOV A,B
	CJNE A,#0CH,KEY_G
	LCALL CLEAR_T
	KEY_G: CJNE A,#0DH,KEY_A
	LCALL STOP_T
KEY_A: CJNE A,#0AH,KEY_B
F1:	LCALL  GETKEY
	CJNE A,#0FFH,F1
                  MOV A,B
      
        CJNE A,#03H,PTF1
   PTF1:JC NEXT2
        MOV 30H,#00H
        AJMP RETUN
  NEXT2:SWAP A   
        MOV 30H,A
F2:        LCALL  GETKEY
           CJNE A,#0FFH,F2
           MOV A,B
           CJNE A,#0AH,PTF2
   PTF2:JC NEXT3
        MOV 30H,#00H
        AJMP RETUN        
   NEXT3:ORL 30H,A
        AJMP RETUN

 KEY_B:CJNE A,#0BH,KEY_E
F3:      LCALL  GETKEY
       CJNE A,#0FFH,F3
	MOV A,B
        CJNE A,#02H,PTF3
   PTF3:JC NEXT4
        MOV 31H,#00H
        AJMP RETUN
  NEXT4:SWAP A   
        MOV 31H,A
 F4:     LCALL  GETKEY
      CJNE A,#0FFH,F4
	MOV A,B
        CJNE A,#04H,PTF4
   PTF4:JC NEXT5
        MOV 31H,#00H
        AJMP RETUN
   NEXT5:ORL 31H,A
        AJMP RETUN     
        
   KEY_E:CJNE A,#0EH,KEY_F
F5:     LCALL  GETKEY
           CJNE A,#0FFH,F5
           MOV A,B
	CJNE A,#06H,PTF5
PTF5:	JC NEXT6
	MOV 32H,#00H
	AJMP RETUN
 NEXT6:       SWAP A   
        MOV 32H,A
F6:     LCALL  GETKEY
       CJNE A,#0FFH,F6
  	MOV A,B
       CJNE A,#0AH,PTF7
PTF7:JC NEXT7
	MOV 32H,#00H
	AJMP RETUN
NEXT7:    ORL 32H,A
      
      AJMP RETUN
 
   KEY_F:CJNE A,#0FH,RETUN
F7:      LCALL  GETKEY
       CJNE A,#0FFH,F7
	MOV A,B
	SWAP A   
        MOV 33H,A
F8:       LCALL  GETKEY
	CJNE A,#0FFH,F8
       MOV A,B
        ORL 33H,A
        MOV A,33H  
        CJNE A,#60H,PTF8
   PTF8:JC RETUN
        MOV 33H,#00H
        
  RETUN:RET


CLEAR_T:	
	CLR TR1
	MOV 30H,#00H 
	MOV 31H,#00H 
	MOV 32H,#00H 
	MOV 33H,#00H 
	MOV R6,#0FFH
	LCALL DELED  
	LCALL DISP
	SETB TR1
	RET

STOP_T:		
	CLR TR1
	RET


	END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -