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

📄 uart.asm

📁 汇编串口通信程序
💻 ASM
字号:
#include"SST89x5x4.h"

	ORG 0000H
	AJMP MAIN
	ORG 0030H
MAIN:	CLR ES
	CLR TR2
	MOV PCON,#00H
	MOV T2CON,#30H
	MOV SCON,#50H
	
	MOV RCAP2H,#0FFH
	MOV RCAP2L,#0F7H
	MOV TH2,#0FFH
	MOV TL2,#0F7H
	
	MOV IP,#10H
	SETB REN
	CLR TI
	CLR RI
	SETB TR2
	SETB ES

	ACALL STI51

	MOV R0,#41H
	MOV R7,#00H
CHAR:	ACALL SENDCH
	AJMP CHAR

INTCH:	AJMP CRI1		;串口数据接受处理
CRI1:	JNB RI,CRI1
	MOV A,SBUF
	CLR RI
	CJNE A,#0AAH,CRI1
CRI2:	JNB RI,CRI2
	MOV A,SBUF
	CLR RI
	CJNE A,#55H,CRI1
CRI3:	JNB RI,CRI3
	MOV A,SBUF
	CLR RI
	CJNE A,#0AAH,CRI1
	MOV R1,#01H		
LOOP:	RET

SENDCH:	ACALL INTCH		;判断是否发送字符
	CJNE R1,#01H,OUT
	ACALL GETCH
OUT:	AJMP SENDCH
	
GETCH:	MOV R6,#00H		;发送反馈信息	
BACK1:	CJNE R6,#37,TAB1
	AJMP OVER1
TAB1:	MOV DPTR,#REC
	MOV A,R6
	MOVC A,@A+DPTR
	MOV SBUF,A
CTI:	JNB TI,CTI
	CLR TI
	INC R6
	AJMP BACK1
OVER1:	RET		

STI51:	MOV R6,#00H		;发送初始化信息
BACK2:	CJNE R6,#27,TAB2
	AJMP OVER2
TAB2:	MOV DPTR,#SEND
	MOV A,R6
	MOVC A,@A+DPTR
	MOV SBUF,A
CCTI:	JNB TI,CCTI
	CLR TI
	INC R6
	AJMP BACK2
OVER2:	RET


REC:	DB 50H, 72H, 6FH,74H , 6FH, 63H ,6FH, 6CH, 3AH, 20H	;反馈语句ASCII码表
	DB 30H, 78H, 41H, 41H, 2CH, 20H ,30H, 78H, 35H, 35H
	DB 2CH, 20H, 30H, 78H, 41H, 41H ,20H, 52H, 65H, 63H
	DB 65H, 69H, 76H, 65H, 64H, 0DH ,0AH

SEND:	DB 53H, 54H, 49H, 35H, 31H, 20H ,44H, 65H ,76H, 20H	;初始语句ASCII码表
	DB 42H, 6FH, 61H, 72H, 64H, 2EH ,20H, 48H ,55H, 53H
	DB 54H, 2DH, 53H, 54H, 49H, 0DH ,0AH

END

⌨️ 快捷键说明

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