多开关控制多灯
硬件连接:
汇编代码:
ORG 10
MOV P1,#0 ;P1口初始化
MOV P0,#0FFH ;P0口初始化
START:
JB P0.0,LOP0 ;若P0.0位为1(开关接VCC)则跳转至子程序LOP0
SETB P1.0 ;否则P1.0拉高,LED1灭
SJMP NEXT0 ;出口,跳转至子程序NEXT0
LOP0:
CLR P1.0 ;P1.0位置0,LED1亮
NEXT0:
JB P0.1,LOP1 ;P0.1位为1(开关接VCC)则跳往子程序LOP1
SETB P1.1 ;否则P1.1位拉高,LED灭
SJMP NEXT1 ;出口,NEXT1
LOP1:
CLR P1.1 ;P1.1位置0,LED2亮
NEXT1:
JB P0.2,LOP2
SETB P1.2
SJMP NEXT2
LOP2:
CLR P1.2
NEXT2:
JB P0.3,LOP3
SETB P1.3
SJMP NEXT3
LOP3:
CLR P1.3
NEXT3:
SJMP START ;程序循环
RET
END
仿真结果: