文档库 最新最全的文档下载
当前位置:文档库 › 基于51单片机的16路抢答器

基于51单片机的16路抢答器

基于51单片机的16路抢答器
基于51单片机的16路抢答器

最近学习51单片机,偶尔有些想法,随手写了些程序。下面是实现16路抢答器功能的C语言代码。绝对原创,欢迎各位参考,引用时请注明出处。由于各种开发板布线不尽相同,各位可以根据实际情况,稍加修改即可。

作者:唐全延

#include

#define uchar unsigned char

#define uint unsigned int

sbit b=P3^2;

uchar key,num,num2=10,num1=11;

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

void scankeys();

void display();

void delay(uchar);

void de(uchar);

void main()

{

TMOD=0x11;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

if(num2==10)

{ b=0;

delay(10);

b=1;

}

while(1)

{

if(key!=0|num2==0)

{

b=0;

delay(100);

b=1;

TR0=0;

while(1)

{

display();

}

scankeys();

display();

}

}

void t0() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

num++;

if(num==20)

{

num=0;

num1--;

if(num1==0)

num1=11;

}

}

void delay(uint a)

{

uint i,j;

for(i=a;i>0;i--)

for(j=120;j>0;j--);

}

void de(uchar c)

{

uchar k,l;

for(k=c;k>0;k--)

for(l=88;l>0;l--);

}

void display()

{

uchar b0,b1,b6,b7;

num2=num1-1;

b0=key%10;

b1=key/10;

b6=num2%10;

b7=num2/10;

P0=table[b6];

P1=6;

delay(1);

P0=table[b7];

delay(1);

P0=table[b1];

P1=1;

delay(1);

P0=table[b0];

P1=0;

delay(1);

}

void scankeys()

{

uchar temp;

P2=0xfe;

de(1);

temp=P2;

if(temp!=0xfe)

{

switch(temp)

{

case 0x7e:

key=1;

break;

case 0xbe:

key=2;

break;

case 0xde:

key=3;

break;

case 0xee:

key=4;

break;

}

}

P2=0xfd;

de(1);

temp=P2;

if(temp!=0xfd)

{

switch(temp)

{

case 0x7d:

key=5;

break;

key=6;

break;

case 0xdd:

key=7;

break;

case 0xed:

key=8;

break;

}

}

P2=0xfb;

de(1);

temp=P2;

if(temp!=0xfb)

{

temp=P2;

switch(temp)

{

case 0x7b:

key=9;

break;

case 0xbb:

key=10;

break;

case 0xdb:

key=11;

break;

case 0xeb:

key=12;

break;

}

}

P2=0xf7;

de(1);

temp=P2;

if(temp!=0xf7)

{

temp=P2;

switch(temp)

{

case 0x77:

key=13;

break;

key=14;

break;

case 0xd7:

key=15;

break;

case 0xe7:

key=16;

break;

}

}

}

根据单片机的三路抢答器的设计王辉

基于单片机的三路抢答器的设计 1课程设计的任务与要求 1.1 课程设计的任务 (1)设计一个可供3人进行的抢答器。 (2)系统设置复位按钮,按动后,重新开始抢答。 (3)抢答器开始时数码管显示序号00,选手抢答实行优先显示,优先抢答选手的编号一直保持到主持人将系统清除为止。抢答后显示优先抢答者序号,同时发出音响,并且不出现其他抢答者的序号。 (4)抢答器具有定时抢答功能,且一次抢答的时间有主持人设定,本抢答器的时间设定为30秒,当主持人启动“开始”开关后,定时器开始减计时。 (5)设定的抢答时间内,选手可以抢答,这时定时器停止工作,显示器上显示选手的号码和抢答时间。并保持到主持人按复位键。 1.2 课程设计的要求 (1)基于单片机的三路抢答器的设计,并用Proteus设计与仿真出来。 (2)程序用Keil编程出来,并且生成Hex文件。 (3)设计的方案要能够长期,有效,稳定的运行。 (4)力求简单实用。 1.3 课程设计的研究基础 本设计是以三路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答时间和回答问题时间倒记时显示,满时后系统计时手动复位。 2 基于单片机三路抢答器系统方案制定 2.1 方案提出 方案一:

图1 方案一设计方案 方案二: 图2 方案二设计方案 2.2 方案比较 第一个方案比第二个方案多了一个驱动电路,所以第一个方案的电路会比较复杂。 2.3 方案论证 该系统采用51系列单片机AT89C52作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。 2.4 方案选择 通过以上两个方案的比较,选择第二个方案。 3 基于单片机三路抢答器系统方案设计 3.1各单元模块功能介绍及电路设计

