inter2-0.asm

来自「20多个proteus仿真的例子」· 汇编 代码 · 共 57 行

ASM
57
字号
	ORG	 00H
	JMP	 MAIN
	ORG 	03H		;INT0中断子程序起始地址
	JMP 	EXT0		;中断子程序
	ORG 	13H		;INT1中断子程序起始地址
	JMP 	EXT1		;中断子程序
	ORG	 30H
MAIN:	MOV	IE,#10000101B	;INT0,INT1中断使能
	MOV	IP,#00000010B	;INT1中断优先
	MOV	TCON,#00000001B	;INTO为下降沿触发
	MOV	SP,#70H		;设定堆栈指针
	MOV	R2,#00		;设置记数初值
	CLR	P1.7		;
;--------------------------------------------------
LOOP:	MOV	A,R2		;读取十进制记数值
	MOV	P2,A		;显示
	JMP	LOOP		;循环
EXT0:	PUSH	ACC		;压入堆栈
	PUSH	PSW		;
	MOV	A,R2		;
	ADD	A,#01H		;计数指针加1
	DA	A		;做十进制调整
	MOV	R2,A		;存入R2
	MOV	P2,A		;
;	CALL	DELAY1		;延时
	POP	PSW		;出栈
	POP	ACC		;
	RETI			;中断返回
;-----------------------------------------------
EXT1:	PUSH	ACC		;压入堆栈
	PUSH	PSW		;
	SETB	P1.7		;
	CALL	DELAY2		;延时
	CLR	P1.7		;
	POP	PSW		;出栈
	POP	ACC		;
	RETI			;中断返回

;-----------------------------------------------
DELAY1:	MOV	R5,#200		;延时程序
D11:	MOV	R6,#100		;
D21:	MOV	R7,#248		;
	DJNZ	R7,$		;
	DJNZ	R6,D21		;
	DJNZ	R5,D11		;
	RET
;------------------------------------------------
DELAY2:	MOV	R5,#200		;延时程序
D12:	MOV	R6,#200		;
D22:	MOV	R7,#248		;
	DJNZ	R7,$		;
	DJNZ	R6,D22		;
	DJNZ	R5,D12		;
	RET
	END	

⌨️ 快捷键说明

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