高级键盘检测.asm

来自「检验键盘是否可以正常工作。并 有喇叭和显示通知用户。」· 汇编 代码 · 共 70 行

ASM
70
字号
QZ:     MOV     P0,#0
        LCALL   SEL8
        MOV     P1,#0FFH
        LCALL   DELAY
        MOV     A,P1
        LCALL   SEL7

        CPL     A
        MOV     R0,A
        JZ      QZ
KEY1:   CJNE    A,#01H,KEY2
        CALL    PRE1
KEY2:   CJNE    A,#02H,KEY3
        CALL    PRE2
KEY3:   CJNE    A,#04H,KEY4
        CALL    PRE3
KEY4:   CJNE    A,#08,QZ1
        CALL    PRE4
QZ1:    CLR     P2.3
        LCALL   DELAY
        CPL     P2.3
        LCALL   DELAY
        DJNZ    R0,QZ1

        AJMP    QZ

SEL7:   CLR     P2.7
        SETB    P2.6
        SETB    P2.5
        RET
SEL8:   SETB    P2.7
        SETB    P2.6
        SETB    P2.5
        RET
DELAY:  MOV     R6,#200    ;延时100MS
DEL:    MOV     R7,#0FFH
        DJNZ    R7,$
        DJNZ    R6,DEL
        RET
PRE1:   SETB    P2.5
        CLR     P2.6
        CLR     P2.7
        MOV     P0,#0CH
        LCALL   DELAY
        LCALL   DELAY
        RET
PRE2:   SETB    P2.5
        CLR     P2.6
        CLR     P2.7
        MOV     P0,#0B6H
        LCALL   DELAY
        LCALL   DELAY
        RET
PRE3:   SETB    P2.5
        CLR     P2.6
        CLR     P2.7
        MOV     P0,#09EH
        LCALL   DELAY
        LCALL   DELAY
        RET
PRE4:   SETB    P2.5
        CLR     P2.6
        CLR     P2.7
        MOV     P0,#0CCH
        LCALL   DELAY
        LCALL   DELAY
        RET

        END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?