⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key扫描 逐行扫描法.asm

📁 51单片机矩阵键盘扫描扫描之逐行扫描法.asm程序
💻 ASM
字号:
        ORG   0000H
        SJMP  START
START:  MOV   SP,#60H
;*********P1.7~P1.4为列线的4~1
;*********P1.3~P1.0为行线的4~1
KEYSCAN:MOV   R2,#00H    ;用于存放键值
        MOV   P1,#0FH
        MOV   A,P1
        ANL   A,#0FH
        CJNE  A,#0FH,SCAN
        SJMP  KEYSCAN
SCAN:   ACALL DEL10MS
        MOV   P1,A
        ANL   A,#0FH
        CJNE  A,#0FH,KEY
        SJMP  KEYSCAN
KEY:    MOV   R3,#0EFH   ;扫描行初值
        MOV   R4,#00H    ;扫描次数初值
        MOV   A,R3
L1:     MOV   P1,A
        MOV   A,P1
        JB    ACC.0,L2
        MOV   A,#00H
        AJMP  KEYREAD
L2:     JB    ACC.1,L3
        MOV   A,#04H
        AJMP  KEYREAD
l3:     JB    ACC.2,L4
        MOV   A,#08H
        AJMP  KEYREAD
L4:     JB    ACC.3,NEXT
        MOV   A,#0CH
        AJMP  KEYREAD
NEXT:   INC   R4
        MOV   A,R3
        RL    A
        MOV   R3,A
        CJNE  R4,#04H,L1
        AJMP  KEYSCAN
KEYREAD:ADD   A,R4
        MOV   R2,A      ;扫描所得到的键值存于R2中
        AJMP  KEYSCAN
;**********************10MS      
DEL10MS:MOV   R7,#50
DEL11:  MOV   R6,#100
DEL10:  DJNZ  R6,DEL10
        DJNZ  R7,DEL11
        RET
        
        END                       

⌨️ 快捷键说明

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