;四独立按键控制四LED;
;四个独立按键对应四个独立的LED.
;当某一按键按下时对应的LED亮,当第二次按下时灭。
;四个LED只能有一个亮,初学者可以参考以下程式:
;当一直按下某一按键时对应的LED会闪动。
;---------------------------------------------------------
K1 BIT
K2 BIT
K3 BIT
K4 BIT
FLAG0 BIT ;LED0标记
FLAG1 BIT ;LED1标记
FLAG2 BIT ;LDE2标记
FLAG3 BIT ;LED3标记
K_OLD EQU 30H
K_NEW EQU 31H
;---------------------------------------------------------
ORG 0000H
JMP MAIN
ORG 0030H
;---------------------------------------------------------
MAIN:
MOV SP,#60H
MOV P1,#0FFH
MOV P0,#0FFH
MOV K_OLD,#00H
MOV 20H,#0FFH
MAIN1:
CALL K_SCAN ;键扫描
MOV A,K_NEW
CJNE A,K_OLD,MAIN2
JMP MAIN1
MAIN2:
CALL DELAY ;延时示去抖动
CALL K_SCAN ;再判断键是否按下
MOV A,K_NEW
CJNE A,K_OLD,MAIN3
JMP MAIN1
MAIN3:
JB ,LOOP1 ;K1按下
JB ,LOOP2 ;K2按下
JB ,LOOP3 ;K3按下
JB ,LOOP4 ;K4按下
JMP MAIN1
LOOP1:
JNB FLAG0,LOOP1A
MOV P0,#0FEH
MOV 20H,#0EH ;FLAG0=0
JMP MAIN1
2015精品范文;四独立按键控制四LED; 来自淘豆网m.daumloan.com转载请标明出处.