51单片机 4路抢答器

先说下我这个4路抢答器的功能: 5个按键,第五个是复位。第一个按键到第四个按键分别对应4个led 灯,只要1到4的其中任何一个按键按下,其对应的led灯就会亮,再按其他按键,不会有其他led灯亮。第五个按键进行复位,开始下一轮抢答。不多说直接上程序和protues仿真图如下: 注意:我试了下,程序有点小问题,(编译是完全通过的)我也没改出来,毕竟小弟我也才学,有大神知道的话可以给我说说,,谢谢。 #include//51头文件 sbit key0 = P3^0;//定义key0,为P3^0引脚 sbit key1 = P3^1;//定义key1,为P3^1引脚 sbit key2 = P3^2;//定义key2,为P3^2引脚 sbit key3 = P3^3;//定义key3,为P3^3引脚 sbit key4 = P3^4;//定义key4,为P3^4引脚 void main()//主函数 { while(1)死循环 { if(key0==0) {P1 = 0xfe;P3 = 0xf0;}//如果key0等于0,即闭合,led1亮,将其他三个按钮锁定为低电平 else if(key1==0) {P1 = 0xfd;P3 = 0xf0;}//如果key0等于1,即闭合,led2

亮,将其他三个按钮锁定为低电平 else if(key2==0) {P1 = 0xfb;P3 = 0xf0;}//如果key0等于2,即闭合,led3亮,将其他三个按钮锁定为低电平 else if(key3==0) {P1 = 0xf7;P3 = 0xf0;}//如果key0等于3,即闭合,led4亮,将其他三个按钮锁定为低电平 if(key4==0) //复位按钮按下闭合,则复位 { P1 = 0xff;P3 = 0xff; } } }

基于51单片机的6路抢答器

摘要 此次设计选择使用AT89C51单片机为核心的控制元件,设计制作一个简易的抢答器。本设计是以AT89C51单片机作为控制的主要核心,LED显示器,蜂鸣器等六路抢答器的程序,并且利用了单片机的延迟时电路,时钟电路,键复位电路以及定时器/中断等其他电路。六路抢答器的设计特点是让选手应答时间与选手号码实时显示出来,利用复位电路开始新一轮的比赛或者游戏,我们使用的也是我们所掌握的C 语言来进行编程,实现了一些基本功能。 该系统的设计是可行的,以确定准确,简便,强烈的扩展能力。它的体现的功能主要是比赛开始时,主持人读完题目后按下抢答键,语音提示答题开始,提示音结束后开始倒计时,这时数码管开始进行10s 的倒计时,当有选手进行抢答时,选手按下抢答键,这时候数码管显示屏上就会显示出对应答题者的编号以及抢答所剩余的时间。如果10秒计时时间到了还没有人做出抢答,蜂鸣器就会发出声音并且语音提示抢答结束,这一题就作废即所有人均不得分,然后开始新一轮的抢答。在下一轮抢答开始之前按下复位键将时间归零,再按下开始键进行新的一轮。抢答者回答正确后,评审员按下加分键,该选手编号所对应的数码管显示的数字就增加(按一次加一分,最高显示9分)。相反,如果抢答者回答错误,在抢答者分数不为0的情况下,评审员按下减分键,该选手编号所对应的数码管显示数字就减少(按一次减一分,最低显示0分)。 关键词:单片机、AT89C51、抢答器 Abstract:The design options using AT89C51 microcontroller as the core control elements, design a simple Responder. The design is based on the six-way Responder AT89C51 microcontroller as the main core control, LED display, beeper and other procedures, and use of the single-chip delay circuit, clock circuit, key reset circuit and a timer / interrupt other circuits. Six-way Responder design feature is to allow players the response time and the player numbers displayed in real time, using the reset circuit to start a new round of the competition or game, we used our disposal C language programming, to achieve some basic functions. The design of the system is feasible to determine the accurate, simple, strong expansion capability. Its main function is to reflect the start of the game, the host title after reading press answer key, voice

单片机实验8路抢答器C语言知识版

单片机综合实验报告 题目: 8路抢答器实验 班级: 姓名: 学号: 指导老师: 时间:

