基于单片机89c51八路抢答器课程设计报告.doc

上传人:scccc 文档编号:11189083 上传时间:2021-07-11 格式:DOC 页数:21 大小:725.50KB
返回 下载 相关 举报
基于单片机89c51八路抢答器课程设计报告.doc_第1页
第1页 / 共21页
基于单片机89c51八路抢答器课程设计报告.doc_第2页
第2页 / 共21页
基于单片机89c51八路抢答器课程设计报告.doc_第3页
第3页 / 共21页
基于单片机89c51八路抢答器课程设计报告.doc_第4页
第4页 / 共21页
基于单片机89c51八路抢答器课程设计报告.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《基于单片机89c51八路抢答器课程设计报告.doc》由会员分享,可在线阅读,更多相关《基于单片机89c51八路抢答器课程设计报告.doc(21页珍藏版)》请在三一文库上搜索。

1、 中州大学工程技术学院单片机课程设计报告书题目:基于单片机89c51 8路抢答器姓 名: 阮成龙 专 业:电气自动化(对口)一班学 号: 201425180118 同组人: 指导教师:孙建延 日期:2016.01.03 目录摘要-3前言-4第一章 设计要求 -51.1基本要求 -51.2提高要求 -5第二章 系统的组成及工作原理-62.1系统的组成框图-62.2系统的工作原理-6第三章 电路设计-73.1方案的选择-73.1.1方案一-73.1.2方案二-83.1.3确定方案-83.2单元电路设计-93.2.1抢答电路的设计-93.2.2定时电路的设计-113.2.3报警电路的设计-123.2

2、.4时序电路的设计-13第四章 设计总结-15参考文献-18附录-19摘 要介绍了数码显示八路抢答器电路的组成、设计及功能,电路采用74系列常用集成电路进行设计。该抢答器除具有基本的抢答功能外,还具有定时、计时和报警功能。主持人通过时间预设开关预设供抢答的时间,系统将完成自动倒计时。若在规定的时间内有人抢答,则计时将自动停止;若在规定的时间内无人抢答,则系统中的蜂鸣器将发响,提示主持人本轮抢答无效,实现报警功能,若超过抢答时间则抢答无效。该抢答器主要运用到了编码器,译码器和锁存器:它采用74LS148来实现抢答器的选号,采用74LS279芯片实现对号码的锁存,采用74LS192实现十进制的减法

3、计数,采用555芯片产生秒脉冲信号来共同实现倒计时功能,采用74LS121单稳态芯片来实现报警信号的输出。通过课程设计提高和巩固了所学的专业知识,以及知识的综合应用和焊接技术。关键词: 抢答器 编码 译码 定时 报警前 言在工业自动化系统及测控仪表中,采用单片机作为核心部件越来约普遍。单片机作为微型计算机的一个分支,技术发展十分迅猛,产品种类齐全。为满足工业控制的要求,选择合适型号的单片机进行系统设计是每一个单片机工程师必须掌握的技能进入21世纪越来越来多的电子产品出现在人们的日常生活中,例如企业、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。过去在举行的各种竞赛中我们经常看到

4、有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。人们于是开始寻求一种能不依人的主观意愿来判断的设备来规范比赛。因此,为了克服这种现象的惯性发生人们利用各种资源和条件设计出很多的抢答器,从最初的简单抢答按钮,到后来的显示选手号的抢答器,再到现在的数显抢答器,其功能在一天的趋于完善不但可以用来倒计时抢答,还兼具报警,计分显示等等功能,有了这些更准确地仪器使得我们的竞赛变得更加精彩纷呈,也使比赛更突显其公平公正的原则。今天随着科技的不断进步抢答器的制作也更加追求精益求精,人们摆脱了耗费很多元件仅来实现用指示灯和一些电路来实

