找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1584|回复: 0
打印 上一主题 下一主题
收起左侧

使用单片机汇编语言实现按键识别程序与Proteus仿真图

[复制链接]
跳转到指定楼层
楼主
实现的效果如下

单片机源程序如下:
  1. KEY        DATA        30H
  2. LED0        BIT        P2^0
  3. LED1        BIT        P2^1
  4. LED2        BIT        P2^2
  5. LED3        BIT        P2^3
  6. LED4        BIT        P2^4
  7. LED5        BIT        P2^5
  8. LED6        BIT        P2^6
  9. LED7        BIT        P2^7


  10.         ORG        0000H
  11.               AJMP        START                           
  12.               ORG        0030H
  13. START:        
  14.         ACALL        KEYSCAN
  15.         MOV        A,KEY

  16.         CJNE        A,#1,M1
  17.         CLR        LED1
  18.         AJMP        START

  19. M1:        CJNE        A,#2,M2
  20.         CLR        LED2
  21.         AJMP        START

  22. M2:        CJNE        A,#3,M3
  23.         CLR        LED3
  24.         AJMP        START

  25. M3:        CJNE        A,#4,M4
  26.         CLR        LED4
  27.         AJMP        START

  28. M4:        MOV        P2,#0FFH
  29.         AJMP        START




  30. KEYSCAN:ORL        P3,#0FH                ;读前先写1
  31.         MOV        A,P3                ;读取扫描码
  32.         ORL        A,#0F0H                ;屏蔽高4位
  33.         
  34.         CJNE        A,#0FEH,KS1
  35.         MOV        KEY,#1
  36.         SJMP        KSRE
  37. KS1:        CJNE        A,#0FDH,KS2
  38.         MOV        KEY,#2
  39.         SJMP        KSRE
  40. KS2:        CJNE        A,#0FBH,KS3
  41.         MOV        KEY,#3
  42.         SJMP        KSRE
  43. KS3:        CJNE        A,#0F7H,KS4
  44.         MOV        KEY,#4
  45.         SJMP        KSRE
  46. KS4:        MOV        KEY,#0FFH

  47. KSRE:        RET


  48. DELAY:        MOV    R5,#2                  
  49. DEL1:         MOV    R4,#200
  50. DEL2:         MOV    R3,#250
  51.               DJNZ   R3,[        DISCUZ_CODE_1        ]nbsp;               //500us
  52.               DJNZ   R4,DEL2                //200x500us=100ms
  53.               DJNZ   R5,DEL1
  54.               RET

  55. TAB:        DB        0FFH,0FEH,0FCH,0F8H,0F0H,0E1H,0C3H,87H,0FH,1FH,3FH,7FH

  56.         END
复制代码

Proteus7.5版本的仿真图下载(dsn文件只能用这个版本打开): 03_2 独立按键.zip (88.09 KB, 下载次数: 8)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表