基于单片机的八位抢答器课程设计

基于单片机的八位抢答器课程设计
基于单片机的八位抢答器课程设计

电子技术应用综合课程设计

—51单片机八位抢答器

院部名称:机电与信息工程学院

专业名称:自动化

班级:(1)

姓名:

学号:

目录

第一章:内容提要 (4)

1.1设计要求 (4)

1.2总体设计方案 (5)

第二章:硬件设计及分析 (5)

2.1单片机最小系统 (5)

2.2 LCD1602显示电路 (7)

2.3独立式按键键盘设计 (7)

2.4蜂鸣器设计 (8)

2.5复位电路设计 (9)

第三章:软件设计及分析 (10)

3.1系统程序 (10)

3.2程序流程图 (10)

第四章:体会感想 (11)

参考文献 (12)

附录 (13)

第一章:内容摘要

数字抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在LCD602显示器上输出实现计时功能,构成扩展电路。经过布线、焊接、调试等工作后数字抢答器成形。单片机体积小价格低,应用方便,稳定可靠。单片机将很多任务交给了软件编程去实现,大大简化了外围硬件电路,使外围电路的实现简单方便。单片机系统的硬件结构给予了抢答系统“身躯”,而单片机的应用程序赋予了其新的“生命”,使其在传统的抢答器面前具有电路简单、成本低、运行可靠等特色。对于抢答器我们大家都知道那是用于选手做抢答题时用的,选手进行抢答,抢到题的选手来回答问题。抢答器不仅考验选手的反应速度同时也要求选手具备足够的知识面和一定的勇气。选手们都站在同一个起跑线上,体现了公平公正的原则。

关键字:抢答电路定时电路报警电路

1 .1设计要求

以单片机为核心,设计一个8位竞赛抢答器:同时供8名选手或8个代表队比赛,分别用8个按钮S0~S7表示。

设置一个系统清除和抢答控制开关S,开关由主持人控制。

抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。

抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。

当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。

参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。

如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。

1 .2总体方案设计

图1.2 总体电路设计框图

独立式按键键盘:用于输入高低电平,连接到P1口,由P1口检测电平的变化。

抢答器倒计时显示电路:用LCD1602液晶显示,第一行显示成功抢答选手编号,第二行显示选手抢答用的时间和倒计时时间。

蜂鸣电路:有选手抢答成功,P2.0口发出脉冲,使蜂鸣器发出声音。

第二章:硬件设计及分析 2.1单片机最小系统

单片机选用的是Atmel 公司推出的AT89S52,它是一种低功效、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易

蜂鸣电路

AT89C52

复位电路抢答器倒计时显示电路

独立式按键键盘

失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。在单芯片上拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89S52具有以下标准功能:8K 字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。空闲模式下,CPU停止工作,允许RAM、定时器/计数器串口、中断继续工作。掉电保护方式下RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。而且,它还具有一个看门狗(WDT)定时/计数器。如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。T89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中端口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

图2.1 最小系统电路

2.2LCD显示电路

液晶显示器是一种功耗极低的被动式显示器件,1602广脚介绍:D0—D7数据传送引脚,VSS为接地线,VDD为电源线,VEE为 LCD驱动电压调节,由此可以调节显示亮度。RS为寄存器选择信号,高电平选择数据寄存器,低电平选择指令寄存器。RW为读写控制信号,高电平读,低电平写。EN使能信号,读状态下高电平有效,写状态下下降沿有效。

RS连接P2^0; 寄存器选择信号

RW连接P2^1; 读写控制信号线

EN连接P2^2; 使能信号线

图2.2 LCD1602电路

2.3独立式按键键盘设计

键盘接口中使用多少根I/O线,键盘中就有几个按键,键盘接口使用了8根I/O口线,该键盘就有8个按键,这种类型的键盘,其按键比较少,且键盘中各按键的工作互不干扰。因此可以根据实际需要对键盘中的按键灵活的编码。

最简单的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接

读取I/O口的状态来获取按键的直接状态编码值,根据这个值直接进行按键识别,这样形式的键盘结构简单,按键识别容易。

独立式键盘的缺点是需要占用比较多的I/O口线,当单片机应用系统键盘中需要的按键比较少或I/O口线比较富余时,可以采用这样类型的键盘。

独立式按键键盘:用于输入高低电平,八位选手抢答时高低电平发生变化,如图所示。

图2.3 抢答按键电路

2.4蜂鸣器设计

我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的巨型波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。单片机通过内部定时器的操作实现交替变换的波形输出驱动扬声器发声,有选手抢答成功,使蜂鸣器发出声音,如图所示。

图2.4 蜂鸣器电路

2.5复位电路设计

MCS-5l的复位输入引脚RST为MCS-51提供了初始化的手段,可以使程序从指定处开始执行,在MCS-5l的时钟电路工作后,只要RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作.只要RST保持高电平,则MCS-5l 循环复位.只有当RST由高电平变低电平以后。MCS-51才从0000H地址开始执行程序。本系统采用按键复位方式的复位电路。

复位电路:当一轮进行完时,由主持人按下,下一轮倒计时开始,如图3.2所示。

图2.4 复位电路

第三章:软件设计及分析 3.1系统程序

分为主程序、lcd1602显示程序、按键扫描程序、初始化等程序。

当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s 左右。

参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。

如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。

按键复位再来一次执行下次程序

3.2程序流程图