5、现简单的抢答功能,使第一个抢答的参赛者的编号能通过指示灯显示出来,避免不合理的现象发生。但这种电路不易于扩展,而且当有更高要求是酒无法实现,例如参赛人数的增加。随着数字电路的发展,数字抢答器诞生了,它易于扩展,可靠性好,集成度高,而且费用低,功能更加多样话,是一种高效能的产品。而如今在市场上销售的抢答器大多采用可编程逻辑元器件,或利用单片机技术进行设计,本次设计主要利用常见的74LS系列集成电路芯片和555芯片,并通过划分功能模块进行各个部分的设计,最后完成了八路智力竞赛抢答器的设计。第一章 设计要求1.1基本要求(1)抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0S7表示。(2)设

6、置一个系统清除和抢答控制开关S,该开关由主持人控制。(3)抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在数码管上显示选手号码。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。1.2提高要求 (1)抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。当主持人启动开始键后,定时器进行减计时。同时扬声器发出短暂的响声,响声持续0.5秒左右。发光二极管灯亮。(2)参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。(3) 如果定时时间已到,无人抢答,本次抢答

7、无效,系统报警并 禁止抢答,定时显示器上显示00。(4)按钮到控制中心的距离为20M。第二章 系统的组成及工作原理2.1系统的工作原理:定时抢答器的总体框图如下图2.2: 图2.2 抢答器工作框图如图所示电路包括主体电路和扩展电路两部分。其中主体电路完成基本的抢答功能,即主持人按下控制开关后,当选手按动抢答键时,数码管显示选手编号,同时封锁输入电路,其他选手抢答无效。扩展电路完成定时抢答的功能以及报警功能。图2.2所示电路的工作过程是:接通电源后,主持人将控制开关置于“清除”处,此时抢答器处于禁止状态,选手不能进行抢答,定时显示器显示设定的时间(30s),当主持人将控制开关置于 “开始”时,扬

8、声器发出声响,抢答器处于工作状态,同时定时器开始倒计时。当选手在定时时间内按动抢答键时,电路要完成以下功能: (1)优先编码电路判断抢答者的编号,并由锁存器进行锁存,然后通过译码显示电路在数码管上显示抢答者的编号;(2)扬声器发出短暂声响;(3)控制电路对其余输入编码进行封锁,禁止其他选手进行抢答;(4)控制电路要使定时器停止工作,数码管上显示剩余的抢答时间,当选手将问题回答完毕,主持人操作控制开关进行系统清零,使系统回复到禁止工作状态,以便进行下一轮抢答。当定时时间到,却没有选手抢答时,系统将报警,并封锁输入电路,禁止选手超时后抢答。第三章 电路设计3.1方案的选择:3.1.1【方案一】原理

9、:在选手抢答前, “清除/起始” 开关S使基本RS触发器输出端Q为0,使集成8线-3线优先编码器禁止;当主持人按下“清除/起始”开关S时,基本RS触发器输出端Q为1,与优先扩展输出端Yex共同作用,使集成8线-3线优先编码器选通输入端ST为0,允许编码,等待数据输入。此时优先按动序号的组号立即通过编码器按BCD421码输出,经RS锁存器74LS279将该数码锁存到LED显示器上。与此同时,Yex(引脚为14)由1翻转为0,与非门G1输出为1,选通输入端ST为1,编码器被禁止。此外,在Yex由1翻转为0时,还驱动报警电路工作,发出声音。3.1.2【方案二】该方案即为笔者所采用的方案,它采用了74

10、LS148来实现抢答器的选号,采用了74LS279芯片实现对号码的锁存,采用了74LS192实现十进制的减法计数,555芯片产生秒脉冲信号来共同实现倒计时,采用了74LS121单稳态芯片来实现报警信号的输出。3.1.3 确定方案在方案一中,主要多了一个基本RS触发器,以及相对的74LS148引脚与74LS279之间连线的相应改变,这又涉及到之后的提高方案中的连线的改变。它有自身的优点,即基本RS触发器又相当一锁存器(74LS279),它可以对主持人的指令进行进一步的锁存,这样就可以增强它的抗干扰能力,但其线路过于复杂,另外此次实验所用的电路板对电路设计的大小要求很高,而且在布局和焊接上要越精练

