电子综合设计实验八路抢答器设计.doc_第1页
电子综合设计实验八路抢答器设计.doc_第2页
电子综合设计实验八路抢答器设计.doc_第3页
电子综合设计实验八路抢答器设计.doc_第4页
电子综合设计实验八路抢答器设计.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

物理与电子信息工程学院实验报告实验课程名称:电子综合设计实验实验项目名称:八路智力抢答器班 级: 0912241 姓 名: 学 号: 成 绩:_ 实 验 时 间: 2011.10.25 1. 实验目的(1)掌握八路抢答器的工作原理。(2)掌握单片机的使用方法。(3)掌握程序的编写、调试和下载方法。(4)学会分析、观察及调式电路。2. 仪器设备at89c51单片机 1 个11.0592m晶振 1个四位共阴极数码管 1个按键 10个led 各1个22pf瓷片电容 2个10uf电解电容1个排阻 1k*8 2个10k电阻若干基于单片机的八路抢答器设计方案本题利用at89c51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手号码。用开关做键盘输出,扬声器发生提示。系统达到要求:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可是在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,时间完后系统自动复位;按键锁定,在有效状态下,按键无效非法。抢答器的系统概述系统的主要功能:本系统是借用单片机采用模块化设计的八路抢答器,包括8路抢答按纽、计时显示、提示功能等(根据需要可另设或多设相关功能)、开始与结束控制按钮、时限设定、各种相关显示调控功能等(根据需要也可另设或多设相关功能)。参赛者系统,除享有抢答按纽的权利功能外,还有人性化的提示功能和时间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;主控系统的控制按钮做开始与结束控制,根据活动参赛者的层次,对提前抡答者的行为设定为非法或阻隔,若设有非法抢答控制功能时,在主控处带有公示性显示的非法抡答者的台位号,对抢答限时及回答问题限时设为倒计时,并有显示提示。系统的主要功能模块方框图如图1所示: at89c51单片机4位七段数码管显示声音电路=8路抢答按键输入复位电路开始、结束按键输入加一、减一按键输入时钟图1 系统主要功能模块本系统采用模块化设计的八路抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。一共有8个按键输入,分别对应8路选手的抢答按键。主持人有开始和结束键。在后台主持人可以修改,抢答时间和选手回答问题的时间设置,原始状态下抢答时间为20s,回答问题时间为30s。通过加键和减键修改上述时间,改完后结束键确定。新时间开始有效,主持人按键开始后,选手开始抢答为有效,数码显示屏显示抢答时间倒计时和选手号,在最后五秒扬声器发生提示。如果主持人没有按下开始键而选手就抢答视为犯规,数码显示屏显示犯规者的代号,扬声器持续发生。主持人可按键结束,新一轮抢答开始。单片机是整个抢答器的核心,内部电路设计用汇编语言编写。它完成了时间参数的设定,抢按号码的译码,保存;显示;输出,抢按及答题倒计时功能等。本设计中,有一个共阴的数码管组,四个数码管。其中两个显示时间,一个空位,一个显示抢答号码。主持人依次按下复位键(reset),开始键后开始抢答。可以抢按:超时数码管显示“fff”,当抢按超过规定时间或答题超过规定时间后数码管显示“fff”。若有选手在规定时间内抢按成功,则可以答题,数码管显示抢答时间的同时也显示选手号码。若在按开始键前抢答表示违规,数码管显示“ff”并显示选手号码。系统需求分析1在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。2抢答限定时间和回答问题的时间可以在199s设定。3可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示。4抢答时间和回答问题时间倒记时显示,时间完后系统自动复位。5 抢答限定时间内使用锦囊回答时间将加到60s。6按键锁定,在有效状态下,按键无效非法。抢答器的工作流程抢答器的基本工作原理4:在抢答竞赛或呼叫时,有多个信号同时或不同时送入主电路中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部的定时器开始工作,记录有关时间并产生超时信号。在整个抢答器工作过程中,显示电路、声音电路等还要根据现场的实际情况向外电路输出相应信号。抢答器的工作流程分为:系统复位、正常流程、违例流程等几部分,如图2所示,下面分别予以介绍。加载程序运 行行开始开始数码管显示fff开始抢按时间倒计时开始前有选手抢按显示违例选手号码并伴有语音报警倒计时结束,超时有选手抢按显示fff显示选手号码,倒计时时间,语音报警,答题,答题时间倒计时正常流程违规流程若超过答题时间,则数码管显示fff答题完毕根据选手表现,规则由主持人减分图2 抢答器工作流程抢答器的工作过程1、 主持人按抢答开始键,会有红灯亮,并立刻进入抢答倒计时(预设20s抢答时间),如有选手抢答,会有提示音和一个绿灯亮,并会显示0,不进行抢答查询,所以只有第一个按抢答的选手有效。 2、如倒计时期间,主持人想停止倒计时可以随时按“停止”按键,系统会自动进入准备状态,等待主持人按“抢答开始”进入下次抢答计时。3、如果主持人未按“抢答开始”键,而有人按了抢答按键,犯规抢答,led上不断闪烁ff和犯规号数并响个不停,直到按下“停止” 键为止。总而言之,本课题利用at89c51单片机及外围接口实现的抢答系统设计了抢答器,该抢答器增加了新功能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。总体原理图图4 系统原理图图中u1为单片机at89c51,u2为芯片74hc30,u3为芯片74ls04。k1k8分别为8路抢答按键,分别接到单片机的p1.0p1.7中。开始按键与结束按键分别接到单片机的10、11脚,由于单片机的10、11脚既有串行接口rxd、txd功能,又有p3.0、p3.1的io端口功能,此处按键用到单片机10、11脚的io端口功能。抢答时间调整按键和回答时间调整按键分别接到单片机的13、14管脚,加一按键和减一按键分别接到单片机的15、16管脚。4位七段数码管段选p0口。4位七段数码管的位选接p2口低3位,蜂鸣器输出为p3.7口。软件设计1.主程序系统结构图系统初始化模块按键模块非法抢答模块正确抢答模块调整抢答时间调整回答时间模块数码显示模块图13软件系统结构图2.程序流程图-主流程图如14所示:显示fff开始键加一键减一键回答时间 调整抢答时间去抖动非法抢答处理显示犯规正常抢答 显示抢答号并倒计时y yy 初始化图14 程序设计流程图3.复位图图15 复位显示三个fff该图显示当单片机复位后,在4位七段数码管上显示的初始状态“f ff”字符。4.设置计时时间图16 计时时间为17秒该图显示通过加一按键操作后在4位数码管上显示的计时时间为17秒。5.非法抢答并显示座号图17 三号选手非法抢答该图显示的是若三号选手非法抢答时候,第一位字符显示单片机判定的非法选手“3”号选手,在4位数码管上的后两位显示非法抢答字符“ff”。6.抢答成功并显示倒计时图18 六号选手抢答图中显示的是若6号选手抢答成功的时候,4位数码管的第一显示是“6”号选手抢答成功,最后两位显示选手答题倒计时时间还有25秒。程序#include /*- 宏定义 -*/ #define uint unsigned int #define uchar unsigned char /*- 共阴极数码管编码表 0 - f显示 -*/ unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71; sbit start_stop = p36; sbit reset = p37; sbit key1 = p10; sbit key2 = p11; sbit key3 = p12; sbit key4 = p13; sbit key5 = p14; sbit key6 = p15; sbit key7 = p16; sbit key8 = p17; sbit state = p34; sbit bao = p33;sbit xiang=p32;bit start_stop_flag = 0; bit key1_flag = 0; bit key2_flag = 0; bit key3_flag = 0; bit key4_flag = 0; bit key5_flag = 0; bit key6_flag = 0; bit key7_flag = 0; bit key8_flag = 0; bit reset_flag = 0; bit action = 0; uchar second = 20; uchar timer0_count = 0; uchar number = 0; uchar number_display = 0; void delay(uint z) uint x,y; for(x=z;x0;x-) for(y=110;y0;y-); void display(uchar number,uchar second) uchar second_first,second_second; second_first = second / 10; second_second = second % 10; p2 = 0xfe; p0 = tablenumber; delay(2); p2 = 0xfd; p0 = 0x40; delay(2); p2 = 0xfb; p0 = tablesecond_first; delay(2); p2 = 0xf7; p0 = tablesecond_second; delay(2); void start_stop_keyscan() if(start_stop != 0)if(p1!=0xff)bao=0;xiang=0;delay(3000);xiang=1; if(start_stop = 0) delay(8); if(start_stop = 0)&(!start_stop_flag) start_stop_flag = 1; action = 1; tr0 = 1; state = 0; /xiang=1; else start_stop_flag = 0; uchar key_scan8() if(key1 = 0) delay(8); if(key1 = 0)&(!key1_flag) key1_flag = 1; number = 1; number_display = number; else key1_flag = 0; number = 0; if(key2 = 0) delay(8); if(key2 = 0)&(!key2_flag) key2_flag = 1; number = 2; number_display = number; else key2_flag = 0; number = 0; if(key3 = 0) delay(8); if(key3 = 0)&(!key3_flag) key3_flag = 1; number = 3; number_display = number; else key3_flag = 0; number = 0; if(key4 = 0) delay(8); if(key4 = 0)&(!key4_flag) key4_flag = 1; number = 4; number_display = number; else key4_flag = 0; number = 0; if(key5 = 0) delay(8); if(key5 = 0)&(!key5_flag) key5_flag = 1; number = 5; number_display = number; else key5_flag = 0; number = 0; if(key6 = 0) delay(8); if(key6 = 0)&(!key6_flag) key6_flag = 1; number = 6; number_display = number; else key6_flag = 0; number = 0; if(key7 = 0) delay(8); if(key7 = 0)&(!key7_flag) key7_flag = 1; number = 7; number_display = number; else key7_flag = 0; number = 0; if(key8 = 0) delay(8); if(key8 = 0)&(!key8_flag) key8_flag = 1; number = 8; number_display = number; else key8_flag = 0; number = 0; if(number_display != 0) return 1; else return 0; void reset_keyscan() if(reset = 0) delay(8); if(reset = 0)&(!reset_flag) reset_fla

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论