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

📄 stop.asm

📁 多个仿真例子
💻 ASM
字号:
;这是一个利用串行口扩展并行I/O口的例子
;系统的晶振频率12MHz,利用74LS165和CD4094扩展出两个8位并行口。
;编程读入开关状态,存入片内RAM的40H单元,并同时输出到LED上显示出来。
KEY	EQU	40H
	ORG	0
	MOV	SCON,#0H	;串口方式0,允许接收数据
RX0:	CLR	P1.0		;并行输入开关状态
	SETB	P1.0		;允许串行移位
	SETB	REN		;允许串行接收数据
	JNB	RI,$		;等待一帧数据接收结束
	CLR	REN		;停止接收
	CLR	RI
	MOV	A,SBUF		;读开关状态
	MOV	KEY,A		;存开关状态
TX0:	LCALL	CONVERT		;将开关状态转换为数码管的段码
	clr	p1.2
	setb	P1.1		;关显示
	MOV	SBUF,A		;开关状态送数码管显示
	JNB	TI,$		;等待一帧数据发送结束
	CLR	TI
	clr	P1.1		;选通CD4094
	setb	p1.2
	SJMP	RX0
CONVERT:JB	ACC.0,C0	;S0按下了?否,则转
	MOV	A,#3FH		;"0"的显示段码
	SJMP	C_END
C0:	JB	ACC.1,C1
	MOV	A,#06H		;"1"的显示段码
	SJMP	C_END
C1:	JB	ACC.2,C2
	MOV	A,#5BH		;"2"的显示段码
	SJMP	C_END
C2:	JB	ACC.3,C3
	MOV	A,#4FH		;"3"的显示段码
	SJMP	C_END
C3:	JB	ACC.4,C4
	MOV	A,#66H		;"4"的显示段码
	SJMP	C_END	
C4:	JB	ACC.5,C5
	MOV	A,#6DH		;"5"的显示段码
	SJMP	C_END
C5:	JB	ACC.6,C6
	MOV	A,#7DH		;"6"的显示段码
	SJMP	C_END
C6:	JB	ACC.7,C_7
	MOV	A,#27H		;"7"的显示段码
	SJMP	C_END
C_7:	MOV	A,#0
C_END:	RET	
	END

⌨️ 快捷键说明

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