一、实验内容: 以单片机为核心,设计一个8位竞赛抢答器:同时供8名选手或8个代表队比赛,分别用8个按钮S0~S7表示。本实验有Protues软件仿真。 分别设置一个抢答控制开关S1和复位开关S2,由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮抢答时,锁存相应的编号,并且优先抢答选手的编号一直保持显示在显示器上,直到主持人将系统复位为止。 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定为30秒。 当主持人启动“开始”键后,定时器进行减计时,同时绿色LED灯亮。 二、实验电路及功能说明 分别设置一个抢答控制开关S1和复位开关S2,由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮抢答时,锁存相应的编号,并且优先抢答选手的编号一直保持显示在显示器上,直到主持人将系统复位为止。参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统复位为止。复位后参赛队员可继续抢答。 如果定时时间已到,无人抢答,本次抢答无效,系统报警红色LED灯亮,并禁止抢答,定时显示器上显示00。

三、实验程序流程图: 主程序; 非法抢答序;抢答时间调整程序;回答时间调整程序;倒计时程序;正常抢答处理程序;犯规处理程序;显示及发声程序。主流程图如下图所示 子程序

四、实验结果分析 五、心得体会

六、程序清单 #include #define uchar unsigned char #define uint unsigned int sbit wela_a=P3^0; sbit wela1=P3^1; sbit wela2=P3^7; sbit rest=P3^5; sbit host=P3^6; sbit led1=P3^4;//绿灯 sbit led2=P3^3;//红灯 sbit led3=P3^2;//黄灯 sbit key1=P1^0; sbit key2=P1^1; sbit key3=P1^2; sbit key4=P1^3; sbit key5=P1^4; sbit key6=P1^5; sbit key7=P1^6; sbit key8=P1^7; 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==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);

基于80C51单片机的八路抢答器设计分析

专业论文 题目:基于80C51单片机的八路抢答器设 计

摘要:八路智力抢答器是一个可供八个参赛组进行智力竞赛的电路装置,该装置主要是由单片机最小系统、控制电路(八个选手抢答按钮;三个主持人控制按钮;四个修改按钮)、数码显示电路与蜂鸣器电路组成的。单片机(MCU)是目前在电气控制技术中广泛应用的重要元件。它具有体积小,稳定性高,应用范围广,控制能力强,升级改造容易等诸多优点。本论文介绍采用ATMEL公司AT89S52单片机设计八路智能抢答器。软件采用汇编语言编程,汇编语言属于计算机领域的低级语言,具有简明易懂,执行效率高等的优点。智能八路抢答器具有抢答时间与答题时间调整,抢答错误报警提示等功能,可以广泛应用于各类知识竞赛。 关键词:抢答器;单片机;硬件系统;软件编程

基于80C51单片机的八路抢答器设计 一、系统概述与原理方框图 在文中,我对八路抢答器的总体设计及其主要的功能特点进行简单的分析,并给出它的特点,实现的功能以及系统的简单操作,以对单片机及其控制系统的了解。 (一)单片机技术发展的概述与系统问题的提出 目前,单片机正朝着高性能和多品种方向发展,单片机的发展正朝着 CMOS化,低功耗,小体积,大容量,高性能,低价格和外围电路的内装化等 几个方面 发展。近几年,由于某种原因CHMOS技术的进步,大大地促进了单片机的CMOS 化,此种芯片除了低功耗外,还具有功耗的可控性,使单片机可以工作在功 耗精细管理状态,特别是IIC,API等串行总线的引入,可以使单片机的引脚 设计得更少,单片机系统结构更加简化及规范化。 我们设计出的8路抢答器是一种基于MCS-51单片机的硬件和软件设计及 实现方法,这种电路设计具有按键有效提示,输入错误提示,控制报警电路, 在线修改功能等多种功能,保密性强,灵活性高,特别适用于家庭!办公室!学 生宿舍及宾馆等场所。它具有全集成化,智能化,高精度,高性能,高可靠 性和低价格等优点,是一个值得推广的一种方法。接下来我们就对方案与设 计原理方框图进行比较分析。 (二)设计思路与系统组成及主要特点 为了使设计更具有针对性,使用性更强,我对其进行精心的设计,在设 计过程中,我们想到了很多的设计方案。 1.设计思路 设计一个八路抢答器,可同时供8名选手或者8个代表队参加比赛,他 们的编号分别为1——8,各用一个抢答器按钮,按钮的编号与选手的编号相 对应,分别设为S1…S8。节目主持人设置一组控制开关,用来控制系统的清 零和抢答器的开始,修改抢答时间与答题时间,如果想调节抢答时间或答题 时间,按"抢答时间调节"键或"答题时间调节"键进入调节状态。并且抢答器具 有数据锁存和显示的功能,抢答开始,若有选手按动抢答按钮,编号立即锁