开始

进行时间设置

按键“开始”同时时间开始计时

是否有人抢

显示时间及抢答选手

时间清零同时报警 结束

第四章:体会感想

通过本次单片机课程设计,使我所学的知识能够得到实际的应用,过程中也发现自身所学的知识存在许多的不足和问题,当然同时也学到了不少宝贵的知识,提高了自己的动手实践能力。在整个设计过程中从设计方案确定,到具体的电路仿真,最后到总体电路的连接构建以及程序的编写烧制,特别是程序的编写要求对LCD1602的初始化操作,指令和数据的操作都非常熟悉。通过这次对数字钟的设计与制作 让我了解了设计电路的程序 也让我了解了关于数字钟的原理与设计理念 要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样 因为 再实际接线中有着各种各样的条件制约着。而且 在仿真中无法成功的电路接法 在实际中因为芯片本身的特性而能够成功。所以 在设计时应考虑两者的差异 从中找出最适合的设计方法。在这次实习中遇到了许多问题,但通过向老师同学请教都得到了解决。通过这次课程设计,我知道了做任何事都要有一颗平常心,不要想着走捷径,要一步一个脚印才能取得最后成功,在此过程中更要注重自主学习,发挥自己的主管能动性。总之这次课程设计试一次很好的锻炼,让我有了全方位的提高,受益匪浅,为我以后的工作学习打下了很好的基础,而且积累了丰富的经验。

参考文献:

[1]张义和.例说51单片机[M].北京:人民邮电出版社,2010年

[2] 阎石编著数字电子技术基础 (第五版) 北京高等教育出版社] 2006.1~550

[3] 蔡明文冯先成主编单片机课程设计华中科技大学出版

社 2007.3

[4]陈明萤编著 8051单片机课程设计实训教材清华大学出版社 2004

[5] 康华光编著模拟电子技术基础(第五版)高等教育出版

社 2006

[6 ]黄智伟编著全国大学生电子设计竞赛电路(第一版)航空航天大学出版社 2006.36

附录:

(1)实物图:

(2)元件清单

Lcd1602 一个

蜂鸣器一个

三极管一个

89c52单片机一个

Led 一个

按键九个

10K电阻器一个

最小系统板一个

(3)程序清单

#include

#include

sbit RS = P2^4; //定义端口

sbit RW = P2^5;

sbit EN = P2^6;

sbit s = P3^7;

sbit s0 = P1^0;

sbit s1 = P1^1;

sbit s2 = P1^2;

sbit s3 = P1^3;

sbit s4 = P1^4;

sbit s5 = P1^5;

sbit s6 = P1^6;

sbit s7 = P3^6;

sbit beep = P2^0;

#define RS_CLR RS=0

#define RS_SET RS=1

#define RW_CLR RW=0

#define RW_SET RW=1

#define EN_CLR EN=0

#define EN_SET EN=1

#define DataPort P0

unsigned char table[10] ={'0','1','2','3','4','5','6','7','8','9'};

unsigned char shu,key,count=0;

unsigned char flag=0;

unsigned char DATA,num;

/*------------------------------------------------

uS延时函数,含有输入参数unsigned char t,无返回值unsigned char 是定义无符号字符变量,其值的范围是

0~255 这里使用晶振12M,精确延时请使用汇编,大致延时长度如下T=tx2+5 uS

------------------------------------------------*/

void DelayUs2x(unsigned char t)

{

while(--t);

}

/*------------------------------------------------

mS延时函数,含有输入参数unsigned char t,无返回值unsigned char 是定义无符号字符变量,其值的范围是

0~255 这里使用晶振12M,精确延时请使用汇编

------------------------------------------------*/

void DelayMs(unsigned int t)

{

while(t--)

{

//大致延时1mS

DelayUs2x(245);

DelayUs2x(245);

}

}

/*------------------------------------------------

判忙函数

------------------------------------------------*/

bit LCD_Check_Busy(void)

{

DataPort= 0xFF;

RS_CLR;

RW_SET;

EN_CLR;

_nop_();

EN_SET;

return (bit)(DataPort & 0x80);

}

/*------------------------------------------------

写入命令函数

------------------------------------------------*/

void LCD_Write_Com(unsigned char com)

{

while(LCD_Check_Busy()); //忙则等待

RS_CLR;

RW_CLR;

EN_SET;

DataPort= com;

_nop_();

EN_CLR;

}

/*------------------------------------------------

写入数据函数

------------------------------------------------*/

void LCD_Write_Data(unsigned char Data)

{

while(LCD_Check_Busy()); //忙则等待

RS_SET;

RW_CLR;

EN_SET;

DataPort= Data;

_nop_();

EN_CLR;

}

/*------------------------------------------------

清屏函数

------------------------------------------------*/

void LCD_Clear(void)

{

LCD_Write_Com(0x01);

DelayMs(5);

}

/*------------------------------------------------

写入字符串函数

------------------------------------------------*/

void LCD_Write_String(unsigned char x,unsigned char y,unsigned char *s) {

if (y == 0)

{

LCD_Write_Com(0x80 + x); //表示第一行

}

else

{

LCD_Write_Com(0xC0 + x); //表示第二行

}

while (*s)

{

LCD_Write_Data( *s);

s ++;

}

}

/*------------------------------------------------

写入字符函数

------------------------------------------------*/

