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

📄 time.asm

📁 以AT89C51为控制芯片设计时钟控制
💻 ASM
字号:
	S_SET	BIT	P1.0
	M_SET	BIT	P1.1
	H_SET	BIT	P1.2
	SECOND	EQU	30H
	MINUTE	EQU	31H
	HOUR	EQU	32H
	TCNT	EQU	34H
		ORG	00H
		SJMP	START
		ORG	0BH
		LJMP	INT_T0
	START:	MOV	DPTR,#TABLE	
		MOV 	HOUR,#0
		MOV	MINUTE,#0
		MOV	SECOND,#0
		MOV	TCNT,#0
		MOV	TMOD,#01H
		MOV	TH0,#0D8H
		MOV	TL0,#0F0H
		MOV	IE,#82H
		SETB	TR0
;**********************************************************
	A1:	LCALL	DISPLAY
		JNB	S_SET,S1
		JNB	M_SET,S2
		JNB	H_SET,S3
		LJMP	A1
	S1:	LCALL	DELAY
		JB	S_SET,A1
		INC	SECOND
		MOV	A,SECOND
		CJNE	A,#60,J0
		MOV	SECOND,#0
		LJMP	K1
	S2:	LCALL	DELAY
		JB	M_SET,A1
	K1:	INC	MINUTE
		MOV	A,MINUTE
		CJNE	A,#60,J1
		MOV	MINUTE,#0
		LJMP 	K2
	S3:	LCALL	DELAY
		JB	H_SET,A1
	K2:	INC	HOUR
		MOV	A,HOUR	
		CJNE	A,#24,J2
		MOV	HOUR,#0
		MOV	MINUTE,#0
		MOV	SECOND,#0
		LJMP	A1
;************************************************************
	J0:	JB	S_SET,A1
		LCALL	DISPLAY
		SJMP	J0
	J1:	JB	M_SET,A1
		LCALL	DISPLAY
		SJMP	J1
	J2:	JB	H_SET,A1
		LCALL	DISPLAY
		SJMP	J2
;************************************************************
	INT_T0:	MOV 	TH0,#(65536-50000)/256
		MOV 	TL0,#(65536-50000)MOD 256
		INC	TCNT
		MOV	A,TCNT
		CJNE	A,#20,RETUNE
		INC	SECOND
		MOV	TCNT,#0
		MOV	A,SECOND
		CJNE	A,#60,RETUNE
		INC	MINUTE
		MOV	SECOND,#0
		MOV	A,MINUTE
		CJNE	A,#60,RETUNE
		INC	HOUR
		MOV	MINUTE,#0
		MOV	A,HOUR
		CJNE	A,#24,RETUNE
		MOV	HOUR,#0
		MOV	MINUTE,#0
		MOV	SECOND,#0
		MOV	TCNT,#0
	RETUNE:	RETI
;************************************************************
	DISPLAY:MOV	A,SECOND
		MOV	B,#10
		DIV	AB
		CLR	P3.6
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.6
		MOV	A,B
		CLR	P3.7
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.7
		CLR	P3.5
		MOV	P0,#40H
		LCALL	DELAY
		SETB	P3.5
		MOV	A,MINUTE	
		MOV	B,#10
		DIV	AB
		CLR	P3.3
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.3
		MOV	A,B
		CLR	P3.4
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.4
		CLR	P3.2
		MOV	P0,#40H
		LCALL	DELAY
		SETB	P3.2
		MOV	A,HOUR	
		MOV	B,#10
		DIV	AB
		CLR	P3.0
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.0
		MOV	A,B
		CLR	P3.1
		MOVC	A,@A+DPTR
		MOV	P0,A
		LCALL	DELAY
		SETB	P3.1
		RET
	TABLE:	DB	3FH,06H,5BH,4FH,66H
		DB	6DH,7DH,07H,7FH,6FH
	DELAY:	MOV	R6,#10
	D1:	MOV	R7,#250
		DJNZ	R7,$
		DJNZ	R6,D1
		RET
		END		

		


⌨️ 快捷键说明

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