基于51单片机8路抢答器设计

创新实践课 课程名称:创新实践课 实践题目:基于51单片机8路抢答器设计学院:信息工程与自动化学院 专业:生物医学工程 年级:2014级 学生:4 丽莎2海星 指导教师:嘉林 日期:2016-12-30 教务处制

目录 一、前言 (3) 二、电路原理图设计 (3) 三、印制版图设计 (7) 四、软件设计 (9) 五、测试数据及分析 (16) 六、总结 (18)

一、前言 目前,抢答器已经作为一种必不可少的工具广泛应用于各种智力和知识竞赛场合,但一般的抢答器可靠性低,使用寿命短,介于这些不方便因素,此次设计提出了用51单片机为核心控制元件,设计一个简易的八路抢答器。本方案以51单片机作为主控核心,与晶振、数码管、蜂鸣器等通过外围接口实现的八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路、定时器/计数器等,设计的八路抢答器不仅具有实时显示抢答选手的和抢答时间的功能,同时还利用汇编语言编程,使其实现复位、定时和报警的功能。本次设计的系统实用性强、判断精确、操作简单、扩展功能强。 功能:以STC89C52RC单片机作为主控核心,与晶振、数码管、蜂鸣器等通过外围接口实现的八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路等,设计的八路抢答器不仅具有实时显示抢答选手的和抢答时间的功能,同时还利用汇编语言编程,使其实现复位和报警的功能。 此系统是基于51单片机,led发光二极管,一位共阳数码管,蜂鸣器,按键,等分立元件设计而成。 元件设计的意义:关于按键:共设计了10个独立按键,其中8个分别为八位选手抢答输入用,另外两个分别为开始和停止按键!只有裁判按下了开始键才进入正常抢答,否则属于犯规抢答,抢答完毕,裁判按下停止,数码管显示0。关于led发光二极管:共设计了9个发光二极管,其中一个为电源指示,其他8个为选手抢答状态指示,正确抢答时led发光二极管缓慢闪烁,犯规抢答时,快速闪烁。关于数码管:选手按下自己的按键时显示相应的选手编号!裁判按下开始键时数码管显示倒计时,

基于51单片机八路抢答器的设计大学论文

毕业设计(论文) 题 目: 基于51单片机的抢答器系统设计 函授站点: 中国矿业大学继续教育学院 学习层次: 专科 班级名称: 徐工技师学院 函机电2015班 姓名: 学号: 中国矿业大学继续教育学院 20 年 月 日

摘要 随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也就显而易见。目前很多抢答器基本上采用小规模数字集成电路设计,使用起来不够理想。因此设计一更易于使用和区分度高的抢答器成了非常迫切的任务。现在单片机已进入各个领域,以其功耗小、智能化而著称,所以若利用单片机来设计抢答器,便使以上问题得以解决.针对以上情况,本文设计出以STC89C52RC单片机为核心的八路抢答器。我们采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,即使两组的抢答时间相差几微秒,也可分辨出是哪组优先按下的按键,它充分利用了单片机系统的优点,具有结构简单、功能强大、可靠性好、实用性强的特点。 本设计是以八路抢答为基本理念。考虑到依需设定限时回答的功能,利用51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为犯规;满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。 关键词:STC89C52RC;共阴数码管;按键;蜂鸣器

基于AT89C51单片机的四路抢答器课程设计

河北建筑工程学院 课程设计计算说明书 题目名称:单片机原理及应用课程设计 院系:机械工程学院 专业:机械电子工程 班级:机电112 学号: 2011322214 学生姓名:孙宏财 指导教师:张东辉 职称:讲师 2014年 7 月 3 日

目录 前言 (2) 一、硬件系统设计 (3) 1、硬件设计思路及系统框图 (3) 2、系统分析 (3) 3、抢答器总电路图 (4) 二、软件系统设计 (5) 1、系统功能分析及程序流程图 (5) 2、软件系统程序的编制 (6) 3、运用Keil软件进行程序的调试 (9) 三、基于P ROTEUS和K EIL的软硬件联合仿真 (10) 1、上电初始状态 (10) 2、开始按钮按的状态 (10) 3、有人抢答的状态 (11) 四、心得与体会 (12) 五、参考文献 (12)

