3--八位竞赛抢答器课程设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

黄河科技学院课程设计(论文)-1-目录摘要.............................................................21设计意义及要求.................................................31.1设计意义..................................................31.2设计要求..................................................32方案设计.......................................................42.1设计思路..................................................42.1.1模块化设计框架图.....................................42.1.2各个模块的实现.......................................42.1.3关于实现功能拓展的设计思路...........................52.2总体功能框图..............................................52.3元器件清单................................................63硬件设计.......................................................73.1元器件及其作用............................................73.2原理图设计................................................84软件设计.......................................................94.1软件设计思路..............................................94.2C语言源程序.............................................105软件仿真调试..................................................206总结..........................................................217参考文献......................................................22黄河科技学院课程设计(论文)-2-摘要数字技术作为当今世界上发展最快的一门科学,已被广泛地应用于计算机、自动控制、电子测量仪表、通信等各个领域。例如,在生活中,很多关于智力竞赛的电视节目的抢答环节就很好的应用了数字技术。关于竞赛抢答器的设计,最重要的是完成当参赛选手们可以开始抢答后,每次只可能有一个人抢答成功这一功能。本实验设计中,以八位竞赛抢答器为例,从设计思路、方案的选择与论证、设计基本原理以及仿真结果等系统的介绍这种抢答器实现相应功能的全部过程,并会在实现基本功能的基础上实现部分的拓展功能。关键字:单片机、抢答器、89C51、C语言黄河科技学院课程设计(论文)-3-八路竞赛抢答器设计1设计意义及要求1.1设计意义在很多关于智力竞赛的电视节目上,经常会出现抢答环节,参赛选手们在得到主持人发出的特定口令之后,都会争先恐后地按下抢答器,但每次抢答环节只有可能产生一位抢答成功的选手,同时可以断定这位参赛选手肯定是反应最快按下抢答器的。设计一个功能类似的八位抢答器不仅能够让大家进一步了解这种抢答器的工作原理,而且还能在功能上提出一些好的想法和思想,甚至可以实现部分新的功能,如果人们不断的进行具有创新性的设计实验,也许过不久那些竞赛类的电视的抢答模式就会发生一定的改变和创新,从而增加了节目的观赏性,进一步丰富大家的娱乐生活。1.2设计要求1.以单片机为核心,设计一个八位竞赛抢答器:同时供八位选手或八个代表队比赛,分别用8个按钮(1号-8号)表示。2.设置一个系统清除和抢答器控制开关S,开关有主持人控制。3.抢答器具有锁存与显示功能,即选手按按钮,锁存相应的编号,并在优先抢答器选手的编号一直保持主持人将系统清楚为止。4.抢答器具有定时抢答功能且一次抢答的时间由主持人设定(如30秒),当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,持续时间0.5S左右。5.参赛选手在设定的时间内进行抢答,抢答有效,定时器工作停止,显示器上显示选手的编号和抢答的时间并保持到主持人将系统清除为止,6.如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。黄河科技学院课程设计(论文)-4-2方案设计2.1设计思路2.1.1模块化设计框架图图2-1模块化设计框架图2.1.2各个模块的实现(1)脉冲发生器的实现根据本实验的具体要求,锁存器需要有脉冲信号的输入,及需要有相应的脉冲发生器。(2)数据锁存部分的实现实验设计要求是制作一个八位竞赛抢答器,需要对代表八位参赛选手的状态(“0”或“1”)进行相应的锁存,为了电路的简化,应该采用D触发器来实现锁存功能,则对于要实现对八位数据的锁存这一功能,可以使用两块集成了四个D触发器的74LS175芯片。(3)数据编码部分的实现编码部分是对锁存的数据进行编码,由于只有八个参赛选手,故只需要用八个不同的数字便可以代表所有的参赛选手,只要采用能对八位数据进行编码并能有八种或八种以上的输出的编码器即可达到要求。(4)数据显示部分的实现对于这样的一个仅需要显示数字的设计,很容易联想到使用七段数码管来脉冲发生器数据显示部分数据编码部分数据锁存部分开关控制数据的输入黄河科技学院课程设计(论文)-5-实现的数字的显示,而且七段数码管可以显示16种不同的输出,对于这种只需要有不少于八种的输出的设计来说,七段数码管完全可以达到要求。一般的七段数码管有10个数据输入端,所以需要有相应的译码器对输送过来的编码后的数据进行译码操作,并且这种译码器的选择必须结合数码管是共阴还是共阳的情况而定。2.1.3关于实现功能拓展的设计思路(1)实验设计的基本要求中没有提到主持人实现清零后,数码管该显示什么,这样在设计过程中我们就可以有多重选择了,本设计中设计的是让主持人清零之后,数码管显示FFF。这一功能可以通过基本的门电路来实现,把主持人和参赛选手接入的信号作为输入信号,通过门电路整合,使得到的输出信号来控制数据显示部分。(2)设计要求中没有提到参赛选手提前抢答会造成犯规的这一功能,理论上会存在有参赛选手犯规的情况的发生,这样实际中增加一个抢答犯规的功能是有一定的必要性的,同样要实现这一功能,可以通过门电路的组合,收集主持人和参赛选手接入的信号,把输出信号接到一个报警装置上,实现当主持人还未发出开始抢答指令的时候,若有参赛选手抢答了,报警装置会报警的功能。2.2总体功能框图下图所示为总体方框图。其工作原理为:接通电源后,主持人将开关断开,抢答器处于禁止状态,定时器显示设定时间;主持人将开关接通,宣布开始抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作状态开关。黄河科技学院课程设计(论文)-6-抢答按钮编码电路锁存电路译码电路显示电路主持人控制开关控制电路秒脉冲定时电路报警电路显示电路译码电路2.2总体功能框图2.3元器件清单仿真图中所需要的各种元器件如表2.3表2.3元器件清单元件名称型号数量/个用途单片机AT89C511控制核心晶振12MHZ1晶振电路电容22uF3晶振电路排阻Respack81上位电阻电阻10k1复位电路电源+5v3提供电源拨码开关BUTTON_113发出信号数码管7SEG-MPX4-BLUE1显示电路黄河科技学院课程设计(论文)-7-3硬件设计3.1元器件及其作用在八位抢答器的设计中,我主要用到了AT89C51型号单片机、晶振、电容、排阻、电阻、电源、拨码开关、7SEG-MPX4-BLUE数码管等元器件。芯片是由ISIS7PROFESSIONAL仿真软件系统提供(AT89C51)。它主要由CPU,存储器和管脚组成。所谓排阻就是若干个参数完全相同的电阻,它们的一个引脚都连到一起,作为公共引脚。其余引脚正常引出。所以如果一个排阻是由n个电阻构成的,那么它就有n+1只引脚,一般来说,最左边的那个是公共引脚。它在排阻上一般用一个色点标出来。排阻一般应用在数字电路上,比如:作为某个并行口的上拉或者下拉电阻用。使用排阻比用若干只固定电阻更方便。排阻有a型和b型的区别。a型排阻的引脚总是奇数的。它的左端有一个公共端(用白色的圆点表示),常见的排阻有4、7、8个电阻,所以引脚共有5或8或9个。B型排阻的引脚总是偶数的。它没有公共端,常见的排阻有4个电阻,所以引脚共有8个。图3.1AT89C51单片机图示及引脚排列黄河科技学院课程设计(论文)-8-3.2原理图设计根据设计要求及用protues仿真软件做出八位竞赛抢答器电路图如下:黄河科技学院课程设计(论文)-9-4软件设计4.1软件设计思路当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,持续时间0.5S左右。参赛选手在设定的时间内进行抢答,抢答有效,定时器工作停止,显示器上显示选手的编号和抢答的时间并保持到主持人将系统清除为止。如果定时时间已到,无人抢答,系统报警并禁止抢答。按键发声显示抢答号,剩余时间停止键按下?抢答键按下?停止键按下?开始键按下?程序初始化倒计时显示倒计时开始按键发声准备状态,显示FFF倒计时大于5s?显示法规号码按键发声非法抢答?停止键按下?提醒发声倒计时结束?YNNYNNNNNYYYYY黄河科技学院课程设计(论文)-10-4.2C语言源程序#includereg52.h#defineucharunsignedchar#defineuintunsignedintchars;ucharnum=0;chartime=20;//抢答时间chardatitime=30;//答题限时时间uinttt,t1;//T0,T1定时器定一秒时bitflag,s_flag=1,b_flag,fall_flag;//标志位bitK_startcountflag,K_timecountflag;//时间调整标志位sbitK0=P3^0;sbitbeep=P3^7;//蜂鸣器sbitrled=P3^1;//指示灯sbitK1=P1^0;sbitK2=P1^1;sbitK3=P1^2;sbitK4=P1^3;sbitK5=P1^4;sbitK6=P1^5;sbitK7=P1^6;sbitK8=P1^7;sbitK_Time=P3^2;//答题计时键sbitK_startcount=P3^3;//开始抢答时间调整键sbitK_timecount=P3^4;//答题计时时间调整键voiddelay(ucharms){uchary;for(;ms0;ms--)for(y=120;y0;y--);}ucharcodetabledu[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};ucharcodetablewe[]={0XFE,0XFD,0XFB,0XF7};voidT0_Init(void){TMOD=0X01;TH0=(65536-2000)/256;TL0=(65536-2000)%256;TH1=(65536-2000)/256;黄河科技

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功