四路抢答器 微机原理课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
四路抢答器 微机原理课程设计

中北大学 微机原理与汇编语言 课程设计说明书? ? 学生姓名 ? 学 号 学 院 电子与计算机科学技术学院? 专 业 软件工程? 题 目 竞赛抢答器 小组成员 ? 指导教师: ? 2009 年 12月 需求分析 (一)功能说明 比赛开始,在主持人按下开始键后,选手才可以开始抢答,否则违规。若选手抢答成功,绿色二极管发光提示,LED显示选手号码并开始倒计时(此时间用于选手回答问题)。若选手抢答违规(主持人未按下开始键),LED显示违规选手号码,红色二极管发光提示,扬声器报警,并根据比赛规则扣除选手相应分数。 若系统提示某选手抢答违规,主持人仍未按下复位键,此时该号选手又按下抢答键,LED显示选手对应号码。本系统启动后,若主持人未按下开始键,此时有选手按下抢答键,系统亮红色二极管并报警。 (二)系统流程图 系统开始初始化8255。然后循环检测开始键是否按下,如果按下则循环检测抢答键。抢答键按下则显示选手编号并进入倒计时。进入倒计时后循环检测加分、减分键是否按下,按下则停止倒计时并给相应的选手加10分或减10分。如果倒计时结束之前没有按下加减分键系统则会给出警报,根据回答的内容判断是否正确,正确则加分,错误减分,此次抢答结束。 设计方案 在本实验中用8255芯片设计一个4路的竞赛抢答器,8255用来实现主持人的控制开关和不同时间信号灯的亮灭、抢答者的开关控制和只接受第一个抢答者的信号、LED数码管的显示。首先初始化8255控制字,让A口输入,B、C口输出。然后读A口,看主持人的控制开关K3是复位还是启动,如果是复位就在B口输出数据让主持人的信号灯全灭,从C口输出数据让LED数码管也灭。在返回检测主持人的控制开关。如果主持人的开关K3是启动,读A口看抢答者是否有人抢答,如果还无人抢答就继续检测。如果有人抢答从C口输出数据使绿色发光二极管发光。然后检测看那一个是首先抢答的,并储存数据和屏蔽后边的抢答者。再将A口读的数据送的B口让LED数码管显示抢答者的号码。 当1-4号选手抢答键按下后并在LED上显示,进入20S倒计时答题阶段,若未完成则出现警告提示,答题内容如有效则加分,内容无效则扣分。 硬件电路设计如下: 图2 硬件电路图 详细设计 实验连线 1)8255的端口A(PA0-PA7)和开关K0-K7相连。 2)8255的端口B(PB0-PB7)通过驱动连接到LED的a~h各段。 3)8255的端口C分别和发光二极管和扬声器连接。 图3 实验线路 (二)连线说明 1)8255的A口作为输入端口和开关K0-K7相连,K3是主持人的控制开关,设置抢答指示电路和启动/复位开关。K3提供高电平后,绿色二极管亮,表示启动一次抢答。 K4-K7来代表4个抢答按钮。当开关向上拨时,表示按下按钮,在进行抢答。 2)8255的端口C(如PB2、PB1)分别和发光二极管L3(绿)、L4(红)连接。当主持人按下开始键后, K4-K7有人抢答时,L3发亮,表示已经有人抢答。 3)8255的端口B(PB0-PB7)通过驱动连接到LED的a~h各段。用来在LED上显示首先抢答者的编号、相应的分数和倒计时。 (三)程序代码 DATA SEGMENT TAB DB 3FH,06H,5BH,66H,6DH,7DH,07H,7FH,6FH TABLE1 DB 6FH,7FH,07H,7DH,6DH,66H,4FH,5BH,06H,3FH TABLE2 DB 06H,3FH BZ DB 00H CURRNUM DB 0 SCORE DW 0,100,100,100,100 STATE DB 0,0,0,0 BIAOZHI DB 3FH DATA ENDS CODE SEGMENT AUUSME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL ;初始化8255 OUT 63H,AL BEGIN: CALL DISPLAY ;调用显示程序,让其显示state中内容 IN AL,60H ;扫描端口A的开关键内容 TEST AL,0FFH ;检测是否有键按下 JZ BEGIN ;如无键按下,则循环扫

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档