11、越好,所以它不是首选方案。而由于方案二已能满足基本设计和提高设计的要求,而且它的原理更简单易懂,直观明了,元件更少,连线更方便,焊接更可靠,且比较容易实现,所以最终选用了方案二。3.2单元电路设计3.2.1抢答电路的设计抢答电路的功能有两个:一是能分辨出选手按键的的先后,并锁存优先抢答者的编号,供译码显示电路用;二是要使其他选手的按键操作无效。选用优先编码74LS148和RS锁存器74LS279可以完成上述功能,其电路组成如图3-1所示:图3-1 抢答电路其工作原理是:当主持人控制开关处于“清零”位置时,RS触发器的R端为低电平,输出端(4Q1Q)全部为低电平。于是74LS48的BI=0,显示

12、器灭灯;74LS148的选通输入端ST=0,74LS148处于工作状态,此时锁存电路不工作。当主持人将开关拨到“开始”位置时,优先编码电路和锁存电路同时处于工作状态,既抢答器处于等待工作状态,等待输入端I7、I6、I5、I4、I3、I2、I1、I0输入信号,当有选手将键按下时(如按下S5),74LS148的输出Y2Y1Y0=010,YEX=0,经RS锁存器后,CTR=1,BI=1,此时74LS279处于工作状态,4Q3Q2Q=101,经74LS48译码后,显示器显示出“5”。此外,CTR=1,使74LS148的ST端为高电平,74LS148处于禁止工作状态,封锁了其它按键的输入。当按下的键松开

13、后,74LS148的YEX高电平,但由于CTR维持高电平不变,所以74LS148仍处于禁止工作状态,其它按键的输入信号仍不会被接受。这就保证了抢答者的优先性以及抢答电路的准确性。当优先抢答者回答完问题后,主持人操作控制开关S,使抢答电路复位,以便进行下一轮抢答。3.2.2定时电路的设计74LS48的7,6,2,3引脚接受来自74LS192的输出信号并把它译码 显示在数码管上。74LS192的9,10,11,15引脚完成时间设定功能,本设计要求定时30秒,所以把左边的芯片的1,15引脚接高电位,期于的全接低位,使的初始时间设定为30秒。555芯片完成产生秒脉冲的功能。工作过程为:抢答开始前,74

14、LS192的置数端为低电位,处于初始状态,数码管显示为30,5引脚接高电位。抢答开始后,秒脉冲冲推动右边的芯片开始倒记时,同时右边芯片产生的信号做为左边芯片的CP信号推动左边的芯片倒记时,完成十进制的倒记时功能。当有人抢答后1Q的输出为1,经过非门后变为0,通过与门屏蔽了秒信号,停止记时,完成显示抢答时间的功能。当记到了30秒时,左边的芯片产生的定时到信号输出为低电位,也屏蔽了秒信号,使得数码管显示为00。图3-.2 定时电路3.2.3报警电路的设计由555定时器和三极管构成的报警电路如图3-3所示:图3-3 报警电路其中555构成多谐振荡器,振荡频率为:f0=1/(R1+2R2)*C*ln2

15、=1.43/(R1+2R2)*C其输出信号经三极管推动扬声器。PR为控制信号,当PR为高电平时,多谐振荡器工作,反之,电路停振不再工作。3.2.4时序电路的设计时序控制电路是抢答器设计的关键,它要完成以下三项功能: 主持人将控制开关拨到“开始”位置时,扬声器发声,抢答电路和定时电路进入正常抢答工作状态,当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。当设定的抢答时间到,无人抢答时,扬声器发声,同时抢答电路和定时电路停止工作。根据上面的功能要求以及图3.-1和图3-2,设计的时序控制电路如图3-4所示:图3-4 抢答与定时电路的时序控制电路第五章 设计总结1、 做了两周的课程设计

