full3.asm

来自「程序及仿真工程文件程序及仿真工程文件程序及仿真工程文件」· 汇编 代码 · 共 30 行

ASM
30
字号
	ORG	00H
	JMP	START
	ORG	23H		;
	JMP	UART		;串口中断服务程序
;--------------------------------
START:	MOV	SP,#60H		;设定堆栈
	MOV	SCON,#50H	;设置串口工作在模式1
	MOV	TMOD,#20H	;定时器1工作在模式2
	MOV	TH1,#0E6H	;设定波特率1200波特
	SETB	TR1		;启动定时器1
	MOV	IE,#10010000B	;中断使能
	MOV	30H,#0FFH	;设定拨码开关的初值
SCAN0:	MOV	A,P1		;读入P1口的值
	CJNE	A,30H,KEYIN	;判断值是否有变化,有变化则跳转至KEYIN
	JMP	SCAN0		;重新扫描
KEYIN:	MOV	30H,A		;保存新值
	MOV	SBUF,A		;串口输出
WAIT:	JBC	TI,SCAN0	;判断是否发送完毕?发送完毕则跳转至SCAN0
	JMP	WAIT		;
UART:	PUSH	ACC		;压栈
	PUSH	PSW		;
	JBC	RI,L2		;是否接收中断?
	JMP	RETURN		;
L2:	MOV	A,SBUF		;将SBUF的值输入
	MOV	P2,A		;输出到P2口
RETURN:	POP	PSW		;出栈
	POP	ACC		;
	RETI
	END

⌨️ 快捷键说明

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