怎样可以让问题变成限时抢购图片答?

如何问出一个,让人想抢答的问题?
如何问出一个,让人想抢答的问题?
1、学问学问,“问”字占了半壁江山。问出一个好问题,有时候比学好一项新知识更难。知名的分析方法:5WHY,通过5个一层又一层深入的问答,可以把一个复杂的问题理出一条清晰明朗的解决思路。模糊的问题,往往也意味着自己模糊未决的思路,当一个问题变得清晰而明确的时候,往往是一个问题被解决的时候。特别在一些心理咨询案例中,很多事情往往当局者迷,被咨询者往往能够从咨询师的问题引导下一步步发现根源。提问,是获取准确信息更快的方式,不管是从他人那里,还是从自己身上。准确而有用的信息,往往不是在那些时代前沿的人的脑子里,就是在自己混乱而一团糟的大脑里。想要获取这些有用信息的前提是,你要懂得如何问出一个好的问题。提问至少有三个功能:快速拿到准确的信息,增加多元的观点、优化你的决策。尤其是社会化网络盛行的今天,每个人给对方的耐心变得越来越少,提问的能力自然变得越来越重要。社会化学习是现代多变社会提高自己的唯一方式,而提问是社会化学习里面最重要 的一项能力。那么如何才能提出一个让人愿意去回答的好问题呢?第一心态要端正,第二问题本身要恰当,第三提问技巧也要恰当。2、首先,心态决定了提问的姿态,同时也决定了一种行为模式。小孩子爱提问题,我们常常会称呼他们为问题少年。爱学习的问题少年姿态,在高手的世界里,是一种让人无法拒绝的姿态。高手间的谈话,往往都是大家穷尽多年智慧,总和很多实践,全力秀智力肌肉,生怕被鄙视的场合。这个场合里那个不争得失,认真听、好好问,看似有点傻的问题少年姿态,往往是最聪明的姿态。他不仅能提出精妙的问题,还能用谦虚的小学生心态,认真的记录你的回答。而与之相对的骄傲少年心态,就很难学到东西了,比如那些突然问你对于一个问题的看法,就等着你说完,然后开始滔滔不绝了自己说个十几分钟的人。第二,一个让人怦然心动的问题本身,就能让人主动去思考,然后给出有价值的答案。每一个聪明的大脑,在看到一个好问题的时候,都会从中获益良多,就像之前说的5WHY分析问题法,一套准备好的系列问题,会引导对方不断的深入思考,系统的整理出他自己都没有想到的地方。比如说,你决定一个人真正入门的标准是什么?什么情况夏至到一个人差不多入门了呢?除了读书,这个领域还有哪些方式可以让一个人快速成长的?还有吗?如果我已经读完了这些书,我该做些什么让自己在跳跃一步呢?对于这个行业的发展,未来五年高手们怎么看的呢?一个问题,就是引导思考的一个方向,就像一个指南针。方向对了,看到的也就对了。3、那么怎么提出一个好问题呢?当然首先做好功课是必须的,能百度谷歌知乎里面得到的,尽量不要麻烦别人。这不仅仅是一种尊重别人时间的体现,更是一种锻炼自己信息获取能力的方法。第二就是给每一个问题赋能,用清晰的描述,限定性的语言,帮助对方提供资源和决策。举个例子,问题一:在三线城市没什么发展前途,但是大城市又压力大怕适应不了,我该怎么办?问题二:在三线城市三年了觉得没什么成长,但是离家近成本低,可以近距离照顾父母,但是一线城市才是走向更好的地方,所以根据自己的行业积累,性格喜好,找了三家在北京、上海、杭州的公司,他们分别是XX/XX/XX,其中。。。。。我自己又、、、、、,你作为在这个行业多年的资深人士,你觉得我适合从哪里开始?如果是你,你会选择回答哪个?生活中事事都能打磨,事事都能聚焦,事事都有收获,就看你能否做到了,比如一个小小的问题。
本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。
百家号 最近更新:
简介: 为了壳里的生命,它可以对抗全世界!
作者最新文章QQ宝贝限时抢答,乐在惊喜
QQ宝贝又推出新的游戏咯!不要问我是什么,一起走进QQ空间,走进QQ宝贝的新游戏里看看,相信,最新推出的宝贝新游戏,限时抢答,一定不会让众喜爱QQ宝贝的玩家们失望。
限时抢答作为QQ宝贝最新推出的小游戏,要怎么玩呢?它具有哪些趣味性和挑战乐趣呢,让我们速度打开位于QQ宝贝游戏页面左上角处的限时抢答图标,一起来看看,如何做完成这个新推出的小游戏。
限时抢答游戏,规定每个宝贝在30秒的时间内完成需要回答的问题,问题由一个提干和四个答案组成,只要宝贝在规定时间内,在四个答案中,选择出最正确答案,就能获得50到100不等的多多元宝奖励!
那么,限时抢答游戏中的问题会是什么呢?走进问题,你就不难发现,其中的提问可真是五花八门,琳琅满目,如果你是上知天文下知地理的出门宝贝,那么,让你大显身手的时候到了,这是个挑战智慧的大比拼,只要你足够聪明,所有的问题都无法将你难道,那么,多多元宝将收获你的囊中。当然,如果在今天的提问环节,你答错了,也没有关系,明天还有机会等你挑战!
人最敏感的感觉是什么?如果,你在答案中选择了味觉,那么恭喜你,本轮挑战你成功了,奖励50宝币。山西山东是以什么山来分界的,如果你的答案是太行山,那么,再次恭喜你!本轮闯关你又成功了。当然,在限时抢答的小游戏里,你可能会遇到的问题远远还不止这些,上到天文,下到地理,只要你是个博学多才的人,就一定能够通过闯关,获得奖励!
QQ宝贝还有多多精彩游戏即将推出,大家期望已久的宝贝结婚系统,马上即将登陆,还有多个宝贝一起互动,水族馆宝贝与鱼儿一起畅游活动也即将精彩上场,一起加入到QQ宝贝游戏的行列里来吧!这里有无限精彩等你来玩!
QQ宝贝,今天你玩了吗?
(本文来源:网易游戏频道
网易游戏24小时评论排行
评论22148条
评论4839条
评论1993条
评论1373条
评论1287条
网易公司版权所有多路抢答器的设计与实现_甜梦文库
多路抢答器的设计与实现
陕西理工学院毕业设计多路抢答器的设计与实现[摘要] 本设计是以八路抢答为基本理念,考虑到因活动规则的改变,需设定不同时长的限时抢答、回答问题的功能。利用 STC89C52 单片机及外围接口实现的抢答系统,以及单片机的定时器/计数器定时和记 数的原理,将软、硬件有机地结合起来,使得系统能够设定不同的抢答时间和答题时间,能够正确地进行倒 计时,同时使数码管能够正确地显示时间以及选手编号。用矩阵键盘进行活动前的时间设定工作,用开关作 为选手抢答按钮输出,用蜂鸣器来发出违规报警和倒计时提醒。同时本设计系统能够实现:在活动中,只有 主持人按下开始抢答按钮后,选手的抢答才为有效,如果选手在开始抢答前抢答则为无效;抢答限定时间和 回答问题的限定时间可在 1-99s 内设定; 可以显示是哪位选手有效抢答和无效抢答; 正确按键后有声音提示; 抢答时间和回答问题时间用数码管进行倒计时显示, 满时后系统计时自动复位及主控强制复位; 有按键锁定, 在有效状态下,按键无效非法。[关键词]STC89C52 单片机LED 数码管 抢答器计时 陕西理工学院毕业设计Design and Implementation of the multi-channel ResponderTian Pengfei (Grade 07,class 084, Shaanxi University of Technology,Hanzhong 72300x,Shaanxi) tutor: Hu boThe design is based on eight Responder as the basic concept, taking into account the changes in the activity rules need to set the time length limit Responder, answer questions function. The Responder system, STC89C52 microcontroller and peripheral interface implementation and timing microcontroller timer / counter and count the principle of software, hardware organically combined, making the system able to set a different answer in time and answer time, able to correctly to the countdown, digital tube able to correctly display the time and the player number. Matrix keyboard work activities before the time set switch as players answer in the button output, use the buzzer to issue the violation alarm and countdown to remind. The same time, the design system can be achieved: At the event, only moderators began to answer in the button is pressed, the players of the answer in order to effectively, if the players before the start Responder R a limited time to answer in a limited time and answer questions 1-99 can show which players answer in an effective a the right b answer in time and answer questions time countdown display with digital tube, the full system time is automatically reset and mas keys are locked in an effective state, the button is not illegal.[Abstract][Key words]Single-chipLED digital tubeResponder timing 陕西理工学院毕业设计1 引言 ................................................ 11.1 1.2 1.3 1.4 课题背景 ............................................1 目的及意义 ..........................................1 抢答器的目前现状 ....................................1 进度安排 ............................................22 方案论证 ............................................ 32.1 多路抢答器方案设计系统 ..............................3 2.1.1 基于数字电路多路抢答器的设计 ...................3 2.1.2 基于单片机的多路智能抢答器 .....................3 2.2 方案论证及选择 ......................................43.硬件电路的设计 ..................................... 53.1 硬件电路设计思路 ....................................5 3.2 总体设计框图 ........................................5 3.3 单片机系统 ..........................................6 3.3.1 单片机的选择 ...................................6 3.3.2 AT89C52 主要性能参数 ...........................6 3.3.3 AT89C52 功能引脚说明 ...........................6 3.4 抢答器的系统概述 ....................................8 3.4.1 系统的主要功能 .................................8 3.4.2 抢答器的主要指标 ...............................9 3.4.3 抢答器的工作流程 ...............................9 3.5 外围电路的设计及分析 ...............................10 3.5.1 复位电路的设计 ................................10 3.5.2 时钟频率电路的设计 ............................11 3.5.3 显示电路的设计 ................................12 3.5.4 键盘扫描电路的设计 ............................12 3.5.5 声音电路 ......................................134 软件设计 ........................................... 144.1 软件任务分析 .......................................14 4.2 系统总流程图 .......................................14 4.3 各个模块软件设计与分析 .............................16 4.3.1 定时器/计数器 T0、T1 ..........................16 4.3.2 串口通信 ......................................18 4.3.3 中断控制 ......................................20 4.3.4 键盘扫描 ......................................20 4.4 相关仿真软件的介绍 .................................21 4.4.1 Proteus 7.5 介绍 ..............................21 4.4.2 Keil uVision4 介绍 ............................23 4.4.3 Proteus 7.5 与 Keil uVision4 结合使用 ..........265 系统仿真与硬件调试及分析 ........................... 275.1 软件调试 ...........................................27 5.2 硬件调试 ...........................................27 5.3 结果分析 ...........................................286 总结与展望 ......................................... 296.1 本文小结 ...........................................29 6.2 心得体会 ...........................................29 陕西理工学院毕业设计致 谢 ............................................... 30 参考文献 ............................................. 31 附录 A:系统仿真图 .................................... 32 附录 B:系统实物图 .................................... 33 附录 C:元器件清单 .................................... 35 附录 D:英文文献...................................... 36 附录 E:源程序........................................ 39 陕西理工学院毕业设计1 引言1.1 课题背景 抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨 出最先获得发言权的选手。早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过 发光管的指示辩认出选手号码。现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电 路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手犯规显示等功能。 数字抢答器由主题电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的 输入信号在数码管上显示,抢答器电路和主持人复位按键组成主体电路。通过定时电路将脉 冲产生的信号在显示器输出实现计时功能,共同构成扩展电路。利用面包板经过排版、布线、 调试等工作后数字抢答器成形。 数字抢答器是由很多电路组成的,线路复杂,可靠性不高,功能也比较难以实现,特别 是当数字抢答路数很多时,实现起来更为困难。目前市场上已有各种各样的抢答器,但绝大 多数是早期设计的,以模拟电路、数字电路或者模拟电路和数字电路结合的产品,这部分抢 答器已相当成熟,但功能越多的电路越复杂,且成本也比较高,发生故障的可能性也比较高, 传统普通抢答器主要存在以下缺陷:传统的抢答器都是导线布局,受现场环境影响很大;显 示方式简单,无法判断提前抢按按键的行为,且不便于电路升级换代。 在当今计算机的普及和电子信息技术的迅猛发展下,对抢答器有了更高的要求,如何有 效的保证许多公开竞争场合裁决的公平、公正,单片机抢答器为之提供了条件和发展空间, 建立一个价格适宜、智能化、自动化、数字化等特点的抢答器具有重要意义。 基于单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原 理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地 显示时间和选手号码。除此之外,还可以用键盘做输入,写入自己设置的时间,选手有效抢 答还有灯管显示。在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答 限定时间和回答问题的时间可是在 1-99s 设定;可以显示是哪位选手有效抢答和无效抢答, 正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,时间完后系统自动复位;按 键锁定,在有效状态下,按键无效非法。 1.2 目的及意义 通过本次毕业设计,对课本上所学的理论知识加深和巩固:进一步熟悉和掌握基本理论 在实践中综合运用, 进一步熟悉和掌握单片机的基本知识、 系统设计的基本方法及设计步骤, 进一步熟悉和掌握常用单片机模块的设计和应用。 能够熟练使用 Protues7.5 等电子软件, 学 会运用这些软件进行分析、设计和仿真电路。能够熟练运用 Keil uVision4 软件编写相应的 程序模块。学习单片机系统实物制作、调试、测试、故障查找和排除的方法及技巧。培养实 践技能,提高分析和解决实际问题的能力。 了解简单多路抢答器组成原理,初步掌握多路抢答器的调整及测试方法,提高动手能力 和排除故障的能力。同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的 理论知识, 能够独立地做完毕业设计,通过毕业设计受到一次综合运用所学知识、理论和技 能的训练。它使我们可以进一步学会分析问题、解决问题;学会阅读、翻译参考文献;学会 收集、运用各种资料。它是对我们在校学习的一次全面检验、总结和提高;是对我们利用所 学的理论知识解决实际工程问题的综合训练;是对提高我们的实践动手能力、创新思维能力 具有不可替代的作用;也是对毕业及学位资格认证的重要依据。因此,做好毕业设计(论文) 将为我们由学习走入工作、由学校进入社会打下良好的基础。 1.3 抢答器的目前现状 在现代社会中,各种教育活动、娱乐节目比比皆是,而抢答器作为一种工具,它可以给 予参赛者公平的答题机会和答题时间,已广泛应用于各种智力和知识竞赛场合。但大多数抢 答器不但制作复杂、可靠性低,而且功能过于简单,仅适用于在单一规则的活动中使用。作 为一个单位,如果专门购一台抢答器在经济上还可以承受,然而由于活动的多样性,去购买第 1 页 共 63 页 陕西理工学院毕业设计各种不同规格的抢答器,再购置的麻烦和及时性就会影响活动的开展。 目前多数抢答器以下存在五方面不足之处: 第一,现场线路连接复杂。因为每个选手位于抢答现场的不同位置,每个选手与控制台 之间要有长长的连接线。选手越多,连接线就越多、越乱,这些连接线不仅影响了现场的美 观,而且降低了抢答器的可靠性,增加了安装的难度,甚至影响了现场人员的走动。 第二,电路复杂。因为单片机只完成号码处理、计时、数据运算等功能,其它功能如选 手号码的识别、译码、计分显示等仍只能通过数字集成电路完成。采用单片机扫描技术识别 选手抢按号码时,电路的延迟时间较大。 第三,系统性能不够稳定,有时会在选手抢按成功时,出现没有抢答被记录的问题。 第四,目前市面上的抢答器只是大概判断出抢答成功或犯规选手台号,无法显示出每个 选手抢答所用的时间。 第五,抢答器中的抢答模式单一、不灵活,在所有场合只能用相同抢答时间和答题时间。 1.4 进度安排 本次设计主要分以下几个阶段完成: 1、 前期准备阶段,收集资料,整理资料,设计课题的总体方案,完成开题报告; 2、 根据总体方案设计,细化各模块,完成各个模块的设计; 3、 学习单片机的编程,完成硬件仿真电路的调试; 4、 制作实物电路,完成调试硬件实物电路; 5、 整理资料,完成毕业论文的书写,准备答辩。第 2 页 共 63 页 陕西理工学院毕业设计2 方案论证2.1 多路抢答器方案设计系统 2.1.1 基于数字电路多路抢答器的设计 如图 2.1 所示为该方案系统总体方框图。其工作原理为:接通电源后,主持人将开关拨 到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开 关置于“开始”状态,宣布“开始”抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定 时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答 之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次 操作“清除”和“开始”状态开关。抢答 按钮 优先编码 电路 锁存器 译码 电路 译码 显示主 主持人 控制开关 控制 电路 报警 电路 体 电 路扩 展 秒脉冲 产生电路 定时 电路 译码 电路 显示 电路 电 路图 2.1 基于数字电路的系统框架2.1.2 基于单片机的多路智能抢答器 如图 2.2 所示为该方案系统总体方框图。其工作原理为:主持人在活动前,通过键盘输 入电路,预设抢答时间和答题时间。在活动中,主持人先按下“开始抢答”按钮,各位选手 就可以通过抢答输入电路进行抢答,抢答成功后,显示电路会显示出成功抢答选手台号。然 后,主持人再按下“开始答题”按钮,数码管显示答题倒计时,各位选手答完题以后,按下 “停止”按钮,倒计时停止。如果要再次抢答,主持人可以按下“抢答复位”按钮,就可以 继续开始抢答。如果需要重新设置抢答时间和答题时间,主持人可以按下“总复位”按钮, 就可以重置时间。第 3 页 共 63 页 陕西理工学院毕业设计复位电路 四位七 段数码 管显示 STC89C51 时间预设、 开始、结束 键盘输入 时钟电路单 片 机 声 音 电 路=8 路抢答 按键输入图 2.2 基于单片机的系统框架2.2 方案论证及选择 对两个方案进行比较,可以发现以下几点: 第一,电路连线方面。方案一在实际应用时连接线较多,看起来比较繁琐不但影响电路 美观,而且影响增加了安装的难度。方案二则连线简单,出现问题也方便检修和排查。 第二,系统性能。方案一是用数字电路完成对选手号码的识别、译码、计分显示系统性 能不够稳定,抢答器可靠性较低,容易出现失误。方案二则使用单片机完成号码处理、计时、 数据运算等功能,由于所有程序都已烧录在单片机内部,所有处理是按照程序进行,不易出 现失误,系统性能相对稳定,抢答器可靠性较高。 第三,公平性方面。方案一中的抢答器只是大概判断出抢答成功或犯规选手台号,无法 显示出每个选手抢答所用的时间,会导致选手猜测比赛的公平性,容易引起活动骚乱。方案 二中的抢答器不但能判断出抢答成功或犯规选手台号, 而且显示出每个选手抢答所用的时间, 让所有选手清晰看到自己的抢答所用时间,用直观的实际数据证明比赛的公平性。 第四,实用性方面。方案一中的抢答器抢答模式单一、不灵活,在所有场合只能用相同 抢答时间和答题时间。方案二中的抢答器则可以自由设置抢答时间和答题时间,适用于多种 规则的活动中,不但节省经费,而且免去重新购置抢答器的麻烦。 综上所述,可以看出方案二较方案一更简便实用,因此,我们决定采用方案二做为这次 毕业设计的最终方案。第 4 页 共 63 页 陕西理工学院毕业设计3.硬件电路的设计3.1 硬件电路设计思路 基于单片机的多路抢答器系统主要分为几个模块: 单片机最小系统模块、 键盘控制模块、 数码显示模块、声音电路模块。 单片机最小系统主要由复位电路和时钟电路组成。 复位电路为单片机系统提供可靠复位, 使单片机能正常启动。时钟电路采用外部时钟方式,保证单片机个功能部件都是以时钟频率 为基准,有条不紊地一拍一拍地工作。 键盘控制模块包括抢答时间和答题时间输入键、主持人控制开始抢答按键和答题按键、 主持人复位按键、 选手抢答按键和选手答题完毕停止按键, 其中抢答时间和答题时间输入键、 主持人控制开始抢答按键和答题按键、主持人复位按键是由一个 4*4 矩阵键盘来实现的,接 在主单片机的 P1 口; 选手抢答按键和选手答题完毕停止按键分别接在两个从单片机中, 均对 应接在单片机的 P1 口,用来抢答和答完题的停止。 数码管显示模块选用了一个四位一体的共阴数码管和四个独立的共阴数码管,其中四位 一体共阴数码管接在主单片机上, 用以选手号和倒计时的显示, 其中位码分别接在 P2 口的第 四位,断码分别接在 P0 口;四个独立数码管分别接在两个从单片机上,用以显示答题过程中 的时间提醒。断码接在 P0 口,位码接在 P2 口的地位。 声音电路模块选用了常用的蜂鸣器,正极接在高电平,负极接在主单片机的 P3.7,用以 提示操作中的警示或者提示。 3.2 总体设计框图时钟电路复位电路 STC89C51 时间预设、 开始、结束 键盘输入四位七段数码管显示声音电路单 片 机复位电路具体说明如下:1.单片机接收 4*4 矩阵键盘信息,预设抢答时间和答题时间,主持人控 制开始与结束,确定是否为有效答题。2.单片机与单片机之间互相通信,发送主单片机预设STC89C51STC89C51复 位 电 路单 片 机8 路抢答 按键输入单 片 机时钟电路 图 3.1 总体设计框图时钟电路第 5 页 共 63 页 陕西理工学院毕业设计的答题时间,并确定选手号。3.主单片机根据选手是否有效抢答来控制数码管显示。4.主单 片机根据选手是否犯规,或者其他提示控制声音电路发出声响。 3.3 单片机系统 3.3.1 单片机的选择 本设计分为硬件设计和软件设计,这两者相互结合,不可分离;从时间上看,硬件设计 的绝大部分工作量是在最初阶段,到后期往往还要做一些修改。只要技术准备充分,硬件设 计的大返工是比较少的,软件设计的任务贯彻始终,到中后期基本上都是软件设计任务,随 着集成电路技术的飞速发展, 各种功能很强的芯片不断出现, 使硬件电路的集成度越来越高, 硬件设计的工作量在整个项目中的所占的比重逐渐下降。为使硬件电路设计尽可能合理,应 注意以下几方面[7]: (1) 尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随 着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。 (2) 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一 锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全 面返工。 (3) 程序空间,选用片内程序空间足够大的单片机,本设计采用 AT89C51 单片机。 (4) RAM 空间,AT89C51 内部 RAM 不多,当要增强软件数据处理功能时,往往觉得 不足。如果系统配置了外部 RAM,则建议多留一些空间。如选用 8155 作 I/O 接口,就可以 增强 256 字节 RAM。如果有大批数据需要处理,则应配置足够的 RAM,如
等。 随着软件设计水平的提高,往往只要改变或增加软件中的数据处理算法,就可以使系统功能 提高很多,而系统的硬件不必做任何更换就使系统升级换代。只要在硬件电路设计初期考虑 到这一点,就应该为系统将来升级留足够的 RAM 空间,哪怕多设计一个 RAM 的插座,暂 不插芯片也好。 (5) I/O 端口:在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而 这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测 端;有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些 I/O 端口, 虽然当时空着没用,那么用的时候就派上用场了。 3.3.2 AT89C52 主要性能参数 AT89C52 型单片机的性能与 AT89C51、STC89C52 的性能基本相似,AT89C52 是美国 AT 公 司生产的低电压,高性能的单片机。该器件采用 AT 高密度非易失存储器制造技术制造,与工 业标准的 MCS-51 指令集和输出管脚相兼容。 由于将多功能 8 位 CPU 和闪烁存储器组合在单个 芯片中,AT 的 89C52 是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价 廉的方案。 此外,它集 Flash 程序存储器可在线编程(ISP)也可用传统方法进行编程及通 用 8 位微处理器于单片芯片中,AT 公司的功能强大,低价位 AT89C52 单片机可提供许多高价 位比的应用场合,可灵活应用于各种控制领域。 3.3.3 AT89C52 功能引脚说明 40 个引脚按引脚功能大致可以分为 4 个种类:电源、时钟、控制和 I/O 口引脚。下面就 设计中所用到的引脚功能做以介绍。 电源:(1)VCC:芯片电源,接+5V. (2) VSS:接地端。 时钟:XTAL1、XTAL2:晶体振荡电路反相输入端和输出端。该反向放大器可以配置为片 内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有 余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求, 但必须保证脉冲的高低电平要求的宽度。在外接晶体时,XTAL1 与 XTAL2 各接晶体的一端借 外接晶体与片内反相放大器构成震荡器。 控制线:控制线共有 4 根第 6 页 共 63 页 陕西理工学院毕业设计⑴ALE/PROG:地址锁存允许/片内 EPROM 编程脉冲,连接时接高电平。 ⑵PSEN:外 ROM 读选通信号。 ⑶RST/VPD:复位/备用电源。 ⑷ EA/Vpp: 内外 ROM 选择/片内 EPROM 编程电源。 I/O 线:AT89C52 共有 4 个 8 位并行 I/O 端口:P0、P1、P2、P3 口,共 32 个引脚。 PO 口是一组 8 位漏极开路行双向 I/O 口,也是地址/数据总线复用口。 P1 口是一个内部具有上拉电阻的 8 位双向 I/O 口, 的输入缓冲级可驱动 P1 (吸收或输出 电流)4 个 TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时 可作输出口。作输入口时,因为内部存在上拉电阻,某个引脚被外部信号拉低时输出一个电 流(I)。Flash 编程和程序校验期间,P1 口接收 8 位地址。 P2 口是一个带有内部上拉电阻的 8 位双向 I/O 口, 的输入缓冲极可以驱动 P2 (输入或输 出电流)4 个 TTL 逻辑门电路。对端口“1”,通过内部的上拉电阻把端口拉到高电平,此时 可作为输入口,作输入口时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一 个电流。 P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口, 的输入缓冲级可驱动 P3 (吸收或输出 电流)4 个 TTL 逻辑门电路。对 P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输出 端口。作输出端口时,被外部拉低的 P3 口将用上拉电阻输出电流。P3 口除可作为一般的 I/O 口线外,更重要的用途是它的第二功能。表 3.1 P3 口第二功能表 引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RxD TxD 串行口输入端 串行口输出端 第二功能INT0 外部中断 0 请求输入端,低电平有效 INT1 外部中断 1 请求输入端,低电平有效 T0 T1 WR RD 定时/计数器 0 计数脉冲输入端 定时/计数器 1 计数脉冲输入端 外部数据存储器写选通信号输出端,低电平有效 外部数据存储器读选通信号输出端,低电平有效图 2.4 中单片机为 AT89C51, K1~K8 分别为 8 路抢答按键, 分别接到单片机的 P1.0~P1.7 中。开始按键与结束按键分别接到单片机的 24、25 脚,由于单片机的 10、11 脚既有串行接 口 RXD、TXD 功能,又有 P3.0、P3.1 的 IO 端口功能,此处按键用到单片机 10、11 脚的 D 第二功能。10 个 LED 灯分别对应八位选手及准备开始和开始抢答。4 位七段数码管段选 P0 口。4 位七段数码管的位选接 P2 口低 3 位,蜂鸣器输出为 P3.7 口。第 7 页 共 63 页 陕西理工学院毕业设计图 3.2 系统总体硬件设计图3.4 抢答器的系统概述 3.4.1 系统的主要功能 本设计系统是,采用模块化设计的八路抢答器,主要包括显示电路部分、时间预设和开 始结束键盘输入电路部分、复位电路部分、报警提示电路部分等。 在参赛者系统中,选手除享有基本抢答按钮的功能外,还有人性化的声音提示功能和时 间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;在主控系统中,主办 方除享有基本开始与结束按钮的功能外,还可根据活动要求,预设抢答时间和答题时间,并 且对选手回答问题的正误可以进行亮灯警示。此外,本设计系统可以显示抢答成功和违规的 选手台号,对抢答限时及回答问题限时设为倒计时,并有显示提示及声音提示。 系统的主要功能模块方框图如上图 2 所示。在本设计中,各组选手分别有一个抢答按钮 和一个答题完毕按钮,其中用 8 个按键输入、8 个按键停止来表示,另用 8 个 LED 灯,分别 对应 8 组选手。主持人有开始抢答和开始答题键。 在活动开始前,主持人可以预设抢答时间和选手答题的时间,通过键盘依次输入抢答时 间和选手答题的时间,设置好后在抢答和答题过程中时间不能更改。主持人按下开始抢答按 钮后,数码显示屏显示抢答时间倒计时,并在最后五秒蜂鸣器发出声音提示,在抢答时间范 围内,选手的抢答才为有效,当抢答成功后,数码显示屏显示出成功抢答的选手台号。如果 主持人没有按下开始抢答按钮,而选手就已抢答则视为犯规,数码显示屏显示出犯规者的台 号,蜂鸣器发声报警。当抢答完成后,主持人按下开始答题按钮,数码显示屏显示出答题倒 计时,与此同时成功抢答的选手则开始答题,答题完后该选手可按下答题完毕按钮,并有蜂 鸣器发出提示声音。当答题完成后,主持人可按下抢答复位按钮,新一轮抢答开始(注:此 时的抢答时间和选手答题时间仍为上一轮所预设的,若需在此轮比赛中重新更改预设时间, 则需按下总复位按钮) 。 本设计系统中,有一个共阴的数码管组,四个数码管。其中一个空位,一个显示抢答选 手台号,另外两个显示倒计时。主持人开始抢答按钮后,各位选手才能开始抢答。当然,也 可以抢按,但是会视为无效抢答。当抢答超过规定时间或答题超过规定时间后数码管显示第 8 页 共 63 页 陕西理工学院毕业设计“000” 。若有选手在规定时间内抢按成功,则可以答题,数码管显示抢答时间的同时也显示 成功抢答的选手台号。在按开始抢答按钮前抢答则表示犯规,数码管显示“00”并显示犯规 选手台号。 3.4.2 抢答器的主要指标 1、主持人在抢答之前能够预设抢答时间和答题时间,时间由集成键盘输入,可在 1~99s 之间任意设置,预设好时间后,在抢答和答题过程中不能再更改时间。如需更改时间需要按 下总复位开关来重新设置。 2、主持人按下&抢答开始&按钮,会有提示音,并立刻进入抢答倒计时(抢答时间) ,如 有选手抢答,会有提示音,并会显示其台号,待主持人按下“开始答题”按键后,方可进入 回答倒计时(抢答时间) ,不进行抢答查询,所以只有第一个按抢答的选手有效。时间每隔 5s 蜂鸣器会响一下提示音。 3、在倒计时期间,如果主持人想停止倒计时,可以按“停止”按钮,系统会自动进入准 备状态,等待主持人按“开始抢答”进入下次抢答计时。 4、如果主持人未按下“开始抢答”按钮,而有人按了抢答按钮,则为犯规抢答,数码管 显示犯规台号并伴有提示音,直到按下“停止”按钮为止。 综上,本课题利用STC89C51单片机及外围接口设计实现了抢答器,该抢答器增加了新功 能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。 3.4.3 抢答器的工作流程 在抢答器的基本工作原理:在抢答竞赛或呼叫时,有多个信号同时或不同时送入主电路 中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部的定时器开始工作,记 录有关时间并产生超时信号。在整个抢答器工作过程中,显示电路、声音电路等还要根据现 场的实际情况向外电路输出相应信号。抢答器的工作流程分为:系统复位、正常流程、违例 流程等几部分,如图 2.6 所示,下面分别予以介绍。第 9 页 共 63 页 陕西理工学院毕业设计 加载程序运 行 正常流程 违规流程行 开始 开始前有选手抢按开始数码管显 示 000 开始预设抢 答和答题时间 显示违例选手号码 并伴有语音报警倒计时结 束,超时有选手 抢按显示 000显示选手号码,倒计 时时间,语音报警,答 题,答题时间倒计时若超过答题 时间,则数 码管显示 000答题完毕系统复位图 3.3 系统工作流程图3.5 外围电路的设计及分析 3.5.1 复位电路的设计 单片机的第 9 脚 RST 为硬件复位端, 只要将该端持续 4 个机器周期的高电平即可实现复 位,复位后单片机的各状态都恢复到初始化状态,其电路图如图 8 所示:第 10 页 共 63 页 陕西理工学院毕业设计图 3.4 系统总复位图 3.4 中由按键 RESET1 以及电解电容 C3、电阻 R15 构成按键及上电复位电路。由于单 片机是高电平复位,所以当按键 RESET1 按下时候,单片机的 9 脚 RESET 管脚处于高电平,此 时单片机处于复位状态。当上电后,由于电容的缓慢充电,单片机的 9 脚电压逐步由高向低 转化,经过一段时间后,单片机的 9 脚处于稳定的低电平状态,此时单片机上电复位完毕, 系统程序从 000H 开始执行。 值得注意的是,在设计当中使用到了硬件复位和软件复位两种功能,由上面的硬件复位 后的各状态可知寄存器及存储器的值都恢复到了初始值,而前面的功能介绍中提到了倒计时 时间的记忆功能,该功能的实现的前提条件就是不能对单片机进行硬件复位,所以设定了软 复位功能。软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转 到程序执行的起始地址。 3.5.2 时钟频率电路的设计 单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只需要外接 一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。 时钟电路如图 3.5 所示。图 3.5单片机外部震荡电路一般选用石英晶体振荡器。此电路在加电大约延迟 10ms 后振荡器起振,在 XTAL2 引脚 产生幅度为 3V 左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两 个电容 C1,C2 的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1, C2 的典型值为 30PF。 单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信 号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用 fosc 表示。图中时钟频率为 6MHz,即 fosc=6MHz,则时钟周期为 1/6?s。第 11 页 共 63 页 陕西理工学院毕业设计3.5.3 显示电路的设计 显示功能与硬件关系极大,当硬件固定后,如何在不引起操作者误解的前提下提供尽可 能丰富的信息,全靠软件来解决。 在这里我们使用的是七段数码管显示,通常在显示上我们采用的方法一般包括两种:一 种是静态显示,一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单, 但占用端口资源多;动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态 显示而言占用端口资源少。在本设计中根据实际情况采用的是动态显示方法。 4 位七段数码管显示电路如图 3.6 所示。A F H H 1 2 3 H B 2 1 1 1 1 0 9 8 7UFHH1A23HBPEDDCG12345PEDDCG图 3.6 四位一体共阴数码管图 3.6 中数码管采用的是 4 位七段共阴数码管,其中 A~H 段分别接到单片机的 P0 口, 由单片机输出的 P0 口数据来决定段码值,位选码 COM1、COM3、COM4 分别接到单片机的 P2.0、P2.1、P2.2,由单片机来决定当前该显示的是哪一位。在图中还有八个 1K 的电阻,连 接在 P0 口上,用作 P0 口的上拉电阻,保证 P0 口没有数据输出时候处于高电平状态。 4 位一体数码管,其内部段已连接好,引脚如图 8 所示:a、b、c、d、e、f、g、dP 为段引脚, 1、2、3、4 分别表示四个数码管的位。 即:12-9-8-6 为公共端,A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3 3.5.4 键盘扫描电路的设计 键盘是人与单片机打交道的主要设备。关于键盘硬件电路的设计方法也可以在文献和书 籍中找到,配合各种不同的硬件电路,这些书籍中一般也提供了相应的键盘扫描程序。站在 系统监控软件设计的立场上来看,仅仅完成键盘扫描,读取当前时刻的键盘状态是不够的, 还有不少问题需要妥善解决,否则,人们在操作键盘就容易引起误操作和操作失控现象。在 单片机应用中键盘用得最多的形式是独立键盘及矩阵键盘。 他们各有自己的特点,其中独立键盘硬件电路简单,而且在程序设计上也不复杂,一般 用在对硬件电路要求不高的简单电路中;矩阵键盘与独立键盘有很大区别,首先在硬件电路 上它要比独立键盘复杂得多,而且在程序算法上比它要烦琐,但它在节省端口资源上有优势 得多,因此它更适合于多按键电路。其次就是消除在按键过程中产生的“毛刺”现象。这里 采用最常用的方法,即延时重复扫 描法,延时法的原理为:因为“毛刺”脉冲一般持续时间短,约为几 ms,而我们按键的时间 一般远远大于这个时间,所以当单片机检测到有按键动静后再延时一段时间(这里我们取 10ms) 后再判断此电平是否保持原状态,如果是则为有效按键,否则无效。 系统中的抢答时间和答题时间都是用键盘扫描来完成的,我们采用了 4*4 集成键盘来实 现的,8 个端分别介入单片机的 P1 口,单片机扫描来判断当前输入的数字并用数码管显示所 选数字;其中还包含了主持人开始按键,系统复位按键,主持控制开始答题按键。如下图 3.7 所示:第 12 页 共 63 页4H64HSMG42 陕西理工学院毕业设计图 3.7 系统主持人键盘所有选手在从机中,使用独立键盘扫描实现,没个选手使用两个按键,一个是抢答按键, 一个是规定时间内答题完毕的停止键。如下图 3.8 所示:图 3.8 八名选手抢答停止按键3.5.5 声音电路 我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线 的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定 频率的声音,若再利用延时程序控制“高”“低”电平的持续时间, 就能改变输出频率, 从而改变音调,使喇叭发出不同的声音。 本文设计如图 3.9 所示。图中单片机的 21 脚输出具有复合功能,此处用到了单片机 18 脚的 IO 端口功能,单片机通过内部定时器的操作实现交替变换的波形输出驱动扬声器发声。图 3.9 声音电路第 13 页 共 63 页 陕西理工学院毕业设计4 软件设计4.1 软件任务分析 软件任务分析和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务由软件完成, 在硬件电路设计基本定型后,也就基本上决定下来了[9]。 软件任务分析环节是为软件设计做一个总体规划。从软件的功能来看可分 两大类:一类是执行软件,它能完成各种实质性的功能,如测量,计算,显示,打印,输出 控制和通信等,另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统 软件中充当组织调度角色的软件。这两类软件的设计方法各有特色,执行软件的设计偏重算 法效率,与硬件关系密切,千变万化。 软件任务分析时,应将各执行模块一一列出,并为每一个执行模块进行功能定义和接口 定义(输入输出定义) 。在各执行模块进行定义时,将要牵扯到的数据结构和数据类型问题也 一并规划好。 各执行模块规划好后,就可以监控程序了。首先根据系统功能和键盘设置选择一种最适 合的监控程序结构。相对来讲,执行模块任务明确单纯,比较容易编程,而监控程序较易出 问题。这如同当一名操作工人比较容易,而当一个厂长就比较难了。 软件任务分析的另一个内容是如何安排监控软件和各执行模块。整个系统软件可分为后 台程序(背景程序)和前台程序。后台程序指主程序及其调用的子程序,这类程序对实时性 要求不是太高,延误几十 ms 甚至几百 ms 也没关系,故通常将监控程序(键盘解释程序) , 显示程序和打印程序等与操作者打交道的程序放在后台程序中执行;而前台程序安排一些实 时性要求较高的内容,如定时系统和外部中断(如掉电中断) 。也可以将全部程序均安排在前 台,后台程序为“使系统进入睡眠状态” ,以利于系统节电和抗干扰。 4.2 系统总流程图 在本设计中包括了以下主要的程序:主程序,查询程序,非法抢答程序,抢答时间调整 程序,回答时间调整程序,倒计时程序,正常抢答处理程序,犯规处理程序,显示及发声程 序。主流程图如 4.1 所示:第 14 页 共 63 页 陕西理工学院毕业设计 开始初始化设置答题时间和抢答时间准备开始答题否主持人是否按 抢答按键 是犯规,显示选手号定时器 0 开,倒计时开始否 串口中断,抢答时间内 是否有选手抢答 是 数码管显示选手号否 主持人是否按下开始 答题键 是 给串口发送答题时间, 选手开始答题否 主持人是否按下开始 答题键 是 犯规 选手按下答题结束,串口中断,定时 器关,倒计时停止系统复位,下一轮抢答开始图 4.1 系统总流程图 第 15 页 共 63 页 陕西理工学院毕业设计4.3 各个模块软件设计与分析 4.3.1 定时器/计数器 T0、T1 定时器/计数器是 51 系列单片机的重要功能之一,它的核心是 16 位加法计数器。其中特 殊功能寄存器 TH0 和 TL0 是定时器/计数器 T0 的高 8 位和低 8 位;TH1 和 TL1 是定时器/计 数器 T1 的高 8 位和低 8 位。表 4.1 STC89C51 特殊功能寄存器 符 号 地 址 注 释*ACC *B *PSW SP DPL DPH *IE *IP *P0 *P1 *P2 *P3 PCON *SCON SBUF *TCON TMOD TL0 TL1 TH0 TH1E0H F0H D0H 81H 82H 83H A8H D8H 80H 90H A0H B0H 87H 98H 99H 88H 89H 8AH 8BH 8CH 8DH累加器 乘法寄存器 程序状态字 堆栈指针 数据存储器指针低 8 位 数据存储器指针高 8 位 中断允许控制器 中断优先控制器 端口 0 端口 1 端口 2 端口 3 电源控制及波特率选择 串行口控制器 串行数据缓冲器 定时器控制 定时器方式选择 定时器 0 低 8 位 定时器 1 低 8 位 定时器 0 低 8 位 定时器 1 高 8 位做为计数器用时,加法计数器对芯片引脚 T0 或 T1 上的输入脉冲计数,每输入个脉冲。 加法计数器加 1。加法计数器溢出时可向 CPU 发出中断请求信号。 做为定时器用时,加法计数器对内部机器周期脉冲 Tcy 计数,由于机器周期是定值,因 而对 Tcy 的计数就是定时,如 Tcy=1us,计数值 100,相当于定时 100us。 加法计数器的初值可以由程序设定,设置的初值不同,计数值或定时时间就不同。在定第 16 页 共 63 页 陕西理工学院毕业设计时器/计数器的工作过程中,加法计数器的内容可用程序读回 CPU。 1、定时器 T0/T1 的中断流程图:开始设置定时器工作方式定时器赋初值开总中断启动定时器定时器再次赋初值Count++N Country==20 ?Y Country 清零时间减一N 时间==0 ?Y 结束 图4.2 定时器中断流程图2、器/计数器方式控制寄存器 TMOD: 定时器/计数器 T0/T1 都有四种工作方式,可通过对 TMOD 编写设置来选择。TMOD 的 低四位用于定时器/计数器 0,高四位用于定时器/计数器 1。其位定义见表 4.2。表 4.2 式控制寄存器 TMOD 位定义表 D7 GATE D6 C/T D5 M1 D4 M0 D3 GATE D2 C/T D1 M1 D0 M0C/T:定时或计数功能选择位,当 C/T=1 时,为计数方式;当 C/T=0 时,为定时方式。第 17 页 共 63 页 陕西理工学院毕业设计M1、M0:定时器工作方式选择位,其值与工作方式对应关系见表 4.3。表 4.3 定时器/计数器工作方式 M1 0 0 1 1 M0 0 1 0 1 工作方式 0 1 2 3 13 位定时器/计数器 16 位定时器/计数器 具有自动重装初值的 8 位定时器/计数器 两个 8 位定时器/计数器 方式说明GATE:门控位,用于控制定时器/计数器的启动是否受外部中断请求信号的影响。如果 GATE=1,则定时器/计数器 0 的启动受芯片引脚 INT0 控制,则定时器/计数器 1 启动受芯片 引脚 INT1 控制;如果 GATE=0.则定时器/计数器的启动与 INT0、INT1 无关。一般情况下 GATE=0。 3、时器/计数器控制寄存器 TCON:表 4.4 TCON 控制寄存器各位的定义 D7 TF1 D6 TR1 D5 TF0 D4 TR0 D3 IE1 D2 IT0 D1 IE0 D0 ITTF0(TF1):T0(T1) 定时器/计数器溢出中断标志位。当 T0(T1)计数溢出时,由硬件置位, 并在允许中断的情况下,向 CPU 发出中断请求信号,CPU 响应中断而转向中断服务程序时, 由硬件自动将该位清 0. T0(T1):T0(T1)运行控制位,当 T0(T1)=1 时,启动 T0(T1),当 T0(T1)=0 时, 关闭 T0(T1)。 该位由软件设置。 IT0(IT1) :外部中断 0(或 1)触发方式控制位。IT0(或 IT1)被设置为 0,则选择外 部中断为电平触发方式;IT0(或 IT1)被设置为 1,则选择外部中断为边沿触发方式。 IE0(IE1) :外部中断 0(或 1)的中断请求标志位。 4.3.2 串口通信 51 单片机内部有一个功能很强的全双工串行口,可同时发送和接收数据。接收和发送数 据均可工作在查询方式和中断方式。 串行口有 4 种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同场 合的需要。其中方式 0 主要用于外接移位寄存器,以扩展单片机的 I/O 电路;工作方式 1 多用于双机之间或与外设电路的通信;方式 2、3 除有方式 1 的功能外,还可以作多机通信, 以构成分布式多微机系统。 串行端口有两个控制寄存器 SCON、PCON,用于设置工作方式、发送或接收的状态、特征 位、数据传送波特率[每秒传送的位数]以及作为中断标志等。 串行端口有一个数据寄存器 SBUF[在特殊功能寄存器中的字节地址为 99H],该寄存器为 发送和接收所共用。发送时,只写不读;接收时,只读不写。在一定条件下,向 SBuF 写入数 据就启动了发送过程;读 SBuF 就启动了接收过程。 串行端口的波特率可以用程序来控制。在不同工作方式中,由时钟振荡频率的分频值或 由定时器 T1 的定时溢出时间确定,使用十分方便灵活。 串口控制寄存器 1. 特殊功能寄存器 SCON 它用于定义串行口的工作方式及实施接收和发送控制。字节地址为 98H,其各位定义如 下表:表 4.5 特殊功能寄存器 SCON 的位定义 D7 SM0 D6 SM1 D5 SM2 D4 REN D3 TB8 D2 RB8 D1 TI D0 RI第 18 页 共 63 页 陕西理工学院毕业设计SM0、SM1:串行口工作方式选择位,其定义如下:表 4.6 串行口工作方式 SM0、SM1 00 01 10 11 工作方式 方式 0 方式 1 方式 2 方式 3 功能描述 8 位移位寄存器 10 位移位寄存器 11 位移位寄存器 11 位移位寄存器 波特率【fosc 为晶振频率】 fosc/12 可变 fosc/12 或 fosc/12 可变SM2:多机通讯控制位,仅用于方式 2 和方式 3。当发送数据时 SM2 必须有软件设置为 1; 接收数据时,如果 SM2=1 只有接收到的第 9 位数据为 1 时,RI 才置位;如果 SM2=0 只要接收 第 9 位数据,RI 就置位。 REN:接收允许控制位。由软件置位(REN=1)才允许接收,又由软件清 O(REN=0)来禁止接 收。 TB8:是要发送数据的第 9 位。在方式 2 或方式 3 中,要发送的第 9 位数据,根据需要由 软件置 1 或清 0。例如。可约定作为奇偶校验位,或在多机通讯中作为区别地址帧或数据帧的 标志位。 RB8:接收到的数据的第 9 位。在方式 0 中不使用 RB8。在方式 1 中,若(SM2)=O,RB8 为接收到的停止位。在方式 2 或方式 3 中,RB8 为接收到的第 9 位数据。 TI:发送中断标志。发送数据前必须软件清 0,发送过程中 TI 一直为 0,当发送完一帧 数据后,由硬件自动置 1。如果要再发送,必须用软件再清 0。在编写串行通信程序的时候, 可以使用软件查询 TI 的方法获得数据是否已发送完毕。 RI:接收中断标志位。接收数据前必须软件清 0,接收过程中 RI 一直为 0,当接收完一 帧数据后, 由硬件自动置 1。 如果要再接收, 必须用软件再清 0。 在编写串行通信程序的时候, 可以使用软件查询 RI 的方法获得数据是否已接收完毕。 2. 特殊功能寄存器 PCON PCON 的字节地址为 87H,它的第 7 位 SMOD 是与串口的波特率设置有关的选择位。表 4.7 特殊功能寄存器 PCON D7 SM0D D6 X D5 D4 X D3 X D2 X D1 X D0 XSMOD: 波特率加倍位。 在计算串行方式 1、 3 的波特率时 SMOD=0 波特率不加倍; 2、 SMOD=1 波特率加倍。 3、单片机与单片机串行通信流程图第 19 页 共 63 页 陕西理工学院毕业设计开始设置 T1 工作方式 2,设置波特率串口工作于方式 2,SMOD=1开总中断开串口中断检测 TI、RITI=1RI=1发送数据接收数据中断返回图 4.3 串口中断流程图4.3.3 中断控制 MCS-51 单片机中没有专门的开中断和关中断指令, 对各个中断源的允许和屏蔽是由内部 的中断允许寄存器 IE 的各位来控制的。中断允许寄存器 IE 的字节地址为 A8H,可以进行位 寻址.表 4.8 中断允许寄存器 IE 的位定义 D7 EA D6 D5 ET2 D4 ES D3 ET1 D2 EX1 D1 ET0 D0 EX0EA:中断允许总控位。EA=0,屏蔽所有的中断请求;EA=1,开放中断。 ET2:定时器/计数器 T2 的溢出中断允许位 ES:串行口中断允许位。 ET1:定时器/计数器 T1 的溢出中断允许位。 EX1:外部中断 INT1 的中断允许位。 ET0:定时器/计数器 T0 的溢出中断允许位。 EX0:外部中断 INT0 的中断允许位。 4.3.4 键盘扫描第 20 页 共 63 页 陕西理工学院毕业设计 开始N 是否有键按下Y 延时取抖N 是否有键按下Y 扫描取得键值N 闭合键放否Y 结束 图 4.4 键盘扫描流程图4.4 相关仿真软件的介绍 4.4.1 Proteus 7.5 介绍 Proteus7.5前最好的模拟单片机外围器件的工具,真的很不错。可以仿真51 系列、AVR, PIC 等常用的MCU 及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI 器 件,部分IIC 器件,...)。 Proteus 7.5与其他单片机仿真软件不同的是,它不仅能仿真单片机CPU 的工作情况,也 能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时, 关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看 程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验 和工程应用间脱节的矛盾和现象。 (1)proteus 的工作过程 运行 proteus 的 ISIS 程序后,进入该仿真软件的主界面。在工作前,要设置 view 菜 单下的捕捉对齐和 system 下的颜色、图形界面大小等项目。通过工具栏中的 p(从库中选择 元件命令)命令, pick devices 窗口中选择电路所需的元件, 在 放置元件并调整其相对位置, 元件参数设置,元器件间连线,编写程序;在 source 菜单的 Definecode generation tools 菜单命令下,选择程序编译的工具、路径、扩展名等项目;在 source 菜单的 Add/remove source files 命令下,加入单片机硬件电路的对应程序;通过 debug 菜单的相应命令仿真 程序和电路的运行情况。 (2)Proteus 软件所提供的元件资源第 21 页 共 63 页 陕西理工学院毕业设计Proteus 软件所提供了 30 多个元件库,数千种元件。元件涉及到数字和模拟、交流和 直流等。 (3)Proteus 软件所提供的仪表资源 对于一个仿真软件或实验室,测试的仪器仪表的数量、类型和质量,是衡量实验室是否 合格的一个关键因素。在 Proteus 软件包中,不存在同类仪表使用数量的问题。Proteus 还 提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作 用与示波器相似但功能更多。 (4)Proteus 软件所提供的调试手段 Proteus 提供了比较丰富的测试信号用于电路的测试。 这些测试信号包括模拟信号和数字 信号。对于单片机硬件电路和软件的调试,Proteus 提供了两种方法:一种是系统总体执行效 果,一种是对软件的分步调试以看具体的执行情况。对于总体执行效果的调试方法,只需要 执行 debug 菜单下的 execute 菜单项或 F12 快捷键启动执行,用 debug 菜单下的 pause animation 菜单项或 pause 键暂停系统的运行; 或用 debug 菜单下的 stop animation 菜单项或 shift-break 组合键停止系统的运行。其运行方式也可以选择工具栏中的相应工具进行。对于 软件的分步调试,应先执行 debug 菜单下的 start/restart debugging 菜单项命令,此时可以选 择 step o ver 、 step into 和 step out 命令执行程序(可以用快捷键 F10、 F11 和 ctrl+F11), 执行的效果是单句执行、进入子程序执行和跳出子程序执行。在执行了 start / restart debuging 命令后,在 debug 菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统 资源等,可供调试时分析和查看。图 4.5 Proteus 7.5 界面Proteus 软件虚拟单片机实验的优点 采用Proteus 仿真软件进行虚拟单片机实验,具有比较明显的优势,如涉及到的实验实 习内容全面、硬件投入少、学生可自行实验、实验过程中损耗小、与工程实践最为接近等。 当然其存在的缺点也是有的。 (1)内容全面第 22 页 共 63 页 陕西理工学院毕业设计内容全面包括其能实验的内容包括软件部分的汇编、C51 等语言的调试过程,也包括硬 件接口电路中的大部分类型。对同一类功能的接口电路,可以采用不同的硬件来搭建完成, 因此采用Protues 仿真软件进行实验教学,克服了用单片机实验教学板教学中硬件电路固定、 学生不能更改、实验内容固定等方面的局限性,可以扩展学生的思路和提高学生的学习兴趣。 (2)硬件投入少,经济优势明显 对于传统的采用单片机实验教学板的教学实验,由于硬件电路的固定,也就将单片机的 CPU 和具体的接口电路固定了下来。在单片机的实际教学中,如果要涉及到51 系列,也要涉 及到PIC16 系列,那么为了教学必然要投入两种单片机的实验教学板;同时在教学过程中所 涉及到的接口电路,也需要有较大的投入和储备,以利于实验的进行和在实验过程中元件损 毁后的更换。Protues 所提供的元件库中,大部分可以直接用于接口电路的搭建,同时该软 件所提供的仪表,不管在质量还是数量上,都是可靠和经济的。如果在实验教学中投入这样 的真实的仪器仪表,仅仪表的维护来讲,其工作量也是比较大的。因此采用软件的方式进行 教学,其经济优势是比较明显的。 (3)学生可自行实验,锻炼解决实际工程问题的能力 实验能力和实验设计能力的培养,是工科学生解决实际工程问题能力中较为重要的。传 统的实验教学中,忽视了学生实验能力的培养,对于实验设计能力的培养,则很少涉及到。 因此学生学习了理论,要想将其应用到实际的工程实践中,其难度是比较大的。还有,学生 毕业后想对单片机控制技术或智能仪表等有较深的研究和学习,如果采用传统的实验教学方 法,则学生需要购置的设备比较多,增加了他们学习和研究的投入。采用仿真软件后,学习 的投入变得比较的小,而实际工程问题的研究,也可以先在软件环境中模拟通过,再进行硬 件的投入,这样处理,不仅省时省力,也可以节省因方案不正确所造成的硬件投入的浪费。 (4)实验过程中损耗小,基本没有元器件的损耗问题 在传统的实验教学过程中,都涉及到因操作不当而造成的元器件和仪器仪表的损毁,也 涉及到仪器仪表等工作时所造成的能源消耗。采用Protues 仿真软件进行的实验教学,则不 存在上述的问题,其在实验的过程中是比较安全的。 (5)与工程实践最为接近,可以了解实际问题的解决过程 在进行课程设计或进行大实验的时候,可以具体的在Protues 中做一个工程项目,并将 其最后移植到一个具体的硬件电路中,让学生了解将仿真软件和具体的工程实践如何结合起 来,利于学生对工程实践过程的了解和学习。 (6)大量的范例,可供学生参考处理 在系统的设计时,存在对已有资源的借鉴和引用处理,而该仿真系统所提供的较多的比 较完善的系统设计方法和设计范例,可供学生参考和借鉴。同时也可以在原设计上进行修改 处理。 (7)协作能力的培养和锻炼 一个比较大的工程设计项目,是由一个开发小组协作完成的。了解和把握别人的设计意 图和思维模式,是团结协作的基础。在Proteus 中进行仿真实验时,所涉及到的内容并不全 是学生独立设计完成的,因此对于锻炼学生的团结协作意识,是有好处的。 4.4.2 Keil uVision4 介绍 使用汇编语言或 C 语言要使用编译器,以便把写好的程序编译为机器码,才能把 HEX 可执行文件写入单片机内。KEIL uVISION 是众多单片机应用开发软件中最优秀的软件之一, 它支持众多不同公司的 MCS51 架构的芯片,甚至 ARM,它集编辑,编译,仿真等于一体, 它的界面和常用的微软 VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方 面也有很强大的功能。 使用步骤: (1)点击桌面上的 Keil uVision4 图标,出现启动画面,如图 4.6; (2)点击“project --- New uVision Project”新建一个工程;第 23 页 共 63 页 陕西理工学院毕业设计(3)在对话框,选择放在刚才建立的“Mytest”文件夹下,给这个工程取个名后保存,不 需要填后缀,注意默认的工程后缀与 uVision3 及 uVision2 版本不同了,为 uvporj; (4) 弹出一个框, CPU 类型下我们找到并选中“Atmel”下的 AT89S51 或 52, 在 如图 4.7; (5)以上工程创建完毕,接下来开始建立一个源程序文本; (6)在下面空白区别写入或复制一个完整的 C 程序,如图 4.8; (7)输入源程序文件名名称,在这里笔者示例输入“test”,这个名称,同样大家可以随 便命名。 注意: 如果您想用汇编语言, 要带后缀名一定是“test . asm”,如果是 C 语言, 则是“test . c”,然后保存; (8)接下来需要把刚创建的源程序文件加入到工程项目文件中,大家在点“ADD”按钮 时会感到奇怪,怎么对话框不会消失呢?不管它,直接点击“Close”关闭就行了,此时大家可 以看到程序文本字体颜色已发生了变化; (9)最后还要有设置一下,按下图设置晶振,建议初学者修改成 12M,因 12MHZ 方便 计算指令时间; (10)在 Output 栏选中 Create HEX File,使编译器输出单片机需要的 HEX 文件,如图 4.9; (11)工程项目创建和设置全部完成!点击保持并编译;图 4.6 Keil uVision4 启动画面图 4.7 选单片机型号第 24 页 共 63 页 陕西理工学院毕业设计图 4.8 编译画面图 4.9 生成 HEX 文件界面第 25 页 共 63 页 陕西理工学院毕业设计图 4.10 单步调试界面4.4.3 Proteus 7.5 与 Keil uVision4 结合使用 双机单片机,就会出现编辑原件画面,点击 Program File 菜单,出现选择文件名画面, 选好 HEX 文件后双击添加,这样就可以完美结合使用这两个软件了。图 4.11 Proteus 7.5 与 Keil uVision4 结合画面第 26 页 共 63 页 陕西理工学院毕业设计5 系统仿真与硬件调试及分析本系统的设计思路为:首先从整体上划分出各功能模块,然后硬件和软件同时进行依次 完成各个功能模块,最后将各个模块联系起来完成整个系统。 5.1 软件调试 软件的调试使用的是Keil C51的uVision4软件。Keil系列软件具有良好的调试界面,优 秀的编译效果,丰富的使用资料。使其深受国内嵌入式开发工程师的喜爱。将源程序输入新 建文本中进行调试,源程序的调试界面如图4.1所示。图5.1 源程序的调试界面软件测试的时候也有些问题,主要有: 1.数码管显示和单片机串口调试好后,调试发现从机数码管的数字和主机不同步,显示 的是乱码,经过分析和问同学,最终得知,仿真时管脚的标号冲突了,因为在仿真软件中同 一个字母没有大小写之分,如:D 和 d 均能接收到单片机输出的数据,经过改硬件连接后, 再调试,问题得到解决。 2.由于仿真的时候给每个选手都加了指示灯,结果在软件设计好后,在调试当中发现, 第一个选手按键时显示的是 1 号,但是后面的选手按键时,虽然主机没有显示,但是 LED 灯 亮了,经过分析,从机程序不完善,经过多次调试,最终把问题解决了。 3.单片机与从机之间的问题,因为一个主机对应了两个从机,当第一个从机中的选手抢 答后,第二个从机的选手按键时,虽然主机没有显示,但是 LED 灯亮了,经过分析,多次调 试,发现主机没有给从机在抢答时设置标志位,经过修改程序,再次调试,问题得到解决。 5.2 硬件调试 完成硬件制作后,根据程序图可以较快地完成程序的编写,但程序框图不可以将每一个 细节都表示出来,因而硬件调试占着非常重要的地位,当运行程序后没有达到所希望的要求 时,可以借助调试工具,在调试软件的帮助下,采用单步、断点及连需运行的方式调试程序, 一个程序往往要经过反复调试修改才能最终完成。第 27 页 共 63 页 陕西理工学院毕业设计在系统完成后测试系统,检查硬件和软件是否能够协调运行,并对系统出现的情况进行 分析,看是否能够达到系统创作之初所设想的效果,如达不到则重新修改系统的硬件结构或 者修改软件的程序部分,直到达到设计需要为止。 在硬件调试的过程中,也遇到了很多问题。主要有: 1.数码管显示程序设计完成后,调试运行,从机里面数码管显示显示不规律,多次调试 问题没有解决, 最后在同学的帮助下, 发现单片机 P1 口里面有两个管脚坏了, 总处于高电平, 经过换了一个单片机,重新运行程序,问题得到解决。 2.数码管的显示不清楚,亮度不够,经过分析,改变上拉电阻的阻值使灌电流增大,从 而使亮度增加。 3.由于有存在单片机与单片机之间的互相通信,在主机复位时有问题,因为从机与主机 是有一定距离的,所以在答题或者抢答过程中,如果主机复位,从机并不能复位,所以每隔 从机都要有自己的复位按钮。 4.选手抢答按键时不显示,经过研究、分析,最终得出其按键坏了,经过换后调试成功。 5.3 结果分析 经过软件程序的设计和仿真软件上的调试,使问题已经解决了一大半,再经过实物调试 后,最终完成了本次设计。系统能够预设抢答时间和答题时间,预设好时间后,在抢答和答 题过程中不能再更改时间;主机按下开始抢答后,抢答时间开始倒计时;从机有人按下抢答 后,倒计时停止,主机显示选手号,此时由主机给出答题信号,即按下按键以提示从机选手 开始答题, 答题时间倒计时开始; 规定时间内无人抢答, 数码管显示000, 声音电路发出声音 ; 主持人没有按下抢答按键,有人抢答,属于犯规,数码管显示选手号,生意电路发出声音; 主持人没有按下开始答题按键时,选手抢答,属于犯规;时间每个5s声音提示一次。第 28 页 共 63 页 陕西理工学院毕业设计6 总结与展望6.1 本文小结 本文研究与设计的八路多功能抢答器采用了通用的电子元器件,利STC89C51单片机及外 围接口实现抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结 合起来。理论联系实践,体现出大学生动手能力。通过查资料和搜集有关的文献,培养了自 学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习 方法上的一个很大的突破。在以往的学习过程中,我可能会记住很多的书本知识,但是通过 毕业论文,我学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实 践相结合的问题。把握重点、攻克难关,学到用到、活学活用。在设计过程中由于时间仓促 有很多地方难免存在不足之处,硬件设计已经完成,在软件设计中有些功能还尚未开发出来。 但在以后的工作中,我会严格要求自己,追求完美。 整个设计通过了软件和硬件上的调试、仿真。我想这对于自己以后的学习和工作都会有 很大的帮助的。在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论 性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要 不断地更正以前的错误思维。对于单片机设计,其硬件电路是比较简单的,主要是解决程序 设计中的问题。而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能 力。它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很 多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对单片 机的结构很熟悉。因此可以说单片机的设计是软件和硬件的结合,二者是密不可分的。 但是,通过这次设计我也发现自己的很多不足之处。在设计过程中我发现自己考虑问题 很不全面,自己的专业知识掌握的很不牢固,所掌握的计算机应用软件还不够多,我希望自 己的这些不足之处能在今后的工作和学习中得到改善。而且,通过这次设计,我懂得了学习 的重要性,学会了坚持和努力,这将为以后的学习做出了最好的榜样! 6.2 心得体会 我的毕业设计课题----单片机智能抢答器的设计与实现, 是一个软硬件结合的题目,也 是我第一次独立完成的一个项目。从一开始的准备,到每一步的设计以及最后的完成,都让 我受益良多。首先,这次毕业设计使我熟悉了做一个项目的全部过程,如首先要明白设计的 工作原理、如何确定使用的芯片、以及芯片的具体接法等;同时,通过这次毕业设计,我还弄 懂了许多芯片以及许多基础电路使用方法。在绘制原理图的过程中,更让我了解并熟悉了 Altium Designer 的使用及设计方法,同时也明白了许多制作电路板中要懂的工程规范,如 电路板的大小,如何布局等。而在硬件的调试过程中,我明白了硬件调试中的步骤,也同时 向老师学会了一些调试技巧,若芯片不能正常工作,应首先测试其片选、时钟等信号,然后 在考虑起工作时序的问题。并且也学会了如何找出问题的所在和一些问题的解决方法等。 在整个毕业设计过程中,我也遇到了许多困难,如程序可以仿真但在实际电路中很不稳 定,通过查阅相关资料,最终得到解决,在硬件电路的设计上。 毕业设计,是对我大学四年期间所学专业知识的一个总结,一个检测, 在整个毕业设计 的过程中, 锻炼了我的动手能力, 使我能够更好的把以前所学的理论知识同实践相结合起来, 在很大的程度上增强了我的动手实践能力,更重要的是教会了我在以后的人生道路上,遇到 陌生的问题是,要学会独立去思考解决问题方法,按发现问题―分析问题―解决问题的思路 去解决问题。毕业设计是我人生中的一大财富。第 29 页 共 63 页 陕西理工学院毕业设计致谢借此论文结束之际,我首先要感谢我的导师在大学四年里对我的栽培。本论文是在老师 的悉心指导下才完成的。胡老师学识渊博,为人和善。他不仅在学术上给了我指导,在生活 上也给了我无尽的关怀。这一切都将使我终身难忘。 我要感谢我系的各位老师,在设计过程中,我系的老师们给了我很多种肯定的建议,使 我的论文得以顺利的完成。也要感谢各位老师在四年来对我学习和活上的关心和帮助。 我要感谢所有的师弟师妹们,在这个团结奋斗、积极向上、充满爱心的集体中,我获得了不 断进取的动力。 最后 ,我要感谢我的家人,是他们在背后默默无闻的奉献,才使我有充足的时间和充裕 的精力顺利完成我的学业。第 30 页 共 63 页 陕西理工学院毕业设计参考文献[1] 沈红卫,基于单片机的智能系统设计与实现[M],北京:电子工业出版社,] 徐建军,MCS-51 系列单片机应用及接口技术[M],北京:人民邮电出版社,] 何立民,单片机应用技术大全,北京:北京航空航天大学出版社,1994 [4] 何立民,MCS-51 单片机应用系统设计系统配置与接口技术[M],北京航空航天大学 [5] 楼然苗,李光飞,51 系列单片机设计实例,北京航空航天大学出版社, [6] 张培仁,基于 C 语言编程 MCS-51 单片机原理与应用,北京:清华大学出版社,203:159-163 [7] Analog Device Corp.Data-Acquisition Databook,1991 [8] Joseph D.Greenficld:Practical Digital Design Using ICs [9] 杨西明,朱骐,单片机编程与应用入门,北京:机械工业出版社, [10] 《Protel 电路设计实用指南》西安电子科技大学出版社 刘宏、赵杰忠等编 [11] 张友德、赵志英、涂时亮,单片微型机原理、应用与实践(第四版) ,上海:复旦大学出版社, 5 [12] 张延琪,常用电子电路 280 例解析,北京:中国电力出版社, [13]高吉祥、易凡,电子技术实验与课程设计,北京:电子工业出版社,第 31 页 共 63 页 陕西理工学院毕业设计附录 A:系统仿真图图 A.1 选手抢答后的仿真图图 A.2 选手开始答题后的仿真图第 32 页 共 63 页 陕西理工学院毕业设计附录 B:系统实物图图 B.1 设置时间之前的显示图 B.2 抢答之中的显示第 33 页 共 63 页 陕西理工学院毕业设计图 B.3 选手抢答后的显示图 B.4 开始答题的显示第 34 页 共 63 页 陕西理工学院毕业设计附录 C:元器件清单表 C.1 元器件清单 名称 STC89C51 单片机 4 位一体共阴数码管 独立的共阴数码管 4*4 集成键盘 1K 排阻 蜂鸣器 独立按键 10K 电阻 10uF 电解电容 12M 晶振 30pF 陶瓷电容 数量 3 1 4 1 3 1 19 3 3 3 6第 35 页 共 63 页 陕西理工学院毕业设计附录 D:英文文献MCU based intelligent responder【Abstract】 With the development of science and technology and popularization, all kinds of competitions, including contest is more and more the role of more and more important. This paper designed AT89S51 as the core in the zhuhai vies regulator, with digital display direct instructions, automatic latch showed results, and automatic reset design ideas, it can according to different contest input signal by MCU control, handle and produce different with the input signal corresponding output signal, finally LED digital pipe display by the corresponding points, even if the two groups of vies differs a few microseconds, also time can distinguish which group of priority press buttons, fully utilize the single-chip microcomputer system structure is simple, powerful, good reliability and practicability strong characteristic. This design is for the starting point. Responder Considering the set limit to answer in 89S51 single-chip microcomputer and function, use of peripheral interfaces, scare-answering system of the microcontroller timer/counter timing and numeration principle, software and hardware organically, and makes the system can correctly to the time, at the same time making digital tube can properly show time. With a switch do keyboard output, the speaker happens hints. And the system can realize: in the contest, only after beginning vies to effective, if at the start of the con former contest Full automatic reset and clock after the system ma Key lock, in effective condition, buttons invalid illegal 【Key Words】 vies to implement microcontroller LED digital speaker counters . Responder overview 1.1 system design function 1.1.1 The basic function of the (1) for8players, each with 8button S0~ S7. (2) provided a clear answer system and control switch S, the switch from the host control. (3) responder has latched and display function. The player presses the button, latch corresponding to the ID, speakers audible tips, and seven digital tube display the player number. The contestant vies to answer first the implementation of the priority latches, first vies to answer first contestant number has been maintained to the host system will clear up. 1.1.2 extension function: (1) responder is the answer in time, and an answer in the time set by the host ( e.g. 30 seconds ). When the host start the& start& button, the timer to reduce the time. (2) the contestants in the set time answer, answer effective, the timer stops working, displays the number and answer 's time, to host and maintain the system until clear. In this section (3) if the timing time is up, no contest, the contest null and void, and prohibits the answer system alarm, time display on the display 00. 1.2 responder needs analysis 1, the answer, only after the start of the answer is only valid if the answer before the start, responder invalid. 2, the answer time limit and time answering questions but in 1 ~99S set. 3, may display which is effective and ineffective players answer answer keys, right after the music cue. 4, the answer time and answer questions of time countdown show, after the system automatically第 36 页 共 63 页 陕西理工学院毕业设计reset time. In 5, lock, in effective state key invalid, illegal. 1.3 The answer in the working process 1, if you want to adjust the time or time to answer, click & add& button or& minus one & to enter the regulation of the state, at this time will show now set the time or answer to answer the time value, if want to add a second press&1s& button, if want to reduce a second click& by1s& key, LED will display the change time after time, adjust the range of 0~ 99S,0s plus1s will jump to 99,99S plus1s will change into 0s. 2, the host press the &answer& key, there will be sound, and immediately enter the answer in the countdown ( default 20s answer time ), if the contestant vies to answer first, there will be sound, and display its number and immediately into the answer Countdown ( default 20s answer time ), don't answer the query, so only the first according to the answering player effective. 3, such as the countdown period, host wants to stop the countdown can press the &stop& button, the system will automatically enter the ready state, wait for the host to& the start& into the next answer time. 4, if the host did not press the &answer& button, and someone pressed the answer key, foul, LED do not show any results, until you press the & stop& button. MCU function introduction AT89S51/ LS51SCM is a low-power, with4KB online programmable Flash memory chip. It with universal 80C51Series MCU instruction system and pin compatible. The on-chip Flash may allow reprogramming, can also use the non-volatile memory programming. He general CPU and online programmable Flash integrated on a chip, the formation of a powerful, flexible use and high performance price ratio of the micro controller. AT89S51MCU internal by CPU,4KB FPEROM,128B RAM, two16 bit timer / counter T0and T1,48 I / O end P0, P1, P2, P3etc.. Single chip microcomputer with internal part of the core is CPU. CPU main function is to produce a variety of control signals, control memory, input / output port for data transmission, data arithmetic, logic operation and operation processing, CPU according to their function can be divided into the arithmetic unit and the controller in two parts. The controller consists of a program counter PC, instruction storage, an instruction decoder, real-time control and conditional logic circuit. It is the function of the instruction from memory for decoding, by real time control circuit, in terms of the time required for the operation of a variety of internal and external control signals, so that each part coordinates the work, completes the operation specified by a command. Arithmetic logic unit, ACC, ALU accumulator register, a program status word register PSW, BCD code operation adjustment circuit. Hardware circuit design In order to make the hardware circuit design is reasonable as far as possible, should pay attention to the following several aspects: (1) as far as possible using the strong function of the chip, in order to simplify the circuit, strong functions of the chip can replace several common chip, with the production process improvement, new chip price drops ceaselessly, is not necessarily more than several common chip price is the sum of the high. (2) a design room. In the design of the hardware circuit, taking into account the future modification of the extended convenience. Because there are few final circuit design, if now leave no room, possible future for a little modification or extension and forced to completely rework. (3) program space, using on-chip program space large enough SCM, this design uses the第 37 页 共 63 页 陕西理工学院毕业设计AT89C51chip. (4) the RAM space, inside the AT89S51RAM is not much, as to enhance the software data processing function, often feel inadequate. If the system configuration of the external RAM, suggested leaving some space. Such as the selection of8155I / O interface, can enhance256 bytes of RAM. If there are a large number of data need to be processed, it should be configured with sufficient RAM, such as . As the software design level, often just to change or add data processing algorithm, it can make the system function to improve a lot, and the system's hardware does not have to make any change makes the system upgrading. As long as the hardware circuit design of early to take this into consideration, it should be for the future system upgrades have enough RAM space, even more than the design of a RAM socket, plug chip or not. (5) I / O port: the prototype developed after the trial scene, often find some neglected problems, and these problems is not to rely on pure software measures to solve the. As some of the new signal acquisition, it is necessary to increase the inpu some physical quantity need to control, it is necessary to increase the output. If the hardware circuit design will allow some I / O port, although when the time useless, so when they come in handy. P2.4to begin to answer [9], P2.5P2.6plus, minus, six eight for P1.0-P1.7answer input, digital tube Duan Xuan P0, select P2export low 3 bits, a buzzer output for P2.7 port.第 38 页 共 63 页 陕西理工学院毕业设计附录 E:源程序E.1 主机程序:#include &reg52.h& #include &intrins.h& #define uchar unsigned char #define uint unsigned int char shijian[]={0,0,0,0}; //抢答时间 答题时间 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; uchar t1,shi,ge,num,temp,num1,y1,sum,a1; uchar buf,p2,zuhao,dd,mm,shu10, uint shu,shu1; uchar keyscan(); char dada,star,da, sbit d1=P3^3; sbit d2=P3^2; sbit baojing=P3^7; void Init_Serial(); void init(); void display(uchar,uchar,uchar); void genggaishijian(); void laba(); void delay(uint z) //延时 { uint x,y; for(x=z;x&0;x--) for(y=110;y&0;y--); } void Send_Data(uchar buf) //串口发送 { SBUF = while(!TI); TI=0; } void laba() //声音 { baojing=0;delay(20);baojing=1; } void zhujijieshou() //串口接收并处理 { laba(); if(p2==0xaa||p2==0xab){TR0=0;laba();}第 39 页 共 63 页 陕西理工学院毕业设计if(dada==0) { if(p2==0x0a) { TR0=0; laba(); Send_Data(0xab); delay(50); zuhao=1; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=1; } if(p2==0x0b) { TR0=0; laba(); Send_Data(0xab); delay(50); zuhao=2; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=1; } if(p2==0x1a) { TR0=0; laba(); Send_Data(0xab); delay(50); zuhao=3; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=1;第 40 页 共 63 页 陕西理工学院毕业设计} if(p2==0x1b) { TR0=0; laba(); Send_Data(0xab); delay(50); zuhao=4; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=1; } if(p2==0x0c) { TR0=0; laba(); Send_Data(0xac); delay(50); zuhao=5; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=2; } if(p2==0x0d) { TR0=0; laba(); Send_Data(0xac); delay(50); zuhao=6; mm=0x0e; t1=0; delay(10); display(shi,ge,num); delay(5); dada=1; jihao=2;第 41 页 共 63 页 陕西理工学院毕业设计} if(p2==0x1c) { TR0=0; laba()}

我要回帖

更多关于 限时抢购图片 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信