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

📄 005b.asm

📁 单片机开发板实验
💻 ASM
字号:
/***************************************************************************
****************************************************************************
*           description:
*           双机通信,乙机接收程序

***************************************************************************
***************************************************************************/

    	MOV	TMOD,	#20H
	MOV	TH1,	#0F3H
	MOV	TL1,	#0F3H
	SETB	TR1
	MOV	SCON,	#50H			;串行通信方式1,允许接收
RPT:	MOV	R1,	#20H			;置接收缓冲区首址
L0:	JBC	RI,	L1
	AJMP	L0
L1:	MOV	A,	SBUF			;接收数据长度
	MOV	R6,	A
	MOV	R5,	#00H			;累加和寄存器清0
WTD:	JBC	RI,	L2
	AJMP	WTD
L2:	MOV	A,	SBUF			;接收数据
	MOV	@R0,	A
	INC	R0
	ADD	A,	R5
	MOV	R5,	A			;计算累加效验和
	DJNZ	R6,	WTD			;未接收完,继续
L5:	JBC	RI,	L4			;接收对方发来的效验和
	AJMP	L5
L4:	MOV	A,	SBUF
	XRL	A,	R5			;接收的效验码和计算的效验码是											
						;否相同
	MOV	R5,	#00H
	JZ		L6			;同,转L6
	MOV	SBUF,	#0FFH			;不同,出错发送0FFH
L8:	JBC	TI,	L7
	AJMP	L8				;等待0FFH发送完
L7:	AJMP	RPT				;重新接收
L6:	MOV	SBUF,	#00H			;正确,发送00H
L9:	JBC	TI,	L10
	AJMP	L9				;等待00H发送完
L10:	RET
	END

⌨️ 快捷键说明

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