单片机四人抢答器课程设计.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文档。上传文档
查看更多
四人抢答器模拟实验报告 一、目的与要求 目的: (1)培养学生综合利用MCS-51单片机的软硬件知识进行程序设计的能力,解决一些实际问题。 (2)进一步加深对MCS-51单片机内部结构和程序设计方法的理解。 (3)提高学生建立程序文档、归纳总结的能力。 ?基本要求: (1)要求用MCS-51单片机知识完成程序的设计; (2)源代码程序要求必要的注释。 创新要求 在基本要求达到后,可以进行创新设计,如更加完善程序功能。 二、系统总体设计 基于MCS-51单片机的智能抢答器的设计,主要要实现以下几种功能: (1)当主持人按下他的按键时,抢答开始,LED显示器开始从0到20的定时记数。 (2)在20秒定时的时间内,如果有竞赛者要回答问题,那么按下自己的按键,此时,与该竞赛者对应的显示灯亮,并且LED显示器的计时停止。先按键的竞赛者可屏蔽其他人的抢答信号。 (3)如果在20秒定时结束后,即LED显示器显示20时,仍然没竞赛者按下按键回答问题,那么报警信号灯亮 (4)在20秒内,可以进行累加计时 三、硬件系统设计 该抢答器的设计是基于MCS-51单片机的,使用到的硬件主要有8051的P1口和P3口,LED显示器,8155芯片及单片机内部的定时器/计数器T/C。 如图示(图1): +5 VK1K2K3K4R1R2R5R3R4LED8051 +5 V K1 K2 K3 K4 R1 R2 R5 R3 R4 LED 8051 7404 7404 P1.7 P1.3 P1.2 P1.1 P1.0 P3.2 图1 使用4个开关分别代表4个选手控制号,用P1口中的P1.0,P1.1,P1.2,P1.3表示四个选手 用P1.7(X6)表示红灯,P3口中的P3.2与外来脉冲连接,控制继续计时。 3. 资源分配:在设计过程中,用到了8051的P1口和P3口,主要是/INT0和/INT1,用竞赛者的按键X0、X2、X3、X4控制/INT1。当程序运行时,启动T/C计数,用8155芯片使LED显示计;当/INT1产生有效信号时,停止T/C计数,LED计时停止。 四、程序流程图(如图2): LED记数停止,显示与之对应的选手号结 束 LED记数停止,显示与之对应的选手号 结 束 开 始 主持人按下开关? 定时20S,LED开始记数 LED显示到20了吗? 竞赛者按下开关? 报警红灯亮 N Y Y Y N N N Y 图2 五:系统软件设计 1. 主程序 主程序功能:完成单片机MCS-51的初始化操作;定时器初始化;等待定时器中断的发生;发生中断,则转入相应的中断服务程序,执行相应功能的子程序。主程序流程图如(图3): 定时器初始化LED显示程序 定时器初始化 LED显示程序 进入抢答程序 CPU开中断 图3 2. 子程序 子程序主要包括LED显示的程序,定时器/计数器T/C程序,抢答的中断服务程序。 2.1 LED显示程序 LED计数的启动受到/INT0、/INT1、T/C0、T/C1的控制。 LED显示程序的功能是: a.当/INT0产生有效信号,T/C0和T/C1启动后,LED开始显示计数(从0到20)。 b.当/ INT1产生有效信号后,使T/C0和T/C1停止工作,此时LED停止在当时的计数值。这也就是说一轮抢答结束。 LED显示程序的流程图如图(图4): 开 始 开 始 显示缓冲区始址送R0 位选端值01H送R3 (R3)送8155A口 取显示数据查七段码表, 并将查得的七段码送8155B口 延时 显示缓冲区指针R0加1 (R3)送A, 判断ACC.2为1吗? Y 返 回 N 位码左 移一位 图4 2.2 定时器/计数器T/

文档评论(0)

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

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

1亿VIP精品文档

相关文档