ORG 000H
KS: JB P3.5,$; 測按鍵
ACALL DELAY; 按鍵延時去抖動
JB P3.5,KS;再次測按鍵
JNB P3.5,$; 按鍵松開否
ACALL DELAY;
MOV A,P1; 讀取P口值
ANL A,#001H;取P1.0位
JNZ MD; 測試P1.0口非0否,非零跳至MD點燈
SETB P1.0; 是0關燈
ACALL DELAY2; 延時200毫秒再測按鍵
SJMP KS
MD: CLR P1.0
ACALL DELAY2; 延時200毫秒再測按鍵
DELAY: MOV R1,#2
LOOP: MOV R2,#255
DJNZ R2,$
DJNZ R1,LOOP
RET
DELAY2: MOV R3,#2
LOOP3: MOV R4,#36
LOOP2: MOV R5,#255
DJNZ R5,$
DJNZ R4,LOOP2
DJNZ R3,LOOP3
RET
END
|