霓虹灯

功能:查表程序设计,实现LED灯的控制
硬件:P0口以总线形式接16个LED

硬件连接:
MCS51霓虹灯_Proteus仿真
程序:

ORG		0
	START:
	MOV		R0,#0FFH   		;工作寄存器提取数组首地址,原始数据存放在R0中
	LOOP:
	INC		R0
	CJNE	R0,#25,LOP		;R0中值不为25则跳转至LOP
	MOV		R0,#0			;否则(R0=25),将R0置0,循环
	LOP:
	ACALL	SHOW
	LCALL	DELAY
	LCALL	DELAY
	JMP		LOOP
	SHOW:
	MOV		A,R0
	MOV		DPTR,#LED		;数组首地址传递给指针DPTR
	MOVC	A,@A+DPTR		;查找数组元素,传递至累加器A中
	MOV		P0,A			;通过P1口传递至发光二极管显示
	RET
	DELAY:
	MOV		R7,#250
	D1:
	MOV		R6,#250
	D2:
	DJNZ	R6,D2
	DJNZ	R7,D1
	RET
	LED:
	DB	00H,0FFH,00H,0FFH
	DB	0FEH,0FBH,0EFH,0DFH,0BFH,7FH,0BFH,0DFH,0EFH
	DB	0F7H,0FBH,0FDH,0F7H,0FCH,0F8H,0E0H,0C0H,80H,00H	
	END

仿真结果效果:
MCS51霓虹灯_Proteus仿真
MCS51霓虹灯_Proteus仿真
MCS51霓虹灯_Proteus仿真

相关文章: