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

📄 elec_clock.asm

📁 显示电子时钟
💻 ASM
字号:
org 00h
sjmp start
org 03h
ajmp INT_int0
org 13h
ajmp INT_int1
org 0bh
ajmp int_t0
org 30h
start:  mov sp,#70h
	mov tmod,#01h		;工作模式
	mov tl0,#0b0h		;定时初值
	mov th0,#3ch		;
 	mov b,#20
	mov r3,#0	;中断次数空置量	
	mov 30h,#00h		;开辟空间 分别保存时 分 秒
	mov 31h,#00h		
	mov 32h,#00h
	mov ie,#87h
	mov tcon,#5h
	clr tr0			;开定时器
aa:	acall display		;调用显示子程序
	sjmp aa

display:
	mov dptr,#table
again:	mov r0,#30h
	mov r2,#0feh
next:	sjmp next1
next2:	mov p2,r2
	mov p1,#40h
	acall delay
	mov a,r2
	rl a
	mov r2,a

next1:	mov a,@r0
	swap a
	anl a,#0fh
	movc a,@a+dptr
	mov p2,r2
	mov p1,a
	acall delay
	mov a,r2
	rl a
	mov r2,a
	mov a,@r0
	anl a,#0fh
	movc a,@a+dptr
	mov p2,r2
	mov p1,a
	acall delay
	mov a,r2
	rl a
	mov r2,a
	
	inc r0
	cjne r0,#33h,next2
	ajmp again
	ret


int_t0: push psw
	push acc
	mov tl0,#0b0h		
	mov th0,#3ch		
	djnz b,exit		
	mov b,#20		
	mov a,32h
	add a,#1
	da a
	mov 32h,a
	cjne a,#60h,exit
	mov 32h,#00h
	mov a,31h
	add a,#1
	da a
	mov 31h,a
	cjne a,#60h,exit
	mov 31h,#00h
	mov a,30h
	add a,#1
	da a
	mov 30h,a
	cjne a,#24h,exit
	mov 30h,#00h
exit:	pop acc
	pop psw
	reti

INT_int0: 
	
	mov a,r3
	add a,#1
	mov r3,a

	cjne r3,#1,kaishi
	mov 30h,#00h		;开辟空间 分别保存时 分 秒
	mov 31h,#00h		
	mov 32h,#00h
	setb tr0
	sjmp return
kaishi: cjne r3,#2,ks
	clr tr0
	sjmp return
ks:	mov 30h,#00h		;开辟空间 分别保存时 分 秒
	mov 31h,#00h		
	mov 32h,#00h
	mov r3,#0
return:	
	reti

	
	
	INT_int1:
	


	reti


delay:  mov r6,#10	;延时为4毫秒
del:	mov r7,100
	djnz r7,$
	djnz r6,del
	ret  
table: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
	
end

⌨️ 快捷键说明

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