基于单片机STC89C52RC的八路抢答器课程设计报告75092282.doc
-
资源ID:2183050
资源大小:712.02KB
全文页数:19页
- 资源格式: DOC
下载积分:4元
快捷下载
会员登录下载
微信登录下载
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
基于单片机STC89C52RC的八路抢答器课程设计报告75092282.doc
信息与电子工程学院信息与电子工程学院 课程设计报告课程设计报告 课课 程程单片机技术应用单片机技术应用 设计题目设计题目基于单片机基于单片机 STC89C52RC 的八路抢答器的八路抢答器 专专 业业 应用电子技术应用电子技术 班班 级级 11级级4班班 姓姓 名名学学 号号分工分工成成 绩绩 软件部分软件部分 成成 员员 硬件部分硬件部分 指导老师指导老师 答辩日期答辩日期 2013-6-21 I 目目 录录 一、课程设计概述一、课程设计概述.- 1 - 1.1 课程设计背景- 1 - 1.2 课程设计内容- 1 - 1.3 课程设计技术指标- 1 - 二、方案的选择及确定二、方案的选择及确定.- 1 - 2.1 方案一:集成数字电路.- 1 - 2.2 方案二:单片机.- 2 - 2.3 方案分析比较:- 2 - 三、三、硬件设计硬件设计.- 2 - 3.1 系统硬件设计- 3 - 3.2 复位电路的设计- 3 - 3.3 时钟电路设计- 3 - 3.4 显示电路设计- 4 - 3.5 按键电路设计- 5 - 3.6 报警电路设计- 6 - 3.7 电源模块设计- 6 - 四、系统软件设计四、系统软件设计.- 7 - 4.1 系统的功能流程- 7 - 4.2 主程序流程图- 7 - 五、系统调试过程五、系统调试过程.- 8 - 5.1 软件调试- 8 - 5.2 硬件调试- 10 - 六、总结六、总结.- 11 - 七、遇到的问题及解决方法七、遇到的问题及解决方法.- 11 - 八、参考文献八、参考文献.- 12 - 九、附录九、附录.- 12 - 9.1 仪器与设备- 12 - 9.2 元器件清单- 12 - II 9.3 原理图- 13 - 9.4 PCB 图 .- 14 - 9.5 实物图- 14 - 9.6 操作说明书- 15 - 基于单片机的八路抢答器 - 1 - 一、课程设计概述一、课程设计概述 1.1 课程设计背景课程设计背景 抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频 率较低,且有的要么制作复杂,要么可靠性低。作为一个单位,如果专门购一台抢答器 虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢 答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了该抢答器。 1.2 课程设计内容课程设计内容 此电路是由 STC89C52RC 单片机为主控核心,具有在线编程功能。本次设计抢答器 电路具有 13 个按键,其中 S1S8 为八路的抢答按键,S9 为“开始”键,S10 为“判断错”键, S11 为“调整”键,S12 为“加”键,S13 为“减”键。可通过数码管来显示抢答者编号、抢答时间 以及回答时间等各种功能为一体的抢答器。 1.3 课程设计技术指标课程设计技术指标 本课程设计指标: 1)抢答器供八位选手抢答; 2)具有开始、复位、判断错、调整、加、减功能; 3)判断错的次数:2 次; 4)初始设置的抢答时间:20S; 5)初始设置的回答时间:60S; 6)可调整时间:099S; 7)倒计时时间:最后 10S。 二、方案的选择及确定二、方案的选择及确定 2.1 方案一方案一:集成数字电路集成数字电路 系统各部分采用中小规模集成数字电路,用机械开关按钮作为控制开关,完成抢答 输入信号的触发。该方案的特点是中小规模集成电路应用技术成熟,性能可靠,能方便 地完成选手抢答的基本功能,但是由于系统功能要求较高,所以电路连接集成电路相对 较多,而且过于复杂,并且制作过程工序比较烦琐,使用不太方便。 黎明职业大学信息与电子工程学院大学生课程设计 - 2 - 2.2 方案二方案二:单片机单片机 该系统采用 51 系列单片机 STC89C52RC 作为控制核心,该系统可以完成运算控制、 信号识别以及显示功能的实现。由于用了单片机,使其技术比较成熟,应用起来方便、 简单并且单片机周围的辅助电路也比较少,便于控制和实现。整个系统具有极其灵活的 可编程性,能方便地对系统进行功能的扩张和更改。MCS-51 单片机特点如下: 可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的 CPU,程 序指令和数据都可以写在 ROM 里,许多信号通道都在同一芯片,因此可靠性高,易扩充。 单片机有一般电脑所必须的器件,如三态双向总线,串并行的输入及输出引脚,可 扩充为各种规模的微电脑系统。 控制功能强:单片机指令除了输入输出指令,逻辑判断指令外还有更丰富的条件分 支跳跃指令。 2.3 方案分析比较:方案分析比较: 方案二比方案一简单的多,不但从性能上优于方案一,而且在使用上及其功能的实 现上都较方案一简洁,并且由于单片机具有优越的高集成电路性,使其工作速度更快、 效率更高。另外 STC89C52RC 单片机采用 12MHz 的晶振,提高了信号的测量精度,并且 使该系统可以通过软件改进扩张功能。而方案一采用了中小规模集成电路,有其复杂的 电路性能,从而可能会使信号的输入输出产生延时及不必要的误差。所以,选择方案二 比较适合。 图 1 整体框图 抢答按扭优先编码电路锁存器译码电路译码显示 主持人控制开关控制电路报警电路 秒脉冲产生电路定时电路译码电路显示电路 基于单片机的八路抢答器 - 3 - 三、三、硬件设计硬件设计 本设计介绍了用单片机 STC89C52RC 及外围接口电路实现的抢答系统,当电路处于 正常工作状态下,抢答操作完成后,能通过数码管直观地显示抢答成功的选手号码。并 分别从硬件和软件两方面对设计思想进行了阐述。硬件设计包括:单片机系统,振荡电 路、显示电路、按键电路、报警电路、电源电路等。 3.1 系统硬件设计系统硬件设计 根据系统框图和设计方案本文硬件电路主要分为三个部分:第一部分为 STC89C52RC、复位电路和时钟电路组成的最小系统模块;第二部分为由数码管和三极管 组成的显示模块;第三部分为按键和上拉电阻组成的输入模块;第四部分为蜂鸣器、三 极管和电阻组成蜂鸣器模块;第五部分为点动开关、电阻和发光二极管组成的电源模块。 图 2 系统框图 3.2 复位电路的设计复位电路的设计 复位电路是由按钮、10k 的电阻和 22uF 的电容组成的。 外部中断和内部中断并存,单片机硬件复位端,只要持续 4 个机器周期的高电平即 可实现复位,硬件复位后的各状态可知寄存器以及存储器的值都恢复到了初始值,因为 本设计中功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软 件复位,软件复位实际上就是当程序执行完之后,将程序通过一条跳转指令让它完成复 位。复位电路如图 3 所示。 3.3 时钟电路时钟电路设计设计 时钟电路由 2 个 22pF 的电容和晶振组成。 单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只需要 报警电路 数码管显示电源部分 按键输入 黎明职业大学信息与电子工程学院大学生课程设计 - 4 - 外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工 作速度。电路中两个电容 C1,C2 的作用有两个:一是帮助振荡器起振;二是对振荡器的 频率进行微调。时钟电路如图 4 所示。 图 3 复位电路 图 4 时钟电路 3.4 显示电路显示电路设计设计 数码显示部分是由 1 个四位一体的数码管、4 个 5.1K 电阻和 4 个 8550 三极管组成。 显示模块主要是显示抢答的时间,组别号码等。显示功能与硬件关系极大,当硬件 固定后,如何在不引起操作者误解的前提下提供尽可能丰富的信息,全靠软件来解决。 在这里我们使用的是四位一体的共阳数码管显示图中有一个排阻,连接在 P0 口上, 用作 P0 口的上拉电阻,保证 P0 口没有数据输出时候处于高电平状态。通过查表法,将 其在数码管上显示出来,其中 P0 口为字型码输入端,P1 口低 4 位为字选段输入端。在这 里我们通过查表将字型码送给四位一体数码管显示的数字。如图 5 所示。 基于单片机的八路抢答器 - 5 - 图 5 显示电路 3.5 按键电路按键电路设计设计 按键电路部分采用 13 个 10K 的电阻和 13 个按键组成,分别是 S1S13。 13 个按键采用并接方式。在主持人按下开始键后,8 位选手可以开始抢答,抢答器 有效时,通过端口电平的变化来判断谁是最先抢答的;如果在按开始键之前抢答,则抢 答无效,可按复位键来重置,重置后在按下开始键之后进行抢答。 抢答器输入信号由 8 个小按键控制,当有按键按下时,就产生了有效的输入信号, 本文使用了上拉电阻把输入信号先嵌位在高电平。当有按键按下时便使与这个按键相连 的引脚变为低电平,产生一个低电平的输入信号。如图 6 所示。 黎明职业大学信息与电子工程学院大学生课程设计 - 6 - 图 6 按键电路 3.6 报警电路报警电路设计设计 本设计中蜂鸣器电路由蜂鸣器、8550 三极管、5.1K 电阻组成。 蜂鸣器是利用三极管处于开关状态时,具有导通与截止两种工作状态,相当于电键 的闭合与断开,在三极管导通时,蜂鸣器工作,三极管截止时,蜂鸣器不工作。三极管 采用 8050 NPN 型晶体管,将其基极接于 P1.5 口,当其为高电平时三极管导通,当其为 低电平时三极管截止。 图 7 报警电路 3.7 电源模块设计电源模块设计 电源模块由:点动按钮、1K 电阻和发光二极管组成。当按下 SB6 时 LED 发光电路得 电。 基于单片机的八路抢答器 - 7 - 图 8 电源模块 四、系统软件设计四、系统软件设计 系统软件设计利用 Keil 进行 C 语言编写。在系统的软件设计中采用了模块化设计, 将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。 4.1 系统的功能流程系统的功能流程 根据本文的电路求出要显示不同路数的数字所需要的编码,将它们存在一个表中待 用时取出。8 位抢答输入信号由 8 个按键控制,程序一直判断是否有按键按下,若没有按 键按下则循环判断;直到有按键按下后,立即把通过按键输入的信号储存起来,然后对 8 路输入信号进行逐位扫描判断,最后根据扫描结果转入查表程序取数并通过数码管显示 输出结果。 4.2 主程序流程图主程序流程图 程序设置,开始按键:S9;判断错误:S10;调整时间:S11;加:S12;减:S13。如 图 9 所示。 黎明职业大学信息与电子工程学院大学生课程设计 - 8 - 开始 初始化 进入调整? 设置抢答或回答 时间 抢答倒计时 有人抢答? 显示抢答通道编号,答 题计时开始 判断错? 时间=9? 蜂鸣器发声,数码 管后两位闪 回答时间到 关闭蜂鸣器,数码 管停止闪 Y N Y N Y N Y N A A B B 按下开始键 图 9 程序流程图 五、系统调试五、系统调试过程过程 5.1 软件调试软件调试 实验的程序通过 Keil 软件编译,产生HEX 文件如图 10 所示: 基于单片机的八路抢答器 - 9 - 图 10 编译输出结果 通过 Pruteus 进行仿真,按下“开始”后,数码管开始倒计时,仿真结果如图 11 所示: 图 11 Proteus 仿真 当有选手按下按钮时,数码管显示选手号码并开始倒计时,如图 12 所示: 图 12 6 号选手按下 黎明职业大学信息与电子工程学院大学生课程设计 - 10 - 通过仿真结果证实,该设计可行。该设计方案通过 51 系列单片机的 P0 端口为段选 输出,动态扫描 LED 显示管,显示时间。并通过接在 P3.0-P3.4 口的按键开关控制开始、 判断错、调整、加、减功能。P2 口接选手按键,控制抢答。 5.2 硬件调试硬件调试 接通电源,实板上数码管显示初始状态,如图 13 所示: 图 13 接通电源状态 当按下“开始”键时,数码管开始倒计时,如图 14 所示: 图 14 开始倒计时 当有选手按下按钮时,数码管显示选手号码并开始倒计时,如图 15 所示: 图 15 有选手按下 当按下“调整”按键,数码管显示如图 16 所示: 基于单片机的八路抢答器 - 11 - 图 16 调整状态 当按下“加 1”按键,数码管显示如图 17 所示: 图 17 调整加 1 按下“减 1”按键,数码管显示如图 18 所示: 图 18 调整减 1 通过实板调试,基本实现所需要的功能。 六、总结六、总结 本设计基于单片机技术、中断原理、定时器/控制器技术、制作电路板设计了一种八 路抢答器,该抢答器包括硬件构成、软件设计,通过八个小按键控制抢答器的输入信号, 当有按键按下时,就产生了有效的输入信号,输入给单片机,经过单片机控制处理后, 将信号传给数码管,通过数码管显示抢答的成功。通过调试,结果大部分符合抢答器设 计要求。完成课题目标 90%。其中,选手按键 6 有时不能使用。 七、七、遇到的问题及解决方法遇到的问题及解决方法 遇到的问题: 1)在 Proteus 软件仿真无法调整抢答/回答时间。 2)实板做好后调试时数码管上 b 段不能显示,选手按键 5 无法抢答。 解决方法: 1)修改程序。 2)换了块芯片。 黎明职业大学信息与电子工程学院大学生课程设计 - 12 - 八、参考文献八、参考文献 1程相波,卫安军.基于 MCS-51 单片机的八路抢答器设计方法研究J.北京工业职 业技术学院学报,2007, (02). 2李锦荣,基于单片机技术的电子抢答器系统J.黑龙江科技信息,2007, (04). 3杨黎,基于 C 语言的单片机应用技术与 Proteus 仿真.中南大学出版社, 2012, (08). 九、附录九、附录 9.1 仪器与设备仪器与设备 工具、设备和耗材数量 电脑1 台 Keil uVison41 套 Proteus 7.5 软件1 套 51 单片机下载线和 USB 线1 根 晶振 12M1 只 单片机实训板1 块 AT89C511 片 稳压电源1 台 9.2 元器件清单元器件清单 元件名称型号、规格数量价格 排阻103J1 排1.4 元/个 电阻1k9 个0.1 元/个 电阻5.1k5 个0.1 元/个 电阻10k14 个0.1 元/个 按钮开关12B14 个0.5 元/个 晶振12MHZ1 只0.25 元/个 电解电容 22uF1 个0.34 元/个 瓷片电容22pF2 个0.05 元/个 三极管PNP85505 个0.01 元/个 数码管JM-S05641A-B1 个1.35 元/个 芯片STC89C52RC1 片4.5 元/个 电源线40cm1 条3 元/条 自锁开关5.8*5.81 个0.25 元/个 LEDRED1 个0.04 元/个 蜂鸣器12mm*9.5mm1 个0.58 元/个 基于单片机的八路抢答器 - 13 - 9.3 原理图原理图 图 19 原理图 黎明职业大学信息与电子工程学院大学生课程设计 - 14 - 9.4 PCB 图图 图 20 PCB 图 9.5 实物图实物图 图 21 实物图 基于单片机的八路抢答器 - 15 - 9.6 操作说明书操作说明书 1)开机,按电源开关,数码管显示。 2)按开始按键 当主持人宣布抢答开始时,马上按一下“开始“键,屏幕显示所设定的抢答倒计时时间 并开始倒计时 3)按抢答按键 如果有参赛组抢答,按一下抢答按钮,数码管立即显示该组的组别号。说明该组抢 答成功。 4)判断错 有参赛组抢答成功后,如果参赛者回答错误,就可以按下判断错的按键。进行下一 次抢答。 5)提前取消倒计时 无论是“抢答“还是“答题“的倒计时时间,需要提前退出,只要按一下“复位“键,即可 返回到“初始状态“。 6)调节抢答时间或答题时间 按“调整键”再按“加一”键或“减一”键进入调节状态,此时会显示现在设定的抢答时间 或回答时间值,如想加一秒按一下“加 1s“键,如果想减一秒按一下“减 1s”键,时间数码 管上会显示改变后的时间,调整范围为 099s, 0s 时再减 1s 会跳到 99,99s 时再加 1s 会变到 0s。