找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1817|回复: 1
收起左侧

8位竞赛抢答器的设计 求帮助

[复制链接]
ID:276968 发表于 2018-1-17 15:29 | 显示全部楼层 |阅读模式
(一)设计要求
设计一个8位竞赛抢答器:同时供8名选手或8个代表队比赛,分别用8个按钮S0S7表示。设置一个系统清除和抢答控制开关S,开关由主持人控制。
抢答器具有定时抢答功能(如20秒)。
当主持人启动“开始”键后,定时器进行减计时, 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。
如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00
(二)设计任务:
1. 设计一款8路的抢答器;(基本部分)
2. 设计一个系统清除和抢答控制开关(开始抢答后才允许答题者抢答),供主持人用;(基本部分)
3.  设定抢答时间限制(20S),超过时间后,该题作废;(基本部分)
4.数字LED显示当前答题者号数(基本部分) ;
5.设定答题时间(发挥部分)
6.有犯规(未按开始键就抢答的)时显示其号码(发挥部分)
7.  其他功能(发挥部分)
回复

使用道具 举报

ID:777047 发表于 2020-6-12 15:36 | 显示全部楼层
(2)程序代码 1主程序 OKEQU20H RINGEQU22H ORG0000H AJMPMAIN ORG0003H AJMPINT0SUB ORG000BH AJMPT0INT ORG0013H AJMPINT1SUB ORG001BH AJMPT1INT ORG0040H MAIN:MOVR1,#30 MOVR2,#60 MOVTMOD,#11H MOVTH0,#0F0H MOVTL0,#0FFH MOVTH1,#3CH MOVTL1,#0B0H SETBEA SETBET0 SETBET1 SETBEX0 SETBEX1 CLROK CLRRING SETBTR1 SETBTR0 2查询程序 START:MOVR5,#0BH MOVR4,#0BH MOVR3,#0BH ACALLDISPLAY JBP3.0,NEXT ACALLDELAY JBP3.0,NEXT ACALLBARK MOVA,R1 MOVR6,A SETBOK MOVR7,#01H MOVR3,#0AH AJMPCOUNT NEXT:JNBP1.0,FALSE1 JNBP1.1,FALSE2 JNBP1.2,FALSE3 JNBP1.3,FALSE4 JNBP1.4,FALSE5 JNBP1.5,FALSE6 JNBP1.6,FALSE7 JNBP1.7,FALSE8 AJMPSTART 3非法抢答处理程序 FALSE1:MOVR3,#01H AJMPERROR FALSE2:MOVR3,#02H AJMPERROR FALSE3:MOVR3,#03H AJMPERROR FALSE4:MOVR3,#04H AJMPERROR FALSE5:MOVR3,#05H AJMPERROR FALSE6:MOVR3,#06H AJMPERROR FALSE7:MOVR3,#07H AJMPERROR FALSE8:MOVR3,#08H 4抢答、回答时间调整程序 =====INT0(抢答时间R1调整程序)===== INT0SUB:MOVA,R1 MOVB,#0AH DIVAB MOVR5,A MOVR4,B MOVR3,#0AH ACALLDISPLAY JNBP3.4,INC0 JNBP3.5,DEC0 JNBP3.1,BACK0 AJMPINT0SUB INC0:MOVA,R1 CJNEA,#63H,ADD0 MOVR1,#00H ACALLDELAY1 AJMPINT0SUB ADD0:INCR1 ACALLDELAY1 AJMPINT0SUB DEC0:MOVA,R1 JZSETR1 DECR1 ACALLDELAY1 AJMPINT0SUB SETR1:MOVR1,#63H ACALLDELAY1 AJMPINT0SUB BACK0:RETI ;=====INT1(回答时间R2调整程序)===== INT1SUB:MOVA,R2 MOVB,#0AH DIVAB MOVR5,A MOVR4,B MOVR3,#0AH ACALLDISPLAY JNBP3.4,INC1 JNBP3.5,DEC1 JNBP3.1,BACK1 AJMPINT1SUB INC1:MOVA,R2 CJNEA,#63H,ADD1 MOVR2,#00H ACALLDELAY1 AJMPINT1SUB ADD1:INCR2 ACALLDELAY1 AJMPINT1SUB DEC1:MOVA,R2 JZSETR2 DECR2 ACALLDELAY1 AJMPINT1SUB SETR2:MOVR2,#63H ACALLDELAY1 AJMPINT1SUB BACK1:RETI 5倒计时程序 REPEAT:MOVA,R2 MOVR6,A CLRRING COUNT:MOVR0,#00H MOVTH1,#3CH MOVTL1,#0B0H RECOUNT:MOVA,R6 MOVB,#0AH DIVAB MOV30H,A MOV31H,B MOVR5,30H MOVR4,31H MOVA,R6 SUBBA,#07H JNCLARGER MOVA,R0 CJNEA,#0AH,FULL CLRRING AJMPCHECK FULL:CJNEA,#14H,CHECK SETBRING MOVA,R6 JZQUIT MOVR0,#00H DECR6 AJMPCHECK LARGER:MOVA,R0 CJNEA,#14H,CHECK DECR6 MOVR0,#00H CHECK:JNBP3.1,QUIT JNBOK,CHECKK AJMPNEXTT CHECKK:JNBP3.0,REPEAT NEXTT:ACALLDISPLAY JBOK,ACCOUT AJMPRECOUNT ACCOUT: MOVA,36H JNBACC.0,TRUE1 JNBACC.1,TRUE2 JNBACC.2,TRUE3 JNBACC.3,TRUE4 JNBACC.4,TRUE5 JNBACC.5,TRUE6 JNBACC.6,TZ1 JNBACC.7,TZ2 AJMPRECOUNT TZ1:JMPTRUE7 TZ2:JMPTRUE8 QUIT:CLROK CLRRING AJMPSTART 6正常抢答处理程序 TRUE1:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#01H CLROK AJMPCOUNT TRUE2:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#02H CLROK AJMPCOUNT TRUE3:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#03H CLROK AJMPCOUNT TRUE4:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#04H CLROK AJMPCOUNT TRUE5:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#05H CLROK AJMPCOUNT TRUE6:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#06H CLROK AJMPCOUNT TRUE7:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#07H CLROK AJMPCOUNT TRUE8:ACALLBARK MOVA,R2 MOVR6,A MOVR3,#08H CLROK AJMPCOUNT 7犯规抢答程序 ERROR:MOVR0,#00H MOVTH1,#3CH MOVTL1,#0B0H MOV34H,R3 HERE:MOVA,R0 CJNEA,#06H,FLASH;0.3s CLRRING MOVR3,#0AH MOVR4,#0AH MOVR5,#0AH AJMPCHECK1 FLASH:CJNEA,#0CH,CHECK1 SETBRING MOVR0,#00H MOVR3,34H MOVR5,#0BH MOVR4,#0BH AJMPCHECK1 CHECK1:JNBP3.1,QUIT1 ACALLDISPLAY AJMPHERE QUIT1:CLRRING CLROK AJMPSTART 8其他功能程序 =====显示程序===== DISPLAY:MOVDPTR,#DAT1 MOVA,R3 MOVCA,@A+DPTR MOVP2,#0feH MOVP0,A ACALLDELAY2 MOVDPTR,#DAT2 MOVA,R5 MOVCA,@A+DPTR MOVP2,#0fdH MOVP0,A ACALLDELAY2 MOVA,R4 MOVCA,@A+DPTR MOVP2,#0fbH MOVP0,A ACALLDELAY2 RET DAT1:DB00h,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh,00H,71H DAT2:DB3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh,00H,71H =====发声程序===== BARK:SETBRING ACALLDELAY1 ACALLDELAY1 CLRRING RET =====TO溢出中断(响铃程序)===== T0INT:MOVTH0,#0ECH MOVTL0,#0FFH JNBRING,OUT; CPLP3.6 OUT:RETI ;=====T1溢出中断(计时程序)===== T1INT:MOVTH1,#3CH MOVTL1,#0B0H END  
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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