导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[guest]键盘程序请教?



No.27463
作者:guest
邮件:guest@guest.com
ID:6
登陆:16560次
文章数:7648篇
最后登陆IP:219.68.9.43
最后登陆:2005/5/20 1:37:44
注册:2003/3/10 16:21:00
财富:35062
发帖时间:2003/4/25 22:26:15
发贴者IP:61.164.7.37
标题:guest:键盘程序请教?
摘要:No.27463键盘程序请教? 现在要在P1口接一八位拔动开关,要求相应位拔则延时在原(10秒)的基础上增加或减少延时时间,P1。0——P1。3拔上则为增加时间,P1。4——P1。7拔上为减少时间,思路为有拔上则相应位放一个十进制数1,然后高四和低四比较,是增加的多还是减少的多,再和10比较,最后结果放R5,子程序是一个1秒的延时程序,延时是看R5里是多少,决定循环多少次。自己编的程序如下,但有很多错,小弟也是第一次学,请高手指教,谢谢
KEY:  MOV  P1, #0FFH       ;置输入状态
      MOV  A,  P1          ;读
      CPL  A               ;取反
      ANL  A,  #0FH        ;屏蔽高四位
      JZ   KL
      LCALL  DELAY         ;调用延时去抖动
      JB  P1.0, KEY0       ;有键按下则执行相应命令
K1:   JB  P1.1, KEY1
K2:   JB  P1.2, KEY2
K3:   JB  P1.3, KEY3
     AJMP  KL
KEY0:MOV  30H, #01         ;有键按下相应位加1
     AJMP K1
KEY1:MOV  31H, #01
     AJMP K2
KEY2:MOV  32H, #01
     AJMP K3
KEY3:MOV  33H, #01
     MOV  A,   #00H
     MOV  A,   #30H
     ADD  A,   #31H
     ADD  A,   #32H
     ADD  A,   #33H
     MOV R4,   A           ;加数放R4
     AJMP KL
KL:  MOV  A,   P1
     CPL  A
     SWAP A                ;高低四位交换
     ANL  A,   ......

>>返回讨论的主题


  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:31毫秒 最大:3781毫秒 查询8次