void LCD_Write_Char(unsigned char x,unsigned char y,unsigned char Data) {

if (y == 0)

{

LCD_Write_Com(0x80 + x);

}

else

{

LCD_Write_Com(0xC0 + x);

}

LCD_Write_Data( Data);

}

/*------------------------------------------------

初始化函数

------------------------------------------------*/

void LCD_Init(void)

{

LCD_Write_Com(0x38); /*显示模式设置*/

DelayMs(5);

LCD_Write_Com(0x38);

DelayMs(5);

LCD_Write_Com(0x38);

DelayMs(5);

LCD_Write_Com(0x38);

LCD_Write_Com(0x08); /*显示关闭*/

LCD_Write_Com(0x01); /*显示清屏*/

LCD_Write_Com(0x06); /*显示光标移动设置*/

DelayMs(5);

LCD_Write_Com(0x0C); /*显示开及光标设置*/

}

/*------------------------------------------------

定时器中断子程序

------------------------------------------------*/ void Timer0_isr(void) interrupt 1

{

unsigned char temp,temp1,i,j=2;

TH0=(65536-50000)/256;//重新赋值50ms TL0=(65536-50000)%256;

// beep=~beep;

// DelayMs(100);

i++;

if(i==20)

{ i=0;

DATA--;

if(DATA>0)

{ DelayMs(50);

temp=DATA/10;

temp1=DATA%10;

LCD_Write_Char(7,1,table[temp]);

LCD_Write_Char(8,1,table[temp1]);

}

else if(DATA==0)

{ P1=0xFF;

ET0=0;

DelayMs(50);

LCD_Write_Char(7,1,'0');

LCD_Write_Char(8,1,'0');

for(;j--;j>0)

{

beep=0;

DelayMs(500);

beep=1;

}

}

}

}

void beepon(void)

{

unsigned char i;

for(i=0;i<10;i++)

{

beep=0;

DelayMs(50);

beep=1;

}

}

unsigned char keyscan(void) {

unsigned char scan1;

scan1=P1;

if(scan1!=0xff)

{

DelayMs(30);

if(scan1==P1)

{

switch(scan1)

{

case 0xff:

scan1 = 0;

break;

case 0xfe:

scan1 = 1;

break;

case 0xfd:

scan1 = 2;

break;

case 0xfb:

scan1 = 3;

break;

case 0xf7:

scan1 = 4;

break;

case 0xef:

scan1 = 5;

break;

case 0xdf:

scan1 = 6;

break;

case 0xbf:

scan1 = 7;

break;

case 0x7f:

break;

}

}

}

else

scan1=0;

return(scan1);

}

void display(void)

{ unsigned char a,b;

key=keyscan();

if(key!=0 & flag==0 )

{ET0=0; count++;

DelayMs(200);

LCD_Write_Char(10,0,table[key]);

flag=1;

a=(shu-DATA)/10;

b=(shu-DATA)%10;

LCD_Write_Char(7,1,table[a]);

LCD_Write_Char(8,1,table[b]);

}

}

void main(void)

