单片机课程设计(最终版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
天津机电职业技术学院《单片机原理及应用》课程设计
专业电气自动化
班级09级电气自动化(二)班
姓名刘瑞
学号200912056
2011年6月
目录
摘要及关键词 (1)
一、方案设计与论证 (2)
二、设计思路 (3)
三、总体设计 (3)
3.1功能介绍 (7)
3.2抢答器的工作原理 (4)
四、单元设计 (5)
4.1硬件模块 (6)
4.2各模块方案选择 (6)
五、系统软件设计 (9)
5.1主程序系统结构图 (9)
5.2程序流程图 (10)
5.3系统程序 (11)
5.4调试过程(Proteus仿真调试) (22)
六、心得体会 (25)
七、参考文献 (25)
附:设计总图 (26)
单片机控制抢答器
摘要
抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低。作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。
本设计是以四路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT89C52
单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。
【关键词】抢答器单片机独立式键盘proteus LED数码显示器
一、方案设计与论证
方案一:系统各部分采用中小规模集成数字电路,用机械开关按钮作为控制开关,完成抢答输入信号的触发。该方案的特点是中小规模集成电路应用技术成熟,性能可靠,能方便地完成选手抢答的基本功能,但是由于系统功能要求较高,所以电路连接集成电路相对较多,而且过于复杂,并且制作过程工序比较烦琐,使用不太方便。
方案二:该系统采用51系列单片机AT89C52作为
控制核心,该系统可以完成运算控制、信号识别以及
显示功能的实现。由于用了单片机,使其技术比较成
熟,应用起来方便、简单并且单片机周围的辅助电路
也比较少,便于控制和实现。整个系统具有极其灵活
的可编程性,能方便地对系统进行功能的扩张和更
改。MCS-51单片机特点如下:
<1>可靠性好:单片机按照工业控制要求设计,
抵抗工业噪声干扰优于一般的CPU,程序指令和数
据都可以写在ROM里,许多信号通道都在同一芯
片,因此可靠性高,易扩充。
<2>单片机有一般电脑所必须的器件,如三态双
向总线,串并行的输入及输出引脚,可扩充为各种规
模的微电脑系统。
<3>控制功能强:单片机指令除了输入输出指
令,逻辑判断指令外还有更丰富的条件分支跳跃指
令。
方案比较及其选用依据,显然方案二比方案一简
单的多,不但从性能上优于方案一,而且在使用上及
其功能的实现上都较方案一简洁,并且由于单片机具有优越的高集成电路性,使其工作速度更快、效率更高。另外89C52单片机采用12MHz的晶振,提高了信号的测量精度,并且使该系统可以通过软件改进来扩张功能。而方案一采用了中小规模集成电路,有其复杂
的电路性能,从而可能会使信号的输入输出产生延时及不必要的误差。依此依据选择方案二比较适合。
二、设计思路
系统设计主要包括硬件和软件两大部分,依据控制系统的工作原理和技术性能,将硬件和软件分开设计。硬件设计部分包括电路原理图、合理选择元器件、绘制线路图,然后对硬件进行调试、测试,以达到设计要求。软件设计部分,首先在总体设计中完成系统总框图和各模块的功能设计,拟定详细的工作计划;然后进行具体设计,包括各模块的流程图,选择合适的编程语言和工具,进行代码设计等;最后是对软件进行调试、测试,达到所需功能要求。
在系统设计中设计方法的选用是系统设计能否成功的关键。硬件电路是采用结构化系统设计方法,该方法保证设计电路的标准化、模块化。硬件电路的设计最重要的选择用于控制的单片机,并确定与之配套的外围芯片,使所设计的系统既经济又高性能。硬件电路设计还包括输入输出接口设计,画出详细电路图,标出芯片的型号、器件参数值,根据电路图在仿真机上进行调试,发现设计不当及时修改,最终达到设计目的。软件设计的方法与开发环境的选取有着直接的关系,本系统由于是采用51系列单片机,使用汇编语言进行开发。此编程工具相比汇编语言具有结构化、适用范围大、可移植性好等特点。本系统软件设计采用模块化系统设计方法,先编写各个功能模块子程序,然后进行组合与调整,经过调试后,达到设计功能要求。
三、总体设计
3.1功能介绍
1)如果想调节抢答时间或答题时间,按"抢答时间调节"键或"答题时间调节"键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下"加1s"键,如果想减一秒按一下"-1s"键,时间LED上会显示改变后的时间,调整范围为0s~99s,0s时再减1s
会跳到99,99s时再加1s会变到0s。
2)主持人按"抢答开始"键,会有提示音,并立刻进入抢答倒计时(预设15s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设10s抢答时间),