单片机抢答器课程设计报告书
- 格式:doc
- 大小:136.50 KB
- 文档页数:23
课程设计说明书姓名: 学号:学院:专业:题目: 基于单片机的8路抢答器设计指导者:评阅者:目录1、背景知识 (3)2、课程设计目的 (4)3、工具/准备工作 (4)4、设计步骤及原理 (5)步骤1:系统设计 (5)步骤2:硬件设计 (5)步骤3:软件设计 (7)步骤4:硬软件调试 (11)5、设计结果及分析 (12)6、总结及心得体会 (13)7、对本设计过程及方法、手段的改进建议 (13)8、参考文献 (13)9、评价(教师) (14)基于单片机的8路抢答器设计1、背景知识单片机把我们带入了智能化的电子领域,许多繁琐的系统若由单片机进行设计,便能收到电路更简单、功能更齐全的良好效果。
若把经典的电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。
而随着技术的进步,单片机与串口通信的结合更多地应用到各个电子系统中已成一种趋势。
本设计就是基于单片机设计抢答系统,通过串口通信动态传输数据,使抢答系统有了更多更完善的功能。
单片机系统的硬件结构给予了抢答系统“身躯”,而单片机的应用程序赋予了其新的“生命”,使其在传统的抢答器面前具有电路简单、成本低、运行可靠等特色。
对于抢答器我们大家都知道那是用于选手做抢答题时用的,选手进行抢答,抢到题的选手来回答问题。
抢答器不仅考验选手的反应速度同时也要求选手具备足够的知识面和一定的勇气。
选手们都站在同一个起跑线上,体现了公平公正的原则。
现在很多文娱活动中都有抢答这一项,需要用到抢答器。
在目前的市场上,普通抢答器都需要几百块,价格比较昂贵。
本项目设计的抢答器,电路简单、成本较低、操作方便、可靠、具有较高的推广价值本设计可同时供8名选手或8个代表队参加比赛。
抢答器具有数据锁存功能、显示功能和声音提示功能。
抢答开始后,若有选手,抢答按钮,编号立即锁存,并在LED数码管上显示选手的编号,同时灯亮且伴随声音提示。
此外,要封锁输入电路,禁止其他选手抢答,最先抢答选手的编号一直保持到主持人将系统清零。
目录1、课程设计目的 (3)2、课程设计正文 (3)1、软件方面设计 (3)①总程序流程图 (3)②显示子程序流程图 (4)2、硬件方面设计 (5)①方案设计 (5)②单元电路设计 (5)③系统调试 (8)3、课程设计总结或结论 (8)4、参考文献 (8)附录一:总的原理图附录二:PCB图附录三:总程序1、课程设计目的①可以自主设计简单地电路;②掌握响应外部中断的原理;③利用Protel硬件设计电路原理图和PCB图;④初步掌握使用Proteus进行单片机的软硬件联机调试。
技术要求:①设置4个抢答台和4个抢答成功指示灯,1个比赛主持人“开始”键和1个抢答指示灯以及1个LED显示器。
②采用中断和查询结合的方法确定按键的动作。
③主持人按下“开始”键后,若有人抢答,则抢答指示灯确认有人抢答,并用7段LED显示抢答者的号码(1--4),并同时点亮对应抢答台上的抢答成功指示灯;若10秒内无人抢答,则发出超时报警,此题作废,主持人可按下“开始”键开始下一题的抢答。
2、课程设计正文1、软件设计方面①总程序流程图②显示子程序2、硬件方面设计①方案设计采用以52为内核的STC系列的芯片,组成一个单片机的最小应用系统,运用C语言编程来实现四路抢答器的设计,采用独立式键盘来作为输入,LED数码管显示,蜂鸣器来报警。
用此方案的优点是:编程简单、操作方便、成本低和错误率低。
②单元电路设计各引脚接线:通过单片机各引脚功能的介绍,本硬件设计中,P0口接数码管显示器;P1口接独立式键盘;P2.0通过PNP驱动接数码管;/ALE脚和/PSEN脚悬空,/EA脚接高电平;复位电路包含了上电复位和按键复位;晶振选择为6MHz,GND接地,VCC接+5V电源;蜂鸣电路接在P2.1上面。
针对抢答器的设计,输入电路键盘按下开始键后,开始抢答,按下相应的键,输出电路相应的LED二极管发光、数码管显示相应的序号⑴复位电路复位电路有两种复位方式:上电复位和按键复位。
目录第1章设计题目分析、方案 ........................................................... - 2 -1.1 设计任务与要求....................................................................................... - 2 -1.2 单片机的控制原理................................................................................... - 2 -1.3 方案设计................................................................................................... - 4 -1.4 AT89C51引脚分配.................................................................................. - 5 -第2章系统电路设计........................................................................ - 6 -2.1 时钟模块以及复位电路模块................................................................... - 6 -2.2 显示电路模块........................................................................................... - 7 -2.3 抢答输入模块........................................................................................... - 8 -2.4 控制模块................................................................................................... - 8 -2.5 提示模块................................................................................................... - 9 -2.6 总电路图.................................................................................................. - 11 -第3章系统软件设计...................................................................... - 12 -3.1 系统主程序设计..................................................................................... - 12 -3.2 程序流程图............................................................................................. - 13 -3.3 源程序..................................................................................................... - 14 -第4章连接调试.............................................................................. - 26 -4.1 源程序的编译......................................................................................... - 26 -4.2 peotues的仿真....................................................................................... - 27 -第5章总结...................................................................................... - 29 -第1章设计题目分析、方案1.1 设计任务与要求以单片机为核心,设计一个8位竞赛抢答器:同时供8名选手或8个代表队比赛,分别用8个按钮S0~S7表示。
单片机原理及系统课程设计专业:电气工程及其自动化班级:姓名:学号:指导教师:兰州交通大学自动化与电气工程学院2014 年 1 月 17 日基于单片机的八路抢答器1实验目的(1)进一步熟悉和掌握单片机的结构及工作原理。
(2)掌握单片机的接口技术及相关外围芯片的特性及控制方法。
(3)通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。
2八路抢答器的功能与操作2.1功能(1)抢答定时,回答定时,并调整抢答和回答时间。
(2)锁住违规抢答的选手的抢答权。
(3)保存并显示选手成绩。
2.2 操作按下抢答键之前抢答的属于违规操作,锁住他们的本次抢答权利。
按下抢答之后有权利的可以抢答,在规定时间内抢答到则进入答题环节,无人抢答则开始下一轮。
回答环节也是在规定时间内作答,正确则加分,错误则扣分,在规定时间内未作答按打错处理。
按下显示成绩后可以通过加减查看每位选手成绩,按确定退出。
按下修改后选择修改序号,“1”为修改抢答时间,“2”为修改答题时间。
确定键进入,加减键修改,确定键确认。
3八路抢答器整体设计方案本次设计以AT89C51为主芯片,利用数码管、按键、电阻、晶振、蜂鸣器等组成的硬件电路。
通过软件实现具体的功能。
软件包括如下模块:(1)初始化模块(2)等待及违规抢答处理模块(包含锁存环节)(3)倒计时模块(包含抢答和答题倒计时)(4)显示模块(包含抢答及答题按键检测环节)(5)延迟模块(包含显示和按键延迟)(6)计时模块(50ms)(7)蜂鸣模块(按音节原理发声)(8)抢答模块(有效及无效抢答)(9)回答模块(加分及减分)(10)时间调整模块(抢答及回答时间调整)(11)成绩显示模块4 硬件设计根据八路抢答器的功能要求,并结合对51系列单片机的资源分析,采用此系列中的主流型号AT89C51作为电路系统的控制核心。
基本硬件电路图如附录1所示。
4.1按键将按键的一端接地,另一端接到引脚上。
单片机抢答器课程设计报告一、引言本篇报告主要介绍了单片机抢答器的课程设计,包括设计目的、设计原理、硬件系统和软件程序等方面。
单片机抢答器是一种基于单片机技术的电子设备,可以用于学校或公司内部的竞赛或考试等场合,提高参赛者的竞争力和活跃度。
二、设计目的本次课程设计的目的是通过实践操作,掌握单片机应用技术和电子电路基础知识,提高学生自主学习和解决实际问题的能力。
同时,也为学生提供一个锻炼自己竞争能力和团队协作能力的机会。
三、设计原理单片机抢答器主要由两个部分组成:硬件系统和软件程序。
硬件系统包括按键模块、LED显示模块、蜂鸣器模块、LCD液晶显示屏模块和单片机控制模块等。
软件程序则是由C语言编写而成,主要功能是控制各个模块之间的协调工作。
四、硬件系统1. 按键模块按键模块采用矩阵按键方式实现,可以同时检测多个按键的状态。
在设计中,我们采用了4x4的矩阵按键,即16个按键。
其中,有一个按键作为重置键,用于清除上一次抢答结果。
2. LED显示模块LED显示模块采用共阴极方式实现,可以同时控制多个LED的状态。
在设计中,我们采用了8个LED灯,分别代表1~8号选手。
3. 蜂鸣器模块蜂鸣器模块可以发出不同频率的声音信号,用于提示选手抢答成功或失败。
在设计中,我们采用了一个5V的主动蜂鸣器。
4. LCD液晶显示屏模块LCD液晶显示屏模块可以显示选手抢答结果和当前比赛状态等信息。
在设计中,我们采用了一个16x2字符型液晶显示屏。
5. 单片机控制模块单片机控制模块是整个硬件系统的核心部分,主要负责各个模块之间的协调工作。
在设计中,我们采用了AT89C51单片机作为控制芯片。
五、软件程序软件程序是整个系统的灵魂部分,主要负责实现各种功能。
在本次课程设计中,我们使用C语言编写了单片机抢答器的软件程序。
主要功能包括:初始化、检测按键状态、显示比赛状态、判断抢答结果等。
六、实验结果经过多次实验,我们成功地实现了单片机抢答器的设计。
目录一课程设计题目及要求 (2)二设计整体思路 (2)三原理图 (2)四程序模块 (3)五软件程序 (4)六心得体会 (13)一、课程设计题目及要求①抢答开关电路分别设定选手抢答键8个、主持人开始抢答键和复位键,开始指示灯,犯规指示灯,抢答成功指示灯。
②系统工作后,首先由主持人按下开始键,开始指示灯亮,单片机进入20秒倒计时并显示,台位号显示0。
③选手们开始抢答,如果在20秒内无人抢答,则蜂鸣器发声报警,等待主持人按复位键,进入下一题;④若有人抢答,数码管同步显示抢答选手的编号,同时蜂鸣器器发声提示,表示抢答成功,抢答成功指示灯亮,开始指示灯灭。
同时封锁输入电路,禁止其他选手抢答⑤在主持人按下开始抢答键前,有选手提前按下抢答键时,视为抢答犯规,犯规指示灯点亮,数码管显示犯规选手台位号,同时蜂鸣器发声提示抢答犯规。
⑥主持人按下复位键,系统返回到抢答状态,进行下一轮抢答。
⑦当主机发送09H,从机回发09H,主机显示9,当主机发送非09H时,从机回发台位号,并在主机显示。
⑧二、设计整体思路根据任务要求抢答器由抢答输入、单片机识别和处理、输出信息和状态的显示、串行通信四部分组成。
抢答器的工作原理是采用单片机最小系统,用程序查询方式采用动态显示组号。
由波码开关K1~K8组成8路抢答器的输入,有复位按钮和C1,电阻组成复位电路。
单片机运行时对P1口扫描检测,判断是否有按键按下,进一步确定是哪路键位按下。
P2口做倒计时20秒两位数码管驱动,每位数码管输入为8位二进制代码。
第一位数码管为抢答台位数码显示。
D1、D2、D3发光二极管只是抢答器的工作状态,蜂鸣器BUZI发出声音提示。
其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作。
定时器倒计时,选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。
一、实训背景与目的随着电子技术的飞速发展,单片机作为一种低功耗、高性能的微处理器,被广泛应用于各个领域。
为了提高学生的实践能力和创新意识,本实训课程旨在通过设计和实现单片机抢答器,让学生深入了解单片机的基本原理、接口技术以及编程方法,同时培养学生的团队合作精神和动手能力。
二、实训内容与要求本次实训要求设计并实现一个基于单片机的六路抢答器。
该抢答器应具备以下功能:1. 抢答功能:六位选手通过按下对应的按钮(K0~K5)进行抢答,系统优先识别并锁存第一个按下按钮的选手编号。
2. 显示功能:抢答成功后,在LED数码管上显示该选手的编号。
3. 锁存功能:一旦选手抢答成功,其编号将保持显示,直至主持人手动清除。
4. 提示功能:扬声器发出报警声提示主持人抢答成功。
三、实训过程与实现1. 硬件设计本实训采用AT89C52单片机作为主控芯片,外围电路主要包括以下部分:- 按键模块:六位选手分别通过K0~K5按钮进行抢答。
- 显示模块:使用LED数码管显示选手编号。
- 锁存模块:通过单片机的I/O口实现选手编号的锁存。
- 提示模块:使用扬声器发出报警声。
2. 软件设计软件设计主要涉及单片机编程,主要包括以下部分:- 主程序:初始化单片机,设置I/O口,并进入主循环。
- 抢答程序:检测按键状态,判断是否发生抢答,并执行相应的操作。
- 显示程序:根据锁存的选手编号,更新LED数码管显示。
- 提示程序:抢答成功后,通过扬声器发出报警声。
3. 系统调试在完成硬件和软件设计后,需要进行系统调试。
主要步骤如下:- 硬件调试:检查电路连接是否正确,确保各个模块能够正常工作。
- 软件调试:通过仿真软件或实际硬件进行程序调试,修正错误。
四、实训结果与分析经过一系列的硬件和软件设计、调试,最终成功实现了基于单片机的六路抢答器。
该抢答器能够满足以下要求:1. 抢答功能:能够正确识别并锁存第一个按下按钮的选手编号。
2. 显示功能:能够通过LED数码管显示选手编号。
八路抢答器计课程设计设计题目:八路抢答器学院系别:机械与电子工程学院班级:机电自动化ZB42902设计学生:军、航、恒东、璟君、念、奇磊、治宏、罗梁川、莫春江指导老师:帅华设计时间: 2011年11月1日-12月30日目录一设计任务与要求 (4)二方案设计 (4)三硬件电路设计 (5)四软件设计 (8)五总结 (18)摘要抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。
但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低。
作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和与时性就会影响活动的开展,因此设计了本抢答器。
本设计是以八路抢答为基本理念。
考虑到依需设定限时回答的功能,利用AT89C51单片机与外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。
用开关做键盘输出,扬声器发生提示。
同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位与主控强制复位;按键锁定,在有效状态下,按键无效非法。
一、设计任务与要求一、题目:8路比赛抢答器二、基本要求:利用8051单片机中断系统,制作一个有8个按键的比赛抢答器。
在有人按键时进行对应选手显示。
三、设计任务:1.设计硬件电路,画出电路原理图;2.画出程序流程图;3.编制程序,写出源程序代码;4.写出5000字的详细说明书,要求字迹工整,原理叙述正确,会计算主要元器件的一些参数,并选择元器件;5.个人总结。
四、参考资料:1. 教材;2.《单片机实验指导书》二、方案设计方案:该系统采用51系列单片机AT89C51作为控制核心,该系统可以完成运算控制、信号识别以与显示功能的实现。
单片机抢答器实验报告(2篇)以下是网友分享的关于单片机抢答器实验报告的资料2篇,希望对您有所帮助,就爱阅读感谢您的支持。
篇一:单片机抢答器实验报告单片机八路抢答器实验报告一实验任务1. 设计一个竞赛抢答器,可同时供8名选手或者8个代表队参加比赛,他们的编号分别是1、2、3、4、5、6、7、8,各用一个抢答器的按钮,按钮的编号与选手的编号相对应。
2. 给节目主持人设计一个控制开关,用来控制系统的清零和抢答开始。
3.抢答器具有数据显示,声音提示的功能。
二.源程序(1)头文件#include#include#include#include#define uint unsigned int#define uchar unsigned char//-------------------------------------------------------------------------------------void show(); //液晶显示程序//-------------------------------------------------------------------------------------//12864液晶显示部分子程序模块//-------------------------------------------------------------------------------------sbit LCD_RS = P2 ; //寄存器输入sbit LCD_RW = P2; //液晶读/写控制sbit LCD_EN = P2; //液晶使能控制sbit LCD_PSB = P2;sbit SW1 = P1 ;sbit SW2 = P1;sbit SW3 = P1;sbit SW4 = P1;sbit SW5 = P1;sbit SW6 = P1;sbit SW7 = P1;sbit SW8 = P1;sbit beep = P3;#define LCD_data P0//sbit busy=P0; //lcd busy bitvoid lcd_xieping0(uchar x,uchar y,uchar date); void lcd_xieping(uchar x,uchar y,uchar *str); void chn_disp0(uchar code *chn);void img_disp(uchar code *img);void lcd_xieping1(uchar x,uchar y,uchar *str); void lcd_init();void write_cmd(uchar cmd); void delay_ms1(uint z);void delay_ms(uint z);void dingding(int a);//void Init_Timer0(void);void clr(void);extern unsigned char mmm[8][9]; char keynumber();(2)显示部分的程序#include “head.h”unsigned char mmm[8][9];void delay_ms(uint z)//长延时{uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void delay_ms1(uint z)//长延时{uint x,y;for(x=z;x>0;x--)for(y=10;y>0;y--);}//-------------------------------------------------------------------------------------// 液晶显示部分//-------------------------------------------------------------------------------------void write_cmd(uchar cmd){LCD_RS = 0;LCD_RW = 0;LCD_EN = 0;P0 = cmd;delay_ms1(1);LCD_EN = 1;delay_ms1(1);LCD_EN = 0;}void write_dat(uchar dat){LCD_RS = 1;LCD_RW = 0;LCD_EN = 0;P0 = dat;delay_ms1(1);LCD_EN = 1;delay_ms1(1);LCD_EN = 0;}void lcd_xieping0(uchar x,uchar y,uchar date) {switch(x){case 0: write_cmd(0x80+y); break;case 1: write_cmd(0x90+y); break;case 2: write_cmd(0x88+y); break;case 3: write_cmd(0x98+y); break;}write_dat(date);}void lcd_xieping(uchar x,uchar y,uchar *str) {switch(x){case 0: write_cmd(0x80+y); break;case 1: write_cmd(0x90+y); break;case 2: write_cmd(0x88+y); break;case 3: write_cmd(0x98+y); break;}while (*str){write_dat(*str);str++;}}void lcd_xieping1(uchar x,uchar y,uchar *str) {switch(x){case 0: write_cmd(0x84+y); break;case 1: write_cmd(0x94+y); break;case 2: write_cmd(0x8C+y); break; case 3: write_cmd(0x9C+y); break; }while (*str){write_dat(*str);str++;}}void lcd_init(){LCD_PSB = 1; //并口方式write_cmd(0x30); //基本指令操作delay_ms(5);write_cmd(0x0C); //显示开,关光标delay_ms(5);write_cmd(0x01); //清除显示内容delay_ms(5);}void chn_disp0(uchar code *chn) {uchar i,j;write_cmd(0x30); //void write_cmd(uchar cmd) write_cmd(0x84);j=0;for(i=0;iwrite_dat(chn[j*16+i]);write_cmd(0x8c);j=1;for(i=0;iwrite_dat(chn[j*16+i]);}void show(){lcd_xieping(0,0,mmm[0]);lcd_xieping(0,4,mmm[1]);lcd_xieping(1,0,mmm[2]);lcd_xieping(1,4,mmm[3]);lcd_xieping(2,0,mmm[4]);lcd_xieping(2,4,mmm[5]);lcd_xieping(3,0,mmm[6]);lcd_xieping(3,4,mmm[7]);}(3)抢答器:#include “head.h”unsigned int ms,i=0;//定义全局变量bit FLag=0;//定义停止,计时标志char yy[8]={0,0,0,0,0,0,0,0};void main(){unsigned char num=0,k,j,temp;EX0=1; //外部中断0开IT0=1; //IT1=0表示边沿触发EX1=1; //外部中断1开IT1=1; //IT1=1表示边沿触发Init_Timer0();lcd_init();for(k=0;kfor(j=0;jmmm[k][j]=0;//mmm[0][0]=…0‟;mmm[1][0]=…0‟;mmm[2][0]=…0‟;mmm[3][0]=…0‟;mmm[4][0]=…0‟;mmm[5][ 0]=…0‟;mmm[6][0]=…0‟;mmm[7][0]=…0‟;while(1){temp= keynumber();if(temp){mmm[i][0]=temp+‟0‟;mmm[i][1]=…:‟;mmm[i][2]= ms/1000+‟0‟;mmm[i][3]=ms%1000/100+‟0‟;mmm[i][4]=ms%100/10+‟0‟;mmm[i][5]=ms%10+‟0‟;mmm[i][6]=…m‟;mmm[i][7]=…s‟;mmm[i][8]=…\0‟;show();i++;}show();}}/*------------------------------------------------定时器初始化子程序------------------------------------------------*/ void Init_Timer0(void){TMOD |= 0x01;EA=1;ET0=1;TR0=1;}/*------------------------------------------------ 定时器中断子程序------------------------------------------------*/ void Timer0_isr(void) interrupt 1{TH0=0xFC; //重新赋值1ms TL0=0x66;if(FLag){ms++;if (ms==60000){ms=0;}}}/*------------------------------------------------ 外部中断0程序------------------------------------------------*/ void ISR_INT0(void) interrupt 0{EX0=0;dingding(50);lcd_xieping(0,2,” 可以开始抢答“); FLag=!FLag;}/*------------------------------------------------ 外部中断1程序------------------------------------------------*/ void ISR_INT1(void) interrupt 2 {if(FLag==0)//停止时才可以清零clr();}/*------------------------------------------------ 数值清零------------------------------------------------*/ void clr(void){unsigned char k,j;for(k=0;kmmm[k][j]=0;for(k=0;kms=0; //清空计时i=0;write_cmd(0x01); //清屏}char keynumber(){if((!SW1)&&(!yy[0])){delay_ms1(20);if((!SW1)&&(!yy[0])) {yy[0]=1;return 1;}}if((!SW2)&&(!yy[1])){delay_ms1(20);if(!SW2){yy[1]=1; return 2; } } if((!SW3)&&(!yy[2])) { delay_ms1(20); if(!SW3) { yy[2]=1; return 3; } } if((!SW4)&&(!yy[3])) { delay_ms1(20); if(!SW4) { yy[3]=1; return 4; } } if((!SW5)&&(!yy[4])) { delay_ms1(20); if(!SW5){ yy[4]=1; return 5; } } if((!SW6)&&(!yy[5])) { delay_ms1(20); if(!SW6) { yy[5]=1; return 6; } } if((!SW7)&&(!yy[6])) { delay_ms1(20); if(!SW7){yy[6]=1; return 7; }}if((!SW8)&&(!yy[7])) {delay_ms1(20); if(!SW8) {yy[7]=1; return 8; }}return 0;}void dingding(int a) {int k;for(k=0;kbeep=0;delay_ms(1); beep=1; }}篇二:单片机抢答器实验报告实习(设计) 报告姓名班级学号实习(设计) 科目基于51单片机的五路抢答器实习(设计) 地点实习(设计) 时间电气工程及自动化学院School of Electrical Engineering & Automation说明:(1)本日志用于记录实习(设计)过程中的各项活动内容,要求学生必须填写具体、齐全、工整。
单片机AT89C52时钟电路复位电路按键电路控制电路显示电路驱动电路发声电路1 系统总体设计方案1.1 设计课题任务设计一个具有特定功能的抢答器。
1.2 功能要求说明(1)该抢答器上电或按键复位后能自动显示系统提示符“P .”。
(2)主持人按下开始按钮后,抢答开始并限定时间30S 。
(3)10S 内无人抢答,蜂鸣器发出音响。
(4)主持人按下开始按钮之前有人按下抢答器,抢答违规,显示器显示违规台号,违规指示灯亮,其它按钮不起作用。
(5)正常抢答,显示器显示台号,蜂鸣器发出音响,其它抢答按钮无效。
(6)正常抢答下,从按下抢答按钮开始30S 内,答完按钮没按下,则作超时处理,超时处理时,违规指示灯亮,数码管显示违规台号。
蜂鸣器发出音响。
(7)各台数字显示的消除,蜂鸣器音响及违规指示灯的关断,都要通过主持人按复位按钮。
1.3 总体方案介绍及工作原理抢答器的总体功能原理是以AT89S52单片机为主要的控制核心,通过外接8个独立式键盘作为控制信号源,1个四位一体数码管作为显示器件,蜂鸣器作为报警器件,单片机实时的去执行相应的功能。
在数码管上显示出来,此时通过不同的按键来观看和调节各种数据。
CPU 控制原理图如图1-1所示。
图1-1抢答器总体方框图2 硬件系统的设计2.1 系统各功能模块介绍2.1.1 AT89S52控制模块考虑到设计功能需要,控制器的功能用于外部键盘信号的接收和识别、数码管的显示控制,定时器应用等,我们选择了学习过的A T89S52系列单片机,具有反应速度极快,工作效率特高的特点。
2.1.2 键盘功能模块根据系统的基本的要求,基于时间的观看和设定等功能,采用由八个键构成的独立式键盘分别接在AT89S52单片机的P1.0-P1.7,非常的方便,在软件的设计时带来了极大的方便,使程序简易明了,可读性强。
本次设计中,八个键分别定义为开始键、一号键、二号键、三号键…答题键,对应着开始答题,各个选手抢答,答题完毕各键功能单一,互不影响,操作起来十分的清晰与方便。
目录绪论------------------------------------------------------------------------------------------------------------ II引言------------------------------------------------------------------------------------------------------------- 1第1章系统设计内容--------------------------------------------------------------------------------- 2 1.1 系统设计依据------------------------------------------------------------------------------------------- 2 1.2 设计任务和要求------------------------------------------------------- 2 1.3 设计目的------------------------------------------------------------------------------------------------- 2第2章硬件设计-------------------------------------------------------------------------------------- 5 2.1 单片机控制原理---------------------------------------------------------------------------------------- 5 2.2 抢答器的原理------------------------------------------------------------------------------------------- 5 2.2.1 原理框图---------------------------------------------------------------------------------------------- 5 2.3 功能模块电路------------------------------------------------------------------------------------------- 5 2.3.1 开始抢答电路和选手抢答键--------------------------------------------------------------------- 5 2.3.2.显示与显示驱动电路------------------------------------------------------------------------------ 5 第3章软件设计---------------------------------------------------------------------------------------- 10 3.1程序设计-------------------------------------------------------------------------------------------------- 10第4章系统调试-------------------------------------------------------- 18第5章总结------------------------------------------------------------ 18 参考文献----------------------------------------------------------------- 19附录一程序代码---------------------------------------------------------- 20 附录二原理图------------------------------------------------------------ 27摘要随着社会的不断进步,电子技术也飞速的向前发展.特别是大规模集成电路的发展,把我们带进了电子化时代。
电子产品的日益增多,也让我们的生活越来越方便。
特别是计算机的发展,真可谓是突飞猛进。
自从1946年世界上第一台计算机的诞生以来,还不到六十年的时间,计算机就取得了举世瞩目的成绩。
特别是在通信领域,实现了信息一体化的时代。
作为大学生的我们,更需要加强实践能力的培养。
课程设计在一定程度上反映了我们对理论知识的理解程度,是理论与实践的桥梁。
它不仅能锻炼我们的动手能力,而且能够培养我们对问题的思考能力以及对知识的进一步了解。
当你能把你所学到知识化作为现实的东西时,我们能力就提升到一个新台阶。
很多人都认为学习是枯燥无味的,有时觉得与现实太遥远。
在学习之余,我们仍然可以找到一点有趣的事情,比如说做一个声控灯泡、数字钟等等。
生活中我们要找到自己感兴趣的东西。
这次综合课程设计中,我们制作了八路抢答器。
抢答器是为智力竞赛参赛者答题时进行抢答而设计的一种优先判决器电路,广泛应用于各种知识竞赛、文娱活动等场合。
能够实现抢答器功能的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式,但这种方式制作过程复杂,而且准确性与可靠性不高,成品面积大,安装、维护困难。
本节介绍一种利用51单片机作为核心部件进行逻辑控制及信号产生的八路抢答器。
近年来,随着单片机档次的不断提高,功能的不断完善,其应用日趋成熟、应用领域日趋扩大,特别是工业测控、尖端武器和日用家电等领域更是因为有了单片机而生辉增色。
单片机应用技术已成为一项新的工程应用技术。
本次课程设计我们做的是八路抢答器,我们采用AT89C51单片机实现抢答功能,性能更稳定,更易操作调试。
关键词:多路数字抢答器AT89C51 PROTEUS·引言随着电子技术的飞速发展,基于单片机的控制系统已经广泛应用于工业、农业、电力、电子、智能楼宇等行业。
微型计算机作为嵌入式控制系统的主体与核心,代替了传统的控制系统的常规电子线路。
同时楼宇智能化的发展与成熟,也为基于单片机的照明控制系统的普及与应用奠定了坚实的基础。
电子智能抢答器在抢答过程中,为了知道哪一组或哪一位选手先回答问题,必须要设计一个系统来完成这个任务。
如果在抢答中,靠视觉是很难判断出哪组先答题。
利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒也可以分辨出使哪组优先回答问题。
抢答组数可以在八组以内任意使用,本系统设计为模块形式采用九针插头进行连接,系统工作原理本系统采用AT89C51单片机作为核心。
控制系统的五个模块分别为:单片机最小系统、显示模块、显示驱动模块、抢答开关模块、音乐音频输出模块。
多路数字抢答器在各种智力竞赛中经常用到。
在各校举行的各种竞赛中我们也经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。
为解决这个问题,我准备借本次课程设计的机会制作一个八路数显抢答器。
一方面加深我们对所学习的知识的了解,巩固模拟、数字电路知识,也提升我们解决日常生活中常见问题的能力,掌握一般设计方法与设计步骤。
积累实际设计制作经验,为走向更复杂更实用的应用领域奠定基础。
控制系统主要由单片机控制电路、存储器接口电路及显示电路组成。
具体以AT89C51单片机为系统工作核心,负责控制各个部分协调工作。
在其外围接上了复位电路、上拉电阻、数码管、按钮及扬声器,其中用到了WAVE软件,集成调试环境,集成编辑器、编译器、调试器,支持软件模拟等。
同时也用到了PROTEUS软件,通过仿真可完全实现对所设计系统的功能的模拟。
1绪论单片机作为计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。
对于计算机专业的学生来说,即使暂时没有从事单片机的应用与开发,学习单片机也有很重要的意义。
学习它,不仅为将来可能从事该方面的开发打下基础,另一方面,由于单片机作为微型计算机的一个种类,麻雀虽小,五脏俱全,可以把它当作微型计算机的一个简化模型来看待,学习单片机可以加深对微型计算机工作原理的理解,更加清楚计算机的脉络。
同时,提供了一个实际应用手段。
21世纪,是一个信息技术飞速发展的时代,智力竞赛是一种形式比较活泼的教育方式,是人们休闲娱乐生活的一部分。
这些竞赛一方面充实了人们的娱乐生活,另一方面也提高了人们努力汲取相关领域的知识的兴趣。
智力竞赛,也就是几个参赛选手之间在规定的时间,规定的地点相互竞争的比赛。
抢答是各种竞赛常用的一种形式。
在抢答赛中,往往要有主持人宣布抢答的开始,还要确定是哪个选手抢到了答题权,具体答题的时间有时也要设定。
这些如果仅凭主持人的主观判断,很容易出现误判的情况。
因此,在竞赛中,抢答器就扮演了一个非常重要的角色。
第1章系统设计内容1.1系统设计依据抢答器由计数器、寄存器、集成定时器和译码显示等组合、时序电路组成。
可分为抢答电路,定时电路,报警电路等几个单元部分。
每个单元电路分别可以处理一些抢答竞赛中的基本问题。
本次课程设计设计的是一个多路定时抢答器,是一个多于两位选手参赛的一个抢答器,具有锁存和显示功能。
同时有主持人控制系统的清零和抢答的开始。
抢答开始后,若有任何一名选手按动抢答按钮,抢答器就会显示该选手编号直至系统被主持人清零,,同时其他人再抢答就无效了。
1.2设计任务和要求设计一个八路抢答器要求:(1)设计出硬件电路;(2)设计出软件编程方法,并写出源代码;(3)用PROTEUS进行仿真;(4)论文格式要符合学院的统一规定,结构要合符逻辑,表达要得体。
1.3 设计目的通过设计学习单片机最小系统的基本设计方法,掌握单片机应用系统的开发调试过程。
(1)学习单片机开发工具功能、特点和使用方法。
(2)学会单片机控制系统程序的编制和编制和调试方法。
(3)设计单片机抢答器硬件电路,绘制出电路原理图。
(4)编制并调试出键盘扫描程序和显示驱动程序。
(5)掌握单片机定时器的基本用法,编制出定时器的中断程序。
第2章硬件设计2.1 单片机控制原理单片机(SCM)是单片微型计算机(Single Chip Microcomputer)的简称。