基于AT89C51单片机的抢答器设计 前言 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴。 1、在智能化仪表上的应用。 2、在工业控制中的应用。 3、在家电中的应用。 4、在计算机网络和通信领域中的应用。 5、单片机在医疗设备领域中的应用。 目前世界上单片机生产商很多,如INTEL、Motorola、NEC、AMD等公司其主流产品有几十个系列,几百个品种。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用单片机的应用介绍

基于某AT89C51单片机六路抢答器的设计

学号:xxxxxxxxxx 课程设计报告 基于AT89C51单片机抢答器的设计 院系电子信息工程学院 专业电子信息工程 班级 1 姓名xxx

摘要 单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产中,单片微型计算机是微型计算机的一个重要分支,也是颇具生产力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称微控器。学校和电视台等单位场举办各种比赛,抢答器是必要设备。在我校举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观判断造成比赛的不公平性。抢答器是一名公正的裁判员,他由主体电路与扩展电路组成。单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产中,单片微型计算机是微型计算机的一个重要分支,也是颇具生产力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称微控器。学校和电视台等单位场举办各种比赛,抢答器是必要设备。在我校举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观判断造成比赛的不公平性。抢答器是一名公正的裁判员,他由主体电路与扩展电路组成。 AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示。 本设计是六路智力抢答器。使用51系列单片机,编写应用程序来实现智力抢答功能。硬件设计使用的是51系列单片机中的89C51。硬件设计利用其中断控制程序进行抢答部分的处理,通过非门的控制去申请单片机内部的中断,以达到显示抢答的目的。软件设计利用中断系统的基本构成原理编写中断服务程序,其信号由按键电路提供,由CPU响应中断,并输出响应。用到了查询按键模块、定时器模块、显示时间模块、显示组号模块、报警模块等。 关键词:89C51 中断定时器报警电路等

基于51单片机的抢答器

/**********************51单片机实验开发板例程************************ * 名称:本例程为一抢答器;其中主持人操控S7与S8两个按键。选手共六位,分别操控S1--S6中的一个按键。 当主持人按下抢答开始按键S7后,倒计时开始,计时5s。此后最先按下按键的选手号码将显示与数码管上。 后来按下的将无显示。 若五秒计时结束后,再按下按键也不会显示。 若主持人没有按开始键,就有选手抢答,则视为犯规。此时犯规的选手号码将被显示于数码管上(最多显示五位犯规选手) 同时,蜂鸣器发出长笛声报警,数码管全亮。 而当主持人按下清零键S8后,一切状态均恢复,可以开始新一轮的抢答。 按键功能简介 S8抢答开始S7 清零 S1--S6 分别为1到6号选手按键 ******************************************************************/ #include #define uchar unsigned char sbit dula=P2^6; sbit wela=P2^7; sbit beep=P2^3; uchar key,j,k,temp,daojishi=5,wei; bit begin,end,clear,fangui; uchar a0,b0=16;c0=16;d0=16;e0=16;f0=5; unsigned int pp; unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; void delay(unsigned char i) { for(j=i;j>0;j--) for(k=125;k>0;k--); } void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f) { dula=0; P0=table[a]; dula=1; dula=0; wela=0; P0=0xfe; wela=1;

单片机四路抢答器课程设计

课程设计(论文) 题目名称简易四路抢答器设计 课程名称单片机原理及应用 学生姓名瞿永 学号0841229144 系、专业电气工程系测控类 指导教师杨波 2010年7 月1 日

邵阳学院课程设计(论文)评阅表 学生姓名瞿永学号0841229144 系别电气工程系专业班级08电本二班题目名称简易四路抢答器课程名称单片机原理及应用 二、指导教师评定

目录 摘要 (4) 一,设计任务与要求 (4) 二,方案设计与论证 (4) 三,硬件电路设计 (5) 四,软件设计 (8) 五,器件选型方案 (21) 六,调试: (22) 七,结论与心得 (22) 八,参考文献 (23)

单片机四路抢答器设计 摘要 抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低。作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。 本设计是以四路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT49C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。 一,设计任务与要求 1、抢答器同时供4名选手或4个代表队比赛,分别用4个按钮S0 ~ S3表示。 2、设置一个系统清除和抢答控制开关S,该开关由主持人控制。 3、抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。 4、参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号并保持到主持人将系统清除为止。 二,方案设计与论证

基于51单片机的抢答器设计