{ unsigned char k;

unsigned a,b;

LCD_Init(); //初始化液晶

DelayMs(20); //延时有助于稳定LCD_Clear(); //清屏

LCD_Write_String(0,1,"time");

LCD_Write_String(0,0,"xuanshou");

// Init_Timer0(); //定时器0初始化while(count==0)

{

if(s0==0)

{ DelayMs(10);

if(s0==0)

{

while(count==1)

{

if(s==0)

{

DelayMs(10);

if(s==0)

{ while(!s);

count++;

}

}

if(s1==0)

{

DelayMs(10);

if(s1==0)

{

while(!s1);

{

DATA++;

shu=DATA;

if(DATA==31){DA TA=0;count=0;}

a=DA TA/10;

b=DATA%10;

LCD_Write_Char(7,1,table[a]);

LCD_Write_Char(8,1,table[b]);

}

}

}

}

while(count==2)

{

TMOD |= 0x01; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响

TH0=(65536-50000)/256;//重新赋值50ms

TL0=(65536-50000)%256;

EA=1; //总中断打开

ET0=1; //定时器中断打开

TR0=1; //定时器开关颡

8位竞赛抢答器的设计--实用.docx

单片机课程设计专业电气工程及其自动化 指导教师 学生颜良堂 学号B16 题目8 位竞赛抢答器的设计 2013 年 12 月 25 日

目录 一、设计任务与要求. (3) 二、方案设计与论证 (3) 方案一: (3) 方案二: (4) 三、单元电路的设计 (4) 芯片的选择及工作原理 (4) 系统的硬件构成及功能 (4) 四、软件的设计 (5) 主程序流程图 (6) 主程序 (6) 子程序 (7) 1、开始、复位程序 (7) 2、中断程序 . (8) 3、选手键盘扫描程序. (9) 4、数码管显示程序.12 5、抢答时间设计程序.13 6、延时子程序.13 五、仿真与调试. (14) 抢答器调试结果. (14) 六、结论与心得 (16) 附件 1:电路图 (16) 附件 2:源程序 (17) 附、参考文献? (24)

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

武汉工程大学单片机多路抢答器的课程设计资料

电气信息学院 单片机技术课程设计报告 课题名称多路抢答器的设计 专业班级10 电气4班 学号2010500238 __________________ 学生姓名________ 杨彬____________ 扌旨导教师______ 易先军___________ 评分_____________________________

2013年6月17日至6月21日

课程设计量化评分标准 指导老师评语:

答辩记录 1、例举设计过程中遇到的问题及其解决方法(至少两例)。答:(1)问题说明:对于采用独立式按键设计还是行列式按键设计有所困扰。 解决方法:行列式键盘是采用X*丫型按键来实现I/O的扩展的,这种按键的排 列方式可以有效的提高I/O 的利用率。 (2)问题说明:Proteus 软件中,从元器件库中调出的元件有的不能仿真。 解决方法:Proteus 里面又不是器件是没有仿真模型的,只是个原理图 符号,故必须选含仿真模型的器件。 2、教师现场提的问题记录在此(不少于2个问题)。 (1)Proteus 软件的主要功能是什么? 答:Proteus 软件可以仿真、分析各种模拟电路与集成电路,软件提供了大量模拟与数字元器件及外部设备,各种虚拟仪器,特别是它具有对单片机及其外围电路组成的综合系统的交互仿真功能。 (2)如果有多个按键几乎同时按下,你是如何来保证最先按下的按钮抢答成功的? 答:可以通过锁存器达到目的。当有第一个按键被按下时,锁存器将迅速锁存优先抢答者的按键状态,并能同时禁止其他选手按键,使其按键操作无效。

现如今生活娱乐的多元化已是现代的生活方式之一。知识、娱乐比赛更是流行于各行各业,而其中又以抢答形式为主。在抢答过程中,为了知道哪一组或 哪一位选手优先获得抢答权,必须要设计一个系统来完成这个任务,避免人的主观意识判断错误。在抢答中,只靠视觉是很难判断出哪组先答题。利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差甚小,也可分辨出哪组优先答题。此次设计使用AT89C51单片机为核心控制元件,设计一个简易的抢答器,与数码管、报警器等构成八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路、定时/中断电路等。设计的抢答器具有实时显示抢答选手的号码和抢答时间的特点,而复位电路,则使其能再开始新的一轮答题和比赛,与此同时还利用汇编语言编程,使其能够实现一些基本的功能。 关键词:AT89C51单片机;抢答器;数码管;报警器 I

八路抢答器课程设计

课程设计报告 课程名称:电子技术课程设计 设计题目:八路抢答器 专业: 班级:学号: 学生姓名: 时间: 2014年 10 月 27 日~ 11 月 12 日 ―――――――以下指导教师填写――――― 分项成绩:出勤成品答辩及考核 总成绩:总分成绩 指导教师:

介绍了数码显示八路抢答器电路的组成、设计及功能,电路采用74系列常用集成电路进行设计。该抢答器除具有基本的抢答功能外,还具有定时、计时和报警功能。主持人通过时间预设开关预设供抢答的时间,系统将完成自动倒计时。若在规定的时间内有人抢答,则计时将自动停止;若在规定的时间内无人抢答,则系统中的蜂鸣器将发响,提示主持人本轮抢答无效,实现报警功能,若超过抢答时间则抢答无效。 该抢答器主要运用到了编码器,译码器和锁存器:它采用74LS148来实现抢答器的选号,采用74LS279芯片实现对号码的锁存,采用74LS192实现十进制的减法计数,采用555芯片产生秒脉冲信号来共同实现倒计时功能,采用74LS121单稳态芯片来实现报警信号的输出。 通过课程设计提高和巩固了所学的专业知识,以及知识的综合应用和焊接技术。 关键词: 抢答器编码译码定时报警

进入21世纪越来越来多的电子产品出现在人们的日常生活中,例如企业、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。过去在举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。人们于是开始寻求一种能不依人的主观意愿来判断的设备来规范比赛。因此,为了克服这种现象的惯性发生人们利用各种资源和条件设计出很多的抢答器,从最初的简单抢答按钮,到后来的显示选手号的抢答器,再到现在的数显抢答器,其功能在一天的趋于完善不但可以用来倒计时抢答,还兼具报警,计分显示等等功能,有了这些更准确地仪器使得我们的竞赛变得更加精彩纷呈,也使比赛更突显其公平公正的原则。 今天随着科技的不断进步抢答器的制作也更加追求精益求精,人们摆脱了耗费很多元件仅来实现用指示灯和一些电路来实现简单的抢答功能,使第一个抢答的参赛者的编号能通过指示灯显示出来,避免不合理的现象发生。但这种电路不易于扩展,而且当有更高要求是酒无法实现,例如参赛人数的增加。随着数字电路的发展,数字抢答器诞生了,它易于扩展,可靠性好,集成度高,而且费用低,功能更加多样话,是一种高效能的产品。而如今在市场上销售的抢答器大多采用可编程逻辑元器件,或利用单片机技术进行设计,本次设计主要利用常见的74LS系列集成电路芯片和555芯片,并通过划分功能模块进行各个部分的设计,最后完成了八路智力竞赛抢答器的设计。

基于c语言知识单片机8位竞赛抢答器设计课程规划设计

课程设计报告 课程名称:单片机课程设计 报告题目:8位竞赛抢答器的设计学生姓名: 所在学院:信息科学与工程学院专业班级: 学生学号: 指导教师: 2013 年12月25日

课程设计任务书

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

目录 一、概述 (1) 二、方案设计 (1) 三、硬件电路设计 (2) 1、抢答器的电路框图 (2) 2、单元电路 (3) 2.1、抢答器电路 (3) 2.2、时序控制电路 (3) 2.3、复位电路 (3) 3、时钟震荡电路 (3) 4、报警电路 (3) 四、软件设计 (4) 1、系统主程序 (4) 2、系统程序 (5) 五、结论与心得 (10) 六、参考文献 (10)

数字八路抢答器课程设计报告

梧州学院 课程设计论文(2013-2014学年下学期) 课程名称数字电路 论文题目八路数字智力抢答器 系别信息与电子工程学院 专业电子信息工程 班级电本一班 学号000000000000 学生XX 聪明的小强 指导教师xxx 完成时间2015 年7 月

抢答器作为一种工具,已经广泛应用于各种智力和知识竞赛场合。本设计以八路智力竞赛抢答器为基本概念,从实际应用出发, 用数字、模拟电子器件设计具有扩充功能的抢答器。该设计数字抢答器就是利用数字电子技术实现的。主要为了实现抢答、定时、显示、报警功能。其电路由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时功能,构成扩展电路。当有选手按下按钮时,优先锁存,其他选手在按时无响应,直到主持人按下清零按钮之后,才能开始下一轮的抢答。比较实用。 该数字抢答器可以广泛应用于各种竞赛,确保竞赛的准确,公平。该数字抢答器虽然可以用单片机程序来完成,但繁琐和代价高。而用集成电路设计制作抢答器:方便,价格便宜,还易于扩展。 关键字:编码,译码,555定时器,抢答器

第一章引言 (1) 1.1 设计要求 (1) 1.2 系统概述 (1) 第二章设计方案分析与论证 (3) 2.1 设计方案分析 (3) 2.2 方案的论证与选择 (3) 第三章单元电路设计 (5) 3.1 抢答电路设计 (5) 3.2 定时电路设计 (7) 3.1 时序控制电路设计 ................................................................ (13) 第四章智能抢答器实物制作 (15) 4.1 原理图设计和PCB设计 (15) 4.2 实物焊接及调试 (16) 4.2 实物展示 (17) 第五章测试结果分析与设计体会 (20) 5.1 测试结果与分析 (20) 5.2 设计体会与实验总结 (20) 参考文献 (21) 附录元器件清单 (22)

(完整版)基于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}; //数码管编码

八路抢答器课程设计

电子技术 课程设计 题目:八路抢答器的设计 学院(系): 专业班级:电子132 学生姓名:学生学号:13446413 指导教师: 设计时间:2015年6 月22日 2015年7月15日

电子技术课程设计任务书2 学院电子(怀)132 班同学:

计算机教研室指导教师_

目录 摘要-------------------------------------------------------------------------------------1 1八路抢答器-----------------------------------------------------------------------------------------2 1.1前言------------------------------------------------------------------------------------------------2 1.2八路抢答器功能-----------------------------------------2 2系统的组成及工作原理--------------------------------------2 2.1系统组成框图--------------------------------------------------------------------------------- 3 2.2系统的工作原理------------------------------------------------------------------------------ 3 3电路设计--------------------------------------------------- 4 3.1方案的选择------------------------------------------------------------------------------------ 4 3.1.1方案一---------------------------------------------------------------------------------------4 3.1.2方案二---------------------------------------------------------------------------------------5 3.1.3方案的选择---------------------------------------------------------------------------------5 3.2单元电路的设计------------------------------------------------------------------------------ 5 3.2.1抢答电路的设计---------------------------------------------------------------------------5 3.2.2定时电路的设计-------------------------------------------------------------------------11 3.2.3触发器电路的设计----------------------------------------------------------------------13 3.2.4多谐振荡器电路的设计----------------------------------------------------------------15 3.2.5秒脉冲产生电路的设计----------------------------------------------------------------16 4性能的测试------------------------------------------------17 5体会与总结------------------------------------------------------------------------------------- 18 参考文献-------------------------------------------------------------------------------------------18 附录:元器件列表----------------------------------------------------------------------------- 19

基于单片机STC89C52RC的八路抢答器课程设计报告75092282

基于单片机STC89C52RC的八路抢答器课程设计报告75092282

信息与电子工程学院 课程设计报告 课程单片机技术应用 设计题目基于单片机STC89C52RC的八路抢答器专业应用电子技术 班级11级4班 成员姓名学号分工成绩 软件部分 硬件部分

目录 一、课程设计概述.................................................................................................................... - 1 - 1.1课程设计背景 (1) 1.2课程设计内容 (1) 1.3课程设计技术指标 (1) 二、方案的选择及确定............................................................................................................ - 1 - 2.1方案一:集成数字电路 (1) 2.2方案二:单片机 (2) 2.3方案分析比较: (2) 三、硬件设计............................................................................................................................ - 3 - 3.1系统硬件设计 (3) 3.2复位电路的设计 (3) 3.3时钟电路设计 (3) 3.4显示电路设计 (4) 3.5按键电路设计 (5) 3.6报警电路设计 (6) 3.7电源模块设计 (7) 四、系统软件设计.................................................................................................................... - 7 - 4.1系统的功能流程 (7) 4.2主程序流程图 (7) 五、系统调试过程.................................................................................................................... - 9 - 5.1软件调试 (9) 5.2硬件调试 (10) 六、总结.................................................................................................................................. - 13 - 七、遇到的问题及解决方法.................................................................................................. - 13 - 八、参考文献.......................................................................................................................... - 13 - 九、附录.................................................................................................................................. - 14 - 9.1仪器与设备 (14) 9.2元器件清单 (14)

八路抢答器设计(附源程序)

烟台大学单片机课程设计说明书课题:八路抢答器 学生姓名: 学号: 院系:机电汽车工程学院 专业:机械设计制造及其自动化 指导老师: 同组成员: 组长: 2012 年06 月07 日 目录

1 概述 (2) 2设计任务 (2) 3 系统总体方案 (3) 4 硬件设计 (4) 控制系统所需硬件 (4) 硬件原理介绍 (4) 5 软件设计 (7) 软件总体设计 (7) 程序流程图 (8) 6 Proteus软件仿真 (12) Keil软件 (12) 在Proteus软件 (12) 7小结 (14) 8心得体会 (15) 附1:源程序代码 (16) 附2:参考文献 (24) 1 .概述

8路智能抢答器的设计 现如今,各种智力知识竞赛已经成为人们的一种娱乐形式,人们在答题的过程中不仅可以享受到乐趣,还可以学到一些科学知识和生活常识。然而在抢答过程中,单靠视觉是很难判断出哪组最先完成抢答操作。为了辨别哪一组或哪一位选手获得答题权,必须要设计一个智能抢答控制系统——智能抢答器。 抢答器作为一种电子产品,已被人们所熟知并广泛应用于各种智力知识竞赛场合。抢答器在竞赛中有很大用处,通过抢答器的指示灯显示,数码管显示和警示蜂鸣等手段,能准确,公正,直观地判断出第1抢答者并协助比赛的顺利进行。但是,目前使用的抢答器大多数都采用了逻辑电路进行设计,分立元件较多,造成抢答器的成本较高。此外一般抢答器由模拟电路,数字电路或二者结合组成,其智能化程度低,故障率高,显示简单。现代电子技术的发展要求电子电路朝数字化,集成化方向发展,因此设计出全集成电路的多路抢答器是现代电子技术发展的要求。 2 .设计任务 本设计要求学生结合现有的实际条件,以单片机为控制核心,设计一个8路智能抢答器。要求实现的功能如下: 1) 抢答器可同时供8名选手或8个代表队比赛,分别用8个按键S1~S8进行抢答。 2) 主持人可以通过智能抢答器的按键设定每道题的抢答时间和回答时间。 3) 具有清零和非法抢答控制功能,并由主持人操纵,避免选手在主持人说“开始”前提前抢答,违反规则。 4) 当主持人启动“开始抢答键”后,定时器进行减计时,在10s内无人抢答表示所有参赛选手或参赛队对本题弃权,抢答时间耗尽后禁止抢答。 5) 倒计时5s时,如果仍无人抢答,则系统每1s报警一次,用以提示参赛选手。 6) 抢答器具有锁存与显示功能。即选手按下按键,锁存相应选手的参赛号码,并在LED数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,其他按键者将不能响应,以便公平地选择第一个抢答者。 7) 参赛选手在设定的时间内进行抢答,抢答有效,显示器上显示选手的编号同时进入回答问题的30s倒计时。 8) 倒计时期间,如果主持人想终止倒计时,可以按下“停止”按键,系统

