找回密码
 立即注册

QQ登录

只需一步,快速开始

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

利用8255扩展单片机的并口,实现两个开关对两位数码管的显示控制

[复制链接]
跳转到指定楼层
楼主
ID:425966 发表于 2019-6-10 12:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
利用8255扩展单片机的并口,实现2个开关对2位数码管的显示控制,要求当开关K1按下时数码管显示内容加1,K2按下时数码管显示内容减1
要求设计硬件电路、编写并调试程序,在PROTEUS中仿真实现。提交电路图、程序清单和仿真图。

  • 电路图如下:

(2)程序如下:

  1. ORG 0000H

  2. LJMP MAIN

  3. ORG 0003H

  4. LJMP KEY1

  5. ORG 0013H

  6. LJMP KEY2

  7. ORG 0030H

  8. MAIN:MOV IE,#0FFH

  9. MOV TCON,#0AH

  10. MOV A,#80H

  11. MOV DPTR,#0FFFFH

  12. MOVX @DPTR,A

  13. STAR:MOV R2,#24

  14. MOV A,R2

  15. MOV B,#10

  16. DIV AB

  17. ACALL LOOP

  18. LCALL DELAY

  19. MOV A,#02H

  20. LCALL LOOP1

  21. MOV A,B

  22. ACALL LOOP

  23. LCALL DELAY

  24. MOV A,#01H

  25. LCALL LOOP1

  26. LJMP STAR

  27. LOOP:MOV DPTR,#TAB

  28. MOVC A,@A+DPTR

  29. MOV DPTR,#0FFFCH

  30. MOVX @DPTR,A

  31. RET

  32. LOOP1:MOV DPTR,#0FFFDH

  33. MOVX @DPTR,A

  34. RET

  35. KEY1:INC R2

  36. RETI

  37. KEY2:DEC R2

  38. RETI

  39. DELAY:MOV R6,#49

  40. aa:NOP

  41. NOP

  42. DJNZ R3,aa

  43. NOP

  44. NOP

  45. NOP

  46. RET

  47. TAB:DB 0C0H,0F9H,0A4H,0B0H,99H

  48.     DB 92H,82H,0F8H,80H,90H

  49.               SJMP $

  50.               END
复制代码

  • 仿真图如下:


完整的Word格式文档51黑下载地址:

第五次大作业.docx (59.05 KB, 下载次数: 19)






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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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