MCS51流水灯_查表方式1_Proteus仿真

MCS51流水灯

硬件连接:
在这里插入图片描述
程序1:

		ORG	10
START:
	MOV		P0,#0FFH
	CLR		P0.0
	LCALL	Dealy
	SETB	P0.0
	LCALL	Dealy
	CLR		P0.1
	LCALL	Dealy
	SETB	P0.1
	LCALL	Dealy
	CLR		P0.2
	LCALL	Dealy
	SETB	P0.2
	LCALL	Dealy
	CLR		P0.3
	LCALL	Dealy
	SETB	P0.3
	LCALL	Dealy
	CLR		P0.4
	LCALL	Dealy
	SETB	P0.4
	LCALL	Dealy
	CLR		P0.5
	LCALL	Dealy
	SETB	P0.5
	LCALL	Dealy
	CLR		P0.6
	LCALL	Dealy
	SETB	P0.6
	LCALL	Dealy
	CLR		P0.7
	LCALL	Dealy
	SETB	P0.7
	LCALL	Dealy
	AJMP	START
Dealy:	
	MOV		R7,#250
D1:	MOV		R6,#250
D2: DJNZ	R6,D2
	DJNZ	R7,D1
	RET
	END

程序2:

    ORG		0000H
	AJMP	MAIN
	ORG		0030H
MAIN:
	MOV		R0,#0FFH		;-1→R0
	MOV		R2,#16			;共16个数据
	MOV		DPTR,#TAB       ;将数据表起始数据放入数据指针DPTR中
LOOP:
	INC		R0				;R0+1
	MOV		A,R0
	MOVC	A,@A+DPTR 		;以累加器A作为数据表中的数组下标,将数据表中数据提取出来,并存入累加器A
SHOW:
	MOV		P0,A
	LCALL  	DELAY
	LCALL  	DELAY
	LCALL  	DELAY
	DJNZ	R2,LOOP
	AJMP	MAIN
DELAY:						;延时子程序
	MOV		R7,#250
D1:	MOV		R6,#250
D2: DJNZ	R6,D2
	DJNZ	R7,D1
	RET
TAB:
	;DB 0FEH,0FCH,0F8H,0F0H,0E0H,0CH,80H,00H,01H,03H,07H,0FH,1FH,3FH,7FH,0FFH
	DB	11111110B
	DB	11111100B
	DB	11111000B
	DB	11110000B
	DB	11100000B
	DB	11000000B
	DB	10000000B
	DB	00000000B
	DB	00000001B
	DB	00000011B
	DB	00000111B
	DB	00001111B
	DB	00011111B
	DB	00111111B
	DB	01111111B
	DB	11111111B
	END

仿真效果:
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值