八人抢答器的课程设计

郑州电力职业技术学院毕业生设计 题目:八人抢答器课程设计 系别:电力工程系 专业:供用电技术 班级:09供电三班 学号: 姓名:张华永 设计成绩指导教师赤娜 答辩成绩主答辩教师 综合成绩答辩委员会主任 目录 一引言 (4) 1.1 设计要求 (4) 1.2 功能要求 (4) 1.3 功能介

绍 (4) 二方案设计与论证 (4) 2.1 各部分电路简述 (4) 2.2 设计方案简述 (5) 三系统分析与设计 (5) 3.1 抢答器电路设计与相关元器件 (5) 3.2 定时电路设计与相关元器件 (7) 3.3 报警电路设计与相关元器件 (9) 3.4 时序电路与相关元器件 (9) 3.5 智力抢答器电路原理图 (10)

3.6 元器件清单 (11) 设计总结体会 (13) 参考文献 (14) 摘要 随着电子技术的发展,它在各个领域的应用也越来越广泛。人们对它的认识也逐步加深。人们也利用了电子技术以及相关的知识解决了一些实际问题。如:智能抢答器的设计与制作。抢答器是竞赛问题中一种常用的必备装置,从原理上讲,它是一种典型的数字电路。数字抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;主持人按开始按钮示意开始,以上两部分组成主体电路。通过定时电路实现计时功能,构成扩展电路。经过布线、焊接、调试等工作后数字抢答器成形。在抢答电路中利用一个优先编码器译出最先抢到答题权的选手的编号并经LED显示器显示出来,同时还要封锁电路以防其他选手再抢答。当选手答题完成后,主持人将系统恢复至零。 关键词:抢答;计时;锁存 一引言 (一)设计要求 1.设计一个智力抢答器,可同时供8名选手或8个代表队参加比赛. 他们的编号分别是1、2、3、4、5、6、7、8,各用一个抢答按钮,按钮的编号与选手的编号相对应,分别是S0、S1、S2、S3、S4、S5、S6、S7。

