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

📄 1.asm

📁 这是一个实现串口通讯的实验
💻 ASM
字号:
LINE	EQU	30H
ROW	EQU	31H
ORG	00H
START:	
        MOV	P2,#00H		;数码管显示初始化
        MOV     P0,#00H
        SETB     P3.7       
LSCAN:	MOV	P1,#0F0H	;列线置高电平,行线置低电平
L1:     JNB	P1.0,L2		;逐行扫描
        LCALL	DELAY
        JNB	P1.0,L2
        MOV	LINE,#00H	;存行号
        LJMP	RSCAN
L2:     JNB	P1.1,L3
        LCALL	DELAY
        JNB	P1.1,L3
        MOV	LINE,#01H	;存行号
        LJMP	RSCAN
L3:	JNB	P1.2,L4
	LCALL	DELAY
	JNB	P1.2,L4
	MOV	LINE,#02H	;存行号
	LJMP	RSCAN
L4:	JNB	P1.3,L1
	LCALL	DELAY
	JNB	P1.3,L1
	MOV	LINE,#03H	;存行号
RSCAN:	MOV	P1,#0FH	        ;行线列线电平互换
C1:	JNB	P1.4,C2		;逐列扫描
	MOV	ROW,#00H	;存列号
	LJMP	CALCU
C2:	JNB	P1.5,C3
	MOV	ROW,#01H	;存列号
	LJMP	CALCU
C3:	JNB	P1.6,C4
	MOV	ROW,#02H	;存列号
LJMP	CALCU
C4:	JNB	P1.7,C1
	MOV	ROW,#03H	;存列号
CALCU:	MOV	A,LINE		;根据行号和列号计算按键编码
	MOV	B,#04H
	MUL	AB
	ADD	A,ROW
        MOV     TMOD,#20H
        MOV     TH1,#0E6H
        MOV     TL1,#0E6H
        SETB    TR1
        MOV     SCON,#50H      
	MOV	SBUF,A
G0:	JBC     TI,G1
        AJMP    G0        
G1:     JBC     RI,G2
        AJMP    G1
G2:     MOV     A,SBUF
        CPL     P3.7
        JB      P3.7,S0        
        MOV     P2,A       
        ACALL   DELAY
        ACALL   DELAY
        LJMP    LSCAN
S0:     MOV     P0,A     
        ACALL   DELAY
        ACALL   DELAY
        LJMP    LSCAN        
DELAY:	MOV	R6,#80
D1:	MOV	R7,#250
	DJNZ	R7,$
	DJNZ	R6,D1
	RET
END


⌨️ 快捷键说明

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