1.系统设计 1.1设计要求 1、需要自己设计电路并焊接电路板。 2、基本要求:有一个主持人控制开关和6路抢答按扭,当主持人允 许抢答时才能进行抢答操作,并用一个数码管显示抢答选手的号 码,同时其他选手不能再抢答。 3、当主持人允许抢答后倒计时5秒时间,在这5秒内抢答有效,过 后就不能进行抢答了。 4、电路上要加个蜂鸣器的电路,当有选手抢答时蜂鸣器响一下。 5、当有选手抢答后,进行倒计时20秒作为选手回答问题时间,用 两个数码管显示,倒计时时间到时有声光提示。 6、画电路板时要增加下载接口,方便调试程序。 7、扩展功能(选做), 8、用按键可设置倒计时的时间,范围在5秒到30秒之间。 1.2设计原理 1.3总体思路 以AT89S52单片机为核心的单片机,通过相应的程序,并且通过按键来进行电平识别,再由单片机输出相应的程序,并将相应数值通过数码管来显示。 1.4设计方案

通过平时所学知识、查找资料和老师的答疑。我得到了正确的交通灯原理图,在正确的电路图前提下进行编程把程序烧到52芯片里,再把芯片连接到电路板上通过52芯片实现程序功能,实现步骤如下:通过P1.0到P1.7分别控制按键一到八,P0控制位选,P2.3控制段选,这样就能基本达到了老师给我们抢答器的要求了。 2、模块电路的设计 2.1 2.1 数码管显示模块 由于单片机的P0口没有上拉电阻,当它做为输出时,需要对其接上拉电阻。因为P0口做为数码管的段选输出,所以要在P0口接一个1K的排阻。P2口做为数码管的位选,任选其4个IO口接线,就可以了,然后利用软件来控制四个数码管的亮灭。 2.2 八个选手按键输入 当按键按下时,对P1口输入低电平,通过程序读取低电平的IO口,然后进行锁存,对数码管做相应的输出,提供抢答选手号数。 2.3 蜂鸣器输出 蜂鸣器电路是利用NPN开关电路,当基极为高电平时,三极管导通;当为低电平时,三极管截止。利用这一特性,可以画出蜂鸣器的电路图 3、程序编写调试过程 #include #define uchar unsigned char #define uint unsigned int 位定义 sbit s1=P3^0;

用51单片机制作4路抢答器

用51单片机制作4路抢答器 此抢答器具有限时抢答,超时无效的特点,并可以对主持人未喊开始而提前抢答的犯规情况作出判断。由于用了单片机,所以电路很简单。懒得写译码程序,也不想做驱动电路。干脆直接用了一片74LS48译码驱动器来驱动数码管。 ?呵呵,面包板上插一下,由于之前在Proteus中仿真过,所以直接就正常运 行了~上一张实物图 ?左边的是STC89C52的最小系统版,P1口上接了8个LED,当时做流水灯的。直接拿来用了。P2口是显示输出,P3口接受按键。那个小的芯片就是 74LS48啦~下方的是编程器+电源,STC的芯片就是编程方便,支持在线烧写,这么小巧的编程器~ ? ?当然最重要的是程序,附上代码清单。写的比较烂,竟然上了100行,希望不要被大虾们骂得太惨>_#include#defineuintunsignedchar ?//计时变量uints= 0,ms= 0; ?//枚举类型:记录抢答器工作状态enumStat{ Idle= 0,//空闲状态,比如正在读题Ready= 1,//就绪状态,可以抢答Respond= 2,//响应状态,有人抢到了}stat;?//时钟中断服务程序voidTimer()interrupt1using1{ TH0=0x3C; TL0=0xBD; ms++; s+=ms/20; ms%= 20; s%= 60;} ?//重置时钟voidResetTimer(){ EA= 1;//允许CPU中断ET0= 1;//定时器中断打开TMOD= 1;//设定时器为方式TR0= 0;//关定时器ms= 0; s= 0;} ?//优先编码(反向输入)uintEncode(uintc){ uinti,mask= 1; if(c== 0)return0; for(i= 0;ivoidmain(){ uintled= 0xff;//对应P1口,指示灯uintdisp= 15;//对应P2口,数

单片机五路抢答器设计

河南科技学院新科学院 课程设计报告 基于AT89C51单片机抢答器的设计 专业班级:电子132 姓名:彭伟 时间:2015年12月18日 指导老师:苏珂珂 1