单片机课程设计八位竞赛抢答器的设计

单片机原理及接口技术 课程设计 八位竞赛抢答器的设计 姓名: 学号: 指导教师: 院系(部所):机电工程学院 专业:机械设计制造及其自动化 完成日期:2012年12月20日

摘要 随着单子技术的飞速发展,基于单片机的控制系统已广泛应用与工业、农业、电力、电子、智能楼宇等行业,微型计算机作为嵌入式控制系统的主体与核心,代替了传统的控制系统的常规电子线路。本设计是以八路抢答为基本理念。考虑到需设定限时回答的功能呢个,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和抢答的号码。用开关做键盘输出,扬声器发生提示,并且有警告灯显示,正常工作时为绿灯,报警或抢答等违规信号时则出现红灯。 关键词:AT89C51;抢答器;计数器

目录 1概述 (1) 2 抢答器的硬件系统设计 (3) 2.1 系统整体方案设计 (3) 2.2 系统硬件组成 (3) 3 最小系统与主控模块的设计与实现 (5) 3.1 单片机最小硬件系统的组成简述 (5) 3.1.1 电源电路 (5) 3.1.2 时钟电路 (6) 3.1.3 复位电路 (7) 3.2 主流程图 (8) 4 模块的设计与实现 (9) 4.1 抢答电路的设计 (9) 4.2 锁存器74HC573 (9) 4.3 主持人控制电路与扬声器的设计...................... 错误!未定义书签。 4.4 显示电路的设计.................................... 错误!未定义书签。 5 软件的设计 (12) 5.1语言选择 (12) 5.2软件总体设计 (12) 总结 (13) 参考文献 (15) 致谢 (16) 附录 (17)

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

