MOV P1,#000101011B ;第三拍
CALL TIMER
CALL TESTSTOP
MOV P1,#000100111B ;第四拍
CALL TIMER
CALL TESTSTOP
CALL TESTKEY
SJMP MAIN
;***************************检测是否有按键按下************************
TESTKEY:
SETB FAST
SETB SLOW
NEXT1:
JNB FAST,YES2
NEXT2:
JNB SLOW,YES3
SJMP RETURN ;都没有键按下,则返回
YES2:
MOV A,TEMP ;FAST 按下,若此时 temp 等于 9,则保持速度不变,若小于则
加 1
CJNE A,#9,CANFAST
DEC A
CANFAST:
INC A
MOV TEMP,A
SJMP RETURN
YES3:
MOV A,TEMP
CJNE A,#1,CANSLOW
INC A
CANSLOW:
DEC A
MOV TEMP,A