基于单片机五路抢答器课程设计 ? 单片机课程设计项目系列: 基于单片机控制的抢答器设计 一.设计要求 (一)基本功能 1. 显示:采用数码管可以显示抢答组别,同时蜂鸣器报警。 2. 实现5组以上的抢答。 (二)扩展功能 1.增加超前违规抢答警示功能 2.增加答题时间限制功能 二.计划完成时间三周 1.第一周完成软件和硬件的整体设计。 2.第二周完成软件的具体设计和硬件的制作。 3.第三周完成软件和硬件的联合调试。 五路抢答控制器设计 要求:显示抢答组别同时蜂鸣器报警。 主要元件:数码管1块、按键7个、蜂鸣器1个 摘要 单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产中,单片微型计算机是微型计算机的一个重要分支,也是颇具生产力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称微控器。学校和电视台等单位场举办各种比赛,抢答器是必要设备。在我校举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观判断造成比赛的不公平性。抢答器是一名公正的裁判员,他由主体电路与扩展电路组成。单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产中,单片微型计算机是微型计算机的一个重要分支,也是颇具生产力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称微控器。学校和电视台等单位场举办各种比赛,抢答器是必要设备。在我校举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的

四路抢答器单片机课程设计

摘要 单片机作为一种工具,现在已经广泛的应用于智力和只是竞赛场合。本次设计是基于单片机51系列的理论知识综合运用AT89C51单片机设计的简易四路抢答器。利用AT89C51单片机的外围接口来实现抢答系统,利用单片机的定时器/计数器计数和定时的原理,将软、硬件有机的结合起来,使得系统能正确的记时,发光二极管能正常的闪烁。同时系统能够实现:在抢答过程中只有在主持人按下开始抢答键开始之后抢答才有效,如果在开始抢答之前抢答视为无效。在抢答成功之后发光二极管会变成闪烁状态与提示选手开始回答问题。同时还有主持人控制的系统复位键,以实现系统的复位。还有按键锁定,在一个选手抢答成功或者法规状态下其他按键无效。 通过这次的设计,对51系列的单片机的运用有了更深一层次的了解,也提高了我们的动手能力,加深我们对单片机的映像,为我们以后的学习打下一定的基础。 关键词:四路抢答器、AT89C51、单片机、定时、按键控制

目录 一、方案设计 (3) 1.1、设计要求 (3) 1.2、总体法案设计 (3) 二、硬件电路设计 (4) 2.1、元器件简介 (4) 2.2、系统总电路图 (6) 2.3、单元电路设计 (6) 2.3.1、独立式按键电路 (6) 2.3.2时钟电路设计 (7) 2.3.3复位电路设计 (7) 2.3.4指示灯电路设计 (8) 三、软件实际 (8) 3.1系统程序设计 (8) 3.2主程序流程图 (9) 3.3程序清单 (9) 四、制作以调试 (14) 五、抢答器的使用方法 (15) 六、心得与体会 (16) 七、参考文献 (17)

一、方案设计 1.1、设计要求 (1)、总共6个按键,两个供主持人用于“开始抢答”和“复位”操作,四个供四个选手用作“抢答”操作。 (2)、用1个发光二极管用作开始抢答的指示灯,用4个发光二极管分别显示4个选手的抢答状态。 (3)、开始抢答后,哪个选手抢答键最先按下,该选手的抢答指示灯点亮,表示抢答成功,此时其他选手再按键为无效,抢答成功后开始3秒计时,到时指示灯变为闪烁,以提示选手选手抢答后必须3秒内回答问题,否则视为犯规。 (4)、开始抢答前,若有选手按下抢答键,则其对应的指示灯变为闪烁,表示该选手犯规,此时有选手按键都将无效。 (5)、出现犯规后,主持人可以利用“复位键”重新开始。 1.2、总体法案设计 方案:依据课题要求,基于AT89C51单片机制作的抢答器,其最大的好处就是处理快,准确性高、可靠性好、控制功能强。 采用51系列的单片机AT89C51作为控制中心,系统可以完成运算控制、信号的控制以及显示的功能。选手通过按键开光作为输入信

(完整版)基于51单片机的4人抢答器课程设计

基于51单片机的4人抢答器设计 设计要求: 以单片机为核心,设计一个4位竞赛抢答器:同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。 设置一个系统清除和抢答控制开关S,开关由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。 当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。 工作原理: 通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加1(超过30时置0)。同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。

#include #define uchar unsigned char #define uint unsigned int uchar num; //定义中断变量,num计满20表示1秒时间到uchar num1; //十秒倒计时显示初始值 uchar flag1,flag2; //清零键及开始键按下标志位 uchar flag3,flag4=0; //定义键盘按下标志位 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f}; //数码管编码