16、,有很多的心得体会,有关于单片机 更多的是关于人与人之间关系方面的。 我们组一共有四个人,但其他两个人是真的神龙见首不见尾,除了在最后答辩的时候他们一起坐在了我旁边,冠冕堂皇的指着我画了几遍的图说了几嘴,我想可能他们自己都不知道自己在说怎么,虽然有的东西他们也答出来了。我佩服他们的勇气,羡慕他们的运气(我见到的很多做了10 天的人最后的成绩都有不如他们的),但是鄙视他们的做法。 所幸的是,我得到了很多同学的帮助。我想没有他们我可能都要放弃了,因为我本人对单片机也并不是很熟悉,学的东西好像它是它,我是我似的,理论联系不了实际。以前的汇编语言没学好,一开始的程序这块儿就要令我抓狂了。后来请教我们班

17、的一个男生,每次跟他一起到试验室调试程序(他们组也只有他一个人动手),看他边做边给我讲解。最后在开发机上做出来的时候,虽然不是我自己写的,但看他那么高兴,我也有一种分享到的成就感。后来我们组就用了他写的程序,他自己又抽空做了些拓展。2、 设计思路是整个设计的灵魂拿下每个课题能有一个非常清晰的设计思路是至关重要的。只有对课题的充分理解,对各种器件的熟练掌握,勾画出基本的设计图是成功的关键,必须多花时间在设计上才能为后续工作提供更扎实的基础。翻阅各种资料,上网查询填补所需知识的空白是必要的。3、 焊接制作必须精益求精焊接必须精益求精,一丝不苟,一点的差错都可能导致实验结果错误,因此必须准确无误还要

18、工整,这样才能在调试中能比较轻松进行,也是整个电路可看性更好。4、 调试调试工作是个精细工作。在调试过程中,有些问题是芯片本身损坏引起的,也有些是因为焊接问题引起的等因此排查过程需要特别有耐心,通过对芯片功能的检验,对焊点的检查最后检查出问题所在。当最后解决问题时,电路的正确是非常振奋,也很有成就感和满足感。5、 建议设计的作品主要是用74系列集成芯片来完成的,在焊接的过程中由于芯片的引脚过多,布线工作不是很方便。有时候还因为某一跟线没有焊牢,造成电路的不稳定,这些都是有待改进的。6、 不足实验效率低,焊接水平不足导致电路稳定性不高,布线比较混乱,这些都有待提高。通过一个学期的学习,我认为要学

19、好C语言程序这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我的知识。特别是作为高职生,更要注重实践这一环节,只有这样我们才能成为合格的计算机人材。参考文献【1】钱培怡.电子电路实验及课程设计.西安电子科技大学出版社.1992【2】王毓银.数字电路逻辑设计(第三版).高等教育出版社.1999【3】陈有卿.集成电路妙用巧用300例.人民邮电出版社.1999【4】谢自美.电子线路设计实验测试.华中科技大学出版社.2000【5】高吉祥.电子技术基础实验与课程设计.电子工业出版社.2002【6】赵保终.中国集成电路大全(TTL集成电路).国防工业出版社【7】周常森.电子电路计算

20、机仿真技术.山东科学技出版社附录:程序序号类型数量174LS279(RS锁存器)1274LS48(4线7段译码驱动器)3374LS148(8线3线优先编码器)1474LS192(十进制可逆计数器)2574LS121(单稳态触发器)1674LS00(二输入与非门)2774LS20(四输入与非门)28NE55529晶体管3DG130110七段数码管(共阴极)111B键(触发开关)912发光二极管113扬声器114B键(输入开关)815电阻(510)216电阻(1K)217电阻(10K)918电阻(15K)219电阻(68K)220电容(0.01F) 221电容(0.1F)222电容(10F)223

