打印

那位大哥能给看看这个按键程序对吗?

[复制链接]
1373|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kuangfeng1|  楼主 | 2008-5-16 17:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
;按键处理
KEY1:    SETB P3.0
    JB P3.0,KEY2
    MOV R6,#10
    LCALL DELY
    JB P3.0,KEY2
    SETB P3.5
    MOV R6,#200
    LCALL DELY
    CLR P3.5
    DEC 4AH
    MOV A,4AH
    JNZ KEY2
    MOV 4AH,09H
KEY2:    SETB P3.1
    JB P3.1,KEY3
    MOV R6,#10
    LCALL DELY
    JB P3.1,KEY3
    SETB P3.5
    MOV R6,#200
    LCALL DELY
    CLR P3.5
    MOV A,45H
    CPL A
    MOV 45H,A
KEY3:    SETB P3.4
    JB P3.4,LIGHT
    MOV R6,#10
    LCALL DELY
    JB P3.4,LIGHT
    SETB P3.5
    MOV R6,#200
    LCALL DELY
    CLR P3.5
    MOV A,46H
    CPL A
    MOV 46H,A

相关帖子

沙发
5880527| | 2008-5-16 22:53 | 只看该作者

个人感觉不是很好

第一句SETB就是画蛇添足(有位网友前两天才用到这个词,借用一下,不好意思了),延时消抖也是照搬书本上的,隔壁有个帖子里说了NOP啊DJNZ是陋习,我对这样的延时也是深恶痛绝,楼主那个DELY里面一定是很多DJNZ,键盘扫描在一个程序里所占的时间是极其少的,所以你可以用大循环或定时中断前后两次检测到状态稳定为准,实在很重要的键可以用更多次数。还有很多时候键盘是检测沿变化的(我编的程序里绝大部分都是这样的),楼主这个程序实现不了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

4

帖子

1

粉丝