(完整版)基于单片机的抢答器设计

学号1251401243 《单片机》 课程设计 (2012级本科) 题目:基于单片机的抢答器设计 系(部)院:物理与机电工程学院 专业:电气工程及其自动122班 作者姓名:杨存恩 指导教师:向根祥职称:副教授 完成日期: 2 0 1 5 年 6 月28 日

目录 1 引言 (2) 1.1 设计目的 (2) 1.2 设计要求 (2) 2 设计方案 (2) 3 硬件设计 (3) 3.1 电路原理图 (3) 3.2总体设计电路图 (3) 3.2.1 振荡电路 (4) 3.2.2 复位电路 (4) 3.2.3 加减分电路及蜂鸣器报警电路 (5) 3.2.4 抢答电路及裁判控制开始停止电路 (5) 3.2.5 数码管显示电路 (6) 4 仿真过程示意 (7) 4.1 开始抢答 (7) 4.2 抢答倒计时 (8) 4.3 答题及答题倒计时 (8) 4.4 违规抢答 (9) 4.5 答题正确加分 (9) 4.6 答题错误减分 (9) 4.7 抢答结束 (10) 5 程序流程图 (11) 6 课程设计总结 (11) 参考文献 (12) 附录:源程序清单 (13)

1 引言 1.1 设计目的 现如今电视节目日益丰富其中的竞赛环节也越来越多,其中智力抢答器是不可或缺的器材。在本学期学习了单片机这门课之后,我觉得可以试着自己来实现抢答器的功能,令它能准确、公正、直观地判断出第一抢答者,并通过抢答器的数码管显示和蜂鸣器报警指出抢答组别。最终做出一种数字式抢答器的设计方案,通过Proteus设计完成,利用keil2软件编辑程序,仿真验证,适用于多种竞赛场合。 1.2 设计要求 设计一个用于智力竞赛的抢答器,其功能的实现是由单片机控制的,满足:(1)能容许2-6组进行抢答。 (2)能显示抢答组号。 (3)各组记分,并能记分显示。 (4)比赛结束时,能发出报警声。 2 设计方案 在设计中采用的单片机是AT89C51,它主要负责控制各个部分协调工作。P1.0和P1.7由裁判控制,分别是抢答开始和停止键。P1.1—P1.6是6组抢答的输入口,按下对应按钮即为抢答。P0口为数码管的段选口,位选口用的是P2口的低4位,外部中断0。外部中断1,P3.3用于控制有组答题完成后结束计时。P3.4—P3.5分别实现了分数的加一和减一。P3.6为蜂鸣器的控制口。外部中断和内部中断并存,单片机有硬件复位端,只要输入持续4个机器周期的高电平即可实现复位。外部还接有蜂鸣器用来发出报警音。采用7SEG-MPX4-CC-BLUE显示,它是共阴极的由高电平点亮。系统仿真用到了Proteus软件,通过仿真可以显示所设计系统的功能,对于程序的调试等有很大的帮助。

基于51单片机的8路抢答器【最新】

抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且有的要么制作复杂,要么可幕性低。作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设讣了本抢答器。 本设计毘以八路抢答为基本理念。考虑到依需设定限时回答的功能,利用 AT89C51单片机及外M接口实现的抢答系统利用单片机的定时器/讣数器定时和 记数的原理,将软、侦件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效; 抢答限定时间和回答问题的时间可在1-99S设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统讣时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。 关键词:51单片机,抢答器,时间设定

1抢答器设讣功能分析 1.1数字抢答器的概述 1.2设计任务与要求 2方案设计 3硬件电路设计 3.1总体设讣 3.2外部振荡电路 3.3复位电路的设计 3.4显示电路的设讣 3.5按钮输入电路的设讣 3.6 发声 4系统软件设汁 4.1程序系统结构图 4?2程序流程图 4.3程序代码: 4. 3.1査询程序: 4. 3. 2非法抢答处理程序: 目录 4. 3. 3倒il 时程序(包括有效抢答程序): 11 4. 3. 4正常抢答处理程序: 13 4. 3. 5犯规抢答程序: 14 4. 3. 6显示程序: 15 4. 3. 7延时(显示和去抖动用到): 16 4. 3. 8 TO 溢出中断(响铃程 序): 17 4. 3. 9 T1溢出中断(计时程 序): 17 总结 18 参考文献 19 10 10

相关文档
相关文档 最新文档