c51版键盘扫描

c51版键盘扫描·

Author:100

    org 00h
        ajmp main
main:
    mov p2,#01h      ;开启第一个led显示
    mov r0,#01h
    mov r2,#00h      ;保存行数
    mov r3,#00h      ;保存列数
    mov dptr,#para
    mov p1,#0f0h     ;初始化p1,先判断行      ;开中断
first:
        jnb p1.4,h1
    jnb p1.5,h2
    jnb p1.6,h3
    jnb p1.7,h4
        inc r0
    djnz r0,first      
h1:
        mov r2,#00h
    mov p1,#0fh
    ajmp second
h2:
    mov r2,#01h   
    mov p1,#0fh   
    ajmp second
h3:
    mov r2,#02h
    mov p1,#0fh
    ajmp second
h4:
    mov r2,#03h
        mov p1,#0fh  
    ajmp second
second:
        jnb p1.0,l1
    jnb p1.1,l2
    jnb p1.2,l3
    jnb p1.3,l4
l1:
    mov r3,#01h
        ajmp count   
l2:
    mov r3,#02h
    ajmp count
l3:
    mov r3,#03h
    ajmp count
l4:
    mov r3,#04h
    ajmp count
count:
    mov b,#04h
    mov a,r2
    mul ab
    add a,r3
    mov r4,a
loop:
    inc dptr
    djnz r4,loop
    mov a,#00h
    movc a,@a+dptr
    mov p0,a
    mov r2,#00h
    mov r3,#00h
    mov dptr,#para
        ajmp main   
para:
    db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h,73h
        end

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值