课程设计(论文) 题目名称简易四路抢答器设计 课程名称单片机原理及应用 学生姓名瞿永 学号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、参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号并保持到主持人将系统清除为止。 二,方案设计与论证

8位竞赛抢答器课程设计

目录 1. 原理分析(by 张潇) (2) 1.1 设计任务 (2) 1.2 性能指标 (2) 1.3 工作原理 (2) 2. 方案选择(by 张潇) (3) 2.1 方案设定 (3) 2.2 方案比较 (3) 2.3 方案选择 (3) 3. 电路原理图绘制及仿真(by 王倩) (3) 3.1 所需元器件型号及数量 (3) 3.2 电路原理图 (4) 3.3 电路仿真结果 (5) 4. Pcb图绘制(by 朱文广) (5) 4.1 pcb绘制步骤 (5) 4.2 pcb绘制原则 (5) 4.3 8路抢答器pcb图 (7) 5. 综合调试(by 朱文广) (7) 5.1 软件调试 (7) 5.2 硬件调试 (9) 6. 总结(by 王倩) (10) 附录1:电路仿真图 (11) 附录2: 8路抢答器完整程序 (12)

1.1 设计任务 以单片机为核心,设计一个8位竞赛抢答器,同时供8名选手或8个代表队比赛。 设置一个系统清除和抢答控制开关S,开关由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。 抢答器具有定时抢答功能,且一次抢答的时间可由主持人设定。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。 1.2 性能指标 电源电压:直流5V±10% 选手组数:2-8组 初始抢答倒计时:20s 初始回答倒计时:30s 倒计时范围:1-99s可设 倒计时提示时间:最后5s 1.3 工作原理 八路数字抢答器原理框图如图1所示,其工作原理为:接通电源后,主持人未按下开始抢答,抢答器处于禁止状态,数码管显示“----”;主持人宣布“开始”同时按下开始抢答按键,抢答倒计时开始计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,回答倒计时开始计时、禁止二次抢答、数码管显示抢答选手编号以及回答剩余时间。如果再次抢答必须由主持人再次操作"清除"和"开始"状态开关。 图1 八路抢答器原理框图

课程设计 八路抢答器的设计

电子技术课程设计2007-2008-1 系别 班级 姓名 学号

一、题目 八路抢答器:设置8个抢答按钮,另设置1个主持人按钮来清零。主持人清零后,首先抢答人的号码显示出来并保持,直到主持人再次清零,可设置定时抢答,超出规定时间为无效抢答,只要有人抢答,就发出声、光指示。 二、主要技术指标 该抢答器具有倒计时、抢答、报警的功能。 三、方案论证及选择 (一)、设计要求 1、智力竞赛抢答器可同时功8名选手或8个代表队参加比赛他们的编号分别是0、1、 2、 3、 4、 5、 6、7,各用一个抢答按钮,按钮的编号与选手的编号相对应,分别是S0、S1、S2、S3、S4、S5、S6、S7; 2、给节目支持人设置一个控制开关,用来控制系统的清零和抢答的开始; 3、抢答器具有数据锁存和显示功能,抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,同时扬声器给出音响提示,此外,要锁存输入电路,禁止其他选手抢答,优先抢答的选手编号一直保持到主持人将系统清零为止; 4、抢答器具有定时抢答的功能,且一次抢答的时间可由主持人设定,当节目主持人启动“开始”键后,要求定时器立即减计时,

