找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机的8路抢答器设计

[复制链接]
跳转到指定楼层
楼主
ORG   0000H
     JMP   BEGIN
     ORG 0030H
TABLE:      ; 共阴极数码管显示代码表
          DB    3FH,06H,5BH,4FH,66H ;12345
          DB    6DH,7DH,07H,7FH     ;6789
DELAY:  MOV   R5,#20
LOOP4:  MOV   R6,#50H        ;延时20X20ms
LOOP5:  MOV   R7,#100
        DJNZ  R7,$
        DJNZ  R6,LOOP5
        DJNZ  R5,LOOP4
        RET
;---------------------------------------
BEGIN:  MOV   P2,#0FFH      ;P2口置高电平,准备接收信号
        MOV   R4,#0
        MOV   A,R4          ;R4位标志值送A寄存器
AGAIN:  MOV   DPTR,#TABLE
        MOVC  A,@A+DPTR
        MOV   P1,A
LOOP1:  MOV   A,P3          ; 接收p3口的抢答信号
        CPL   A
        JZ    LOOP1
LOOP2:  RRC   A        ;有人抢答信号则逐次移动判断哪一位抢答
        INC   R4
        JNC   LOOP2
;********************
        MOV   A,R4
        MOVC  A,@A+DPTR  ;找到相应位显示代码
        MOV   P1,A
LEDDIS:
         MOV A,#0FFH
         CLR C
LEDDIS1:
         RLC A
         DJNZ R4,LEDDIS1
         MOV P0,A
LOOP3:  JNB P2.2,BEGIN ;若主持人按下复位信号键,则转向主程序
        CPL   P2.0       ;若没按复位信号键,则通过p2.2口给出高低信号驱动蜂鸣器
        LCALL DELAY      ;调用延时子程序
        SJMP  LOOP3      ;p2.2口反复间隔0.4s变化,驱动蜂鸣器
        END  

50da81cb39dbb6fde5fef4e70924ab18962b374d.jpg (43.15 KB, 下载次数: 54)

原理图

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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