21、电容(100F)2第 21 页 共 21 页#include #define uchar unsigned char#define uint unsigned intsbit wela_a=P30;sbit wela1=P31;sbit wela2=P37;sbit rest=P35;sbit host=P36;sbit led1=P34;/绿灯sbit led2=P33;/红灯sbit led3=P32;/黄灯sbit key1=P10;sbit key2=P11;sbit key3=P12;sbit key4=P13;sbit key5=P14;sbit key6=P15;sbit key

22、7=P16;sbit key8=P17;uchar x,q,d,s,ge,t0,t1,start,flag;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void init();/*初始函数申明*/void display(uchar s,uchar ge,uchar a);void delay(uint z);void keyscan();void main() init(); display(s,ge,a); while(1) if(host=

23、0)/主持人 delay(5); if(host=0) flag=1; start=1; delay(5); while(!host); if(rest=0)/复位 delay(5); if(rest=0) q=30; led2=1; led3=1; x=0; delay(5); start=1; delay(5); while(!rest); if(flag=1) if(start=0)/选手按下,倒计时10秒 led3=0; wela1=0; wela2=0; delay(1);TR0=0;TR1=1; display(a,ge,a); delay(1); if(start=1)/主持人按

24、下,倒计时30秒 led1=0; wela1=0; wela2=0; delay(1); TR0=1; TR1=0; display(s,ge,a); delay(1);keyscan(); void init()/*初始化*/ t0=0; t1=0; flag=0; q=30; d=10; wela_a=0; a=0; TMOD=0x11; TH0=(65536-50000)/256; TL0=(65536-50000)%256; TH1=(65536-50000)/256; TL1=(65536-50000)%256; EA=1; ET0=1; ET1=1; TR0=0; TR1=0;vo

25、id display(uchar ,s,uchar ge,uchar a)/*数码管动态扫描*/ wela1=1; P0=tablege; delay(5); wela2=1; P0=tables; delay(5); wela_a=0; P2=tablea; delay(5);void keyscan()/*按键扫描函数*/ if(key1=0) delay(5);if(key1=0) a=1; P2=tablea; start=0; TR1=1; TR0=0; delay(5); while(!key1); if(key2=0) delay(5);if(key2=0) a=2; P2=ta

26、blea; start=0; delay(5); while(!key2); if(key3=0) delay(5);if(key3=0) a=3; P2=tablea; start=0; delay(5); while(!key3); if(key4=0) delay(5);if(key4=0) a=4; P2=tablea; start=0; delay(5); while(!key4); if(key5=0) delay(5);if(key5=0) a=5; P2=tablea; start=0; delay(5); while(!key5); if(key6=0) delay(5);i

27、f(key6=0) a=6; P2=tablea; start=0; delay(5); while(!key6); if(key7=0) delay(5);if(key7=0) a=7; P2=tablea; start=0; delay(5); while(!key7); if(key8=0) delay(5);if(key8=0) a=8; P2=tablea; start=0; delay(5); while(!key8); void delay(uint z)/*延时函数*/ uint i,j; for(i=z;i0;i-) for(j=110;j0;j-);void time0()

28、 interrupt 1/*定时器0*/ TH0=(65536-50000)/256; TL0=(65536-50000)%256; s=q/10; ge=q%10; t0+; if(t0=20) t0=0; q-; s=q/10; ge=q%10; if(q=0) while(1) q=0; a=0; led1=1; led2=0; wela1=0; wela2=0; delay(1); display(s,ge,a); void time1() interrupt 3/*定时器1*/ TH1=(65536-50000)/256; TL1=(65536-50000)%256; s=d/10; ge=d%10; t1+; if(t1=20) t1=0; d-; s=d/10; ge=d%10; if(d=0) while(1) d=0; a=0; led1=1; led3=1; led2=0; wela1=0; wela2=0; delay(1); display(s,ge,a);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1