并用显示器显示,同时扬声器发出短暂的声响,声响持续时间 0.5s左右; 5、参赛选手再设定的时间内抢答有效,定时器停止工作,显示 器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零; 6、如果定时抢答的时间已到,却没有选手抢答时,本次抢答无 效,系统短暂报警,并封锁输入电路,禁止选手超时抢答,时间显示器上显示00。 (二)、电路设计 根据设计要求,可以把电路分为三块:定时电路、抢答电路和报警电路。 1、设计要点 定时抢答器的总体框图如图a所示,其工作过程是:接通电源时节目主持人将开关置于“清零”位置,抢答器处于静止工作状态,编号显示器灭灯,定时显示器显示设定的时间,当节目主持人宣布抢答题目后,说一声“抢答开始”,同时将控制开关拨到“开始”位置,扬声器给出声响提示,抢答器处于工作状态,定时器倒计时。当定时时间到,却没有选手抢答,系统报警,并封锁输入电路,禁止选手超时后抢答。当选手在定时时间内按动抢答键时,抢答器要完成以下四项工作: (1)优先编码电路立即分辨出抢答者的编号,并由锁存器进行锁存,然后由译码显示电路显示编码;

单片机八人抢答器课程设计报告

单片机八人抢答器课程设计报告

单片机计课程设报告 八人抢答器 专业:电子信息工程 姓名: 学号: -12-3

目录 一:名称与目的 1. 设计要求及目的二:硬件电路设计 1.总体原理图 2.时钟频率电路的设计 3.复位电路的设计 4.显示电路的设计 5.键盘扫描电路的设计 6.发声 7.系统复位 三.系统软件设计1.系统原理图 2.程序流程图 3.程序 四.调试 1.系统的调试 2.具体调试 3.调试实物图 第一章:要求:

1、八人抢答逻辑:只有一个最先抢答有效。 2、在主持人控制下,10秒内抢答有效。 3、采用数码管显示抢答10秒倒计时,若有抢答直接结束,显示结果。 4、抢答结束后用数码管显示抢答结果:抢答有效人编号;若有异常(提前抢答,犯规),显示抢答人编号和E,本次抢答结束。 5、设主持人控制键、复位键。 控制键:启动抢答 复位键:系统复位 6、开始、正常结束、抢答结束、违规抢答采用声音提示。 第二章:系统硬件设计 为使硬件电路设计尽可能合理,应注意以下几方面: (1) 尽可能采用功能强的芯片,以简化电路,功能强的芯片能够代替若干普通芯片,随着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。 (2) 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。 (3) 程序空间,选用片内程序空间足够大的单片机,本设计采用STC89C52单片机。

(4) I/O端口,在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些I/O端口,虽然当时空着没用,那么用的时候就派上用场了。原理图: 2.时钟频率电路的设计:单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度

基于单片机的八位抢答器课程设计报告

单片机课程设计报告 题目:电子抢答器系统设计 学院:电气信息学院 专业:通信工程 姓名: 学号: 指导老师:孙晓玲 一、设计任务 设计一个八路的电子抢答器系统,实现功能为:可供8个选手使用,可显示30s 倒计时,并可显示出抢到的选手号,并伴有提示音。 要求:(1)设计出硬件电路; (2)设计出软件编程方法,并写出源代码; (3)用PROTEUS进行仿真; 二、方案设计 1.设置一个定时开关,开关按下后开始30s倒计时,在定时开关按下之前进行抢答无效,使用两位数码管显示倒计时。 2.在30s内,等待八个按钮中任意一个按下,按下后使用一位数码管显示按下的选手号,同时蜂鸣器发出响声。 3.一旦有选手按下后,其他选手再按下均无效,同时30s倒计时停止计时,等待复位信号。 三、硬件设计 (一)选用AT89C51单片机芯片 单片机(SCM)是单片微型计算机(Single Chip Microcomputer)的简称。它是把中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口电路、定时/计数器以及输入输出适配器都集成在一块芯片上,构成一个完整的微型计算机。它的最大优点是体积小,可放在仪表内部。但存储量小,输入输出适配器简单,功能较低。目前,单片机在民用和工业测控领域得到最广泛的应用,早已深深地融入人们的生活中。 简单的说,用单片机系统来设计抢答器,实现两组的抢答时间即使是相差几微秒,也可分辨出哪组优先答题。

P0端口(P0.0-P0.7):P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1端口(P1.0-P1.7):P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1口作为第八位地址接收。 P2端口(P2.0-P2.7):P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3端口(P3.0-P3.7): P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL 门电流。当P3口写入“1”后,它们被内部上拉为高电平, 并用作输入。作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。(二)关键电路 1.时钟电路 一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。 单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的 时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表示。如时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12μs。 2.复位电路 AT89C51的复位由外部的复位电路实现。复位电路通常采用上电自动复位和按钮复位两种方式。本次设计采用按钮复位方式。 单片机的第9脚RST为硬件复位端,只要持续4个机器周期的高电平即可实现复位,硬件复位后的各状态可知寄存器以及存储器的值都恢复到了初始值。 3.数码管显示电路 本次课程设计采用了7SEG-MPX2-CC 的两位7段共阴极数码管,用来显示30s倒计时,和7SEG-MPX1-CC的一位7段共阴极数码管,用来显示抢答中的选手号码。位选端分别与P2口的第七位,第六位以及第零位相接。同时7段数码管线段通过上拉电阻接power,实现数码管的点亮。 4.报警电路 这里能利用程序来控制单片机P3.7口线反复输出高电平或低电平,即在该口线上产生一定频率的矩形波,接上扬声器就能发出一定频率的声音,再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使扬声器发出不同的声音。 5.按钮输入电路

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

学号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软件,通过仿真可以显示所设计系统的功能,对于程序的调试等有很大的帮助。

相关文档
最新文档