单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc

上传人:wj 文档编号:4844233 上传时间:2023-05-07 格式:DOC 页数:36 大小:719KB
下载 相关 举报
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第1页
第1页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第2页
第2页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第3页
第3页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第4页
第4页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第5页
第5页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第6页
第6页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第7页
第7页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第8页
第8页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第9页
第9页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第10页
第10页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第11页
第11页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第12页
第12页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第13页
第13页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第14页
第14页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第15页
第15页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第16页
第16页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第17页
第17页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第18页
第18页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第19页
第19页 / 共36页
单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc

《单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc(36页珍藏版)》请在冰点文库上搜索。

单片机课程设计--8051系列单片机控制的八路智力抢答器设计.doc

单片机课程设计

目录

1系统设计 4

1.1设计任务与要求 4

1.2方案比较与论证 4

1.38051单片机系统说明 5

1.3.18051单片机简介 5

1.3.280C51的时序图 6

1.48051引角及其功能 6

1.5设计抢答器的目的与意义 7

2主要元器件分析 8

2.180C51芯片 8

2.2数码管 8

3硬件设计电路(使用PROTEL软件设计) 9

3.1单元电路设计 9

3.1.1单片机最小系统单元设计 9

3.1.2控制电路设计 10

3.2总电路设计 12

3.3PROTEL绘制的PCB图 13

4程序设计 14

4.1、程序流程 14

4.2、源程序介绍 17

5功能仿真 23

致谢 27

摘要

抢答器是一种应用非常广泛的设备,在各种竞猜、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。

早期的抢答器只由几个三极管可控硅、发光管等组成,能通过发光管的指示辨认出选手。

现在大多数抢答器均使用单片机和数字集成电路,并增加了许多新的功能,如选手号码显示、抢按器或抢按后的计时、选手得分显示等功能。

本文介绍了用8051系列单片机控制的八路智力抢答器。

该抢答器除具有基本的抢答功能外,还具有定时、计时和报警功能。

关键字:

抢答器;单片机;报警

引言

在知识比赛与娱乐竞赛中,特别是做抢答题目的时候,在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。

如果在抢答中,靠视觉是很难判断出哪组先答题。

利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题。

本文主要介绍了单片机抢答器设计及工作原理,以及它的实际用途。

系统工作原理本系统采用8051单片机作为核心。

控制系统的四个模块分别为:

存储模块、显示模块、语音模块、抢答开关模块。

该抢答器系统通过开关电路八个按键输入抢答信号;利用蜂鸣器完成语音的录放功能;利用存储程序;利用一个数码管来完成显示功能。

工作时,用按键通过开关电路输入各路的抢答信号,经单片机的处理,输出控制信号,控制数码管和蜂鸣器工作。

在数码管上显示哪一组先答题,并通过数码管显示选手的序号以及开始倒计时,从而实现整个抢答过程。

“一种基于单片机的抢答器”与一般抢答器有四点不同:

首先,抢答器反应异常灵敏。

据了解,此抢答器的反应时间仅为几十微秒,大大缩短了抢答器的反应时间,使抢答器可以迅速高效的工作。

其次,抢答质量有保证。

在抢答过程中,当有人首先枪答成功的同时,会伴有响亮的声音提示,并且,不同的抢答器会有不同的声音,为比赛更加公正透明化提供了依据。

第三,抢答器设置了复位键。

抢答的活动常常会有几个环节构成,为了保证在每个环节中枪答器都可以快速高效的运作,使得抢答更加顺利的进行,此类抢答器设置了复位键。

最后,抢答器利用单片机技术。

利用这一技术,保证了抢答器拥有上述功能的同时,提高了抢答器的寿命与质量,让抢答器可以更加实用的同时,提高了抢答器的技术含量。

1系统设计

1.1设计任务与要求

设计并制作一个基于单片机8051最简连线抢答器

1、基本要求

<1>具有八路输入,能够识别最先输入的信号,显示选号,并有声音提示。

<2>对回答问题所用的时间进行倒计时显示,并提示结束时间报警。

<3>具有抢答开关功能,按下该键后系统进入抢答状态。

<4>主持人能够及时对电路进行屏幕清零,进行下一题的抢答

2、发挥部分

<1>在按下抢答开关之前的信号判断为提前抢答,显示选号,声音提示,连续达到定次数后限制其抢答。

<2>具有设置上述提及的时间、次数等参数的功能。

1.2方案比较与论证

方案一:

系统各部分采用中小规模集成数字电路,用机械开关按钮作为控制开关,完成抢答输入信号的触发。

该方案的特点是中小规模集成电路应用技术成熟,性能可靠,能方便地完成选手抢答的基本功能,但是由于系统功能要求较高,所以电路连接集成电路相对较多,而且过于复杂,并且制作过程工序比较烦琐,使用不太方便。

方案二:

该系统采用8051系列单片机80C51作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。

由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。

整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。

MCS-51单片机特点如下:

<1>可靠性好:

单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的CPU,程序指令和数据都可以写在ROM里,许多信号通道都在同一芯片,因此可靠性高,易扩充。

<2>单片机有一般电脑所必须的器件,如三态双向总线,串并行的输入及输出引脚,可扩充为各种规模的微电脑系统。

<3>控制功能强:

单片机指令除了输入输出指令,逻辑判断指令外还有更丰富的条件分支跳跃指令。

方案比较及其选用依据,显然方案二比方案一简单的多,不但从性能上优于方案一,而且在使用上及其功能的实现上都较方案一简洁,并且由于单片机具有优越的高集成电路性,使其工作速度更快、效率更高。

另外80C51单片机采用12MHz的晶振,提高了信号的测量精度,并且使该系统可以通过软件改进来扩张功能。

而方案一采用了中小规模集成电路,有其复杂的电路性能,从而可能会使信号的输入输出产生延时及不必要的误差。

依此依据选择方案二比较适合。

总原理图见附录2。

其原理框图如下:

抢答按扭

优先编码电路

锁存器

译码电路

译码显示

主持人控制开关

控制电路

报警电路

秒脉冲产生电路

定时电路

译码电路

显示电路

图1-1抢答器的原理框图

1.38051单片机系统说明

1.3.18051单片机简介

8051系列单片机是国际上流行多年的代表机型,是国内高校教学和初学者入门首选的主流机型,也是在各种技术期刊和专业书籍中出现频率最高的经典机型。

本文以标准80C51为模型,并适当兼顾8051系列的共性和常用型号的特性。

内容主要包括:

硬件架构、ROM、RAM、指令系统、汇编程序基础和汇编语言工具链、并行端口、定时器、中断逻辑、复位逻辑、时钟电路、电源电路等功能电路的结构和工作原理,以及片内程序存储器编程原理。

1.3.280C51的时序图

时序图如图1-2所示:

图1-280C51的时序图

时序控制电路:

①主持人将控制开关拨到“开始”位置时,扬声器发声,抢答电路和定时电路进入正常抢答工作状态。

②当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。

③当设定的抢答时间到,无人抢答时,扬声器发声,同时抢答电路和定时电路停止工作。

图1-3时序控制电路

1.48051引角及其功能

电源端Vcc40脚

接地端GND20脚图1-480C51的引脚

时钟信号输入端XTAL218脚

时钟电路引脚XTAL119脚

复位信号输入端RST9脚,高电平有效

地址锁存允许信号端ALE30脚,

6分频振荡周期,PSEN29脚

程序存储器允许输出信号端用于读取外部的程序存储器,每个机器周期中两次有效。

EA31脚外部程序存储器地址允许输入,接高电平时,执行片内程序存储器的内容,当PC超过0fffH时,自动变0。

接低电平时,访问外部程序存储器。

P039~32脚8位准双向I/O,在做输入时,要先向口地址80H写1,此时由内部上拉提成高阻态。

P11~8脚8位准双向I/O口

1.5设计抢答器的目的与意义

通过这次课程设计,掌握80C51单片机的原理,了解简单多功能抢答器组成原理,初步掌握多功能抢答器的调整及测试方法,提高动手能力和排除故障的能力。

同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解多功能抢答器各单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。

初步掌握多功能抢答器的调整及测试方法,提高动手能力和排除故障的能力。

设计思路:

抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。

早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过发光管的指示辩认出选手号码。

现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手得分显示等功能。

本课题利用80C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手号码。

用开关做键盘输出,蜂鸣器发生提示。

系统达到要求:

在抢答中,只有开始后抢答才有效,如果在开始抢答前

抢答为无效;抢答限定时间和回答问题的时间可设在1-99s设定;可以显示是哪位

选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,时间完后系统自动复位;按键锁定,在有效状态下,按键无效非法。

而基于单片机的竞赛抢答器能解决上述的各个问题。

2主要元器件分析

2.180C51芯片

80C51内含8位CPU;广泛的布尔处理能力:

32根双向且分别可寻址的I/O线;128字节RAM;2个16位定时器/计数器;全双工异步串行口(UART);2个中断优先级;5个中断源;片内有时钟震荡器;4K字节片内ROM程序储存器;可寻址的64K字节外部程序储存空间;可寻址得64K字节外部数据储存空间;无片内ROM的8051形式是8031,EPROM型是751,8051AH是采用HMOS工艺制造,所以其管脚与8051兼容。

2.2数码管

数码管有8个输入接口和一个共阴极端,8个输入端分别接A,B,C,D,E,F,G七个显示管和一个小数点端DP,数码管引脚图如图2-1。

数码管代替二极管,也就是用一位数字的显示来代替两位的二极管,完成同样的故障显示功能。

数码管可以把我们需要的POST代码显示出来,在PC的操作系统引导工作完成前,数码管显示的代码总处于变化状态。

图2-1数码管引脚图

1、数码管使用条件

(1)段及小数点上加限流电阻。

(2)使用电压:

段:

根据发光颜色决定;小数点:

根据发光颜色决定。

(3)使用电流:

静态:

总电流80mA(每段10mA);动态:

平均电流4-5mA,峰值电流100mA。

2、数码管使用注意事项说明

(1)数码管表面不要用手触摸,不要用手去弄引角;

(2)焊接温度:

260度;焊接时间:

5s;

(3)表面有保护膜的产品,可以在使用前撕下来。

3硬件设计电路(使用PROTEL软件设计)

3.1单元电路设计

3.1.1单片机最小系统单元设计

根据上面的方案分析,本设计的硬件部分可缺的震荡、复位电路构成了本设计的接线图,控制系统主要由单片机应用电路、存储器接口电路、显示接口电路,抢答电路,主持人控制电路等组成。

其中单片机8051是系统工作的核心,它主要负责控制各个部分协调工作.所需元件:

该系统的核心器件是8051。

在其外围接上复位电路、上拉电阻、数码管、按钮及蜂鸣器。

元件为:

晶振X1、电容C1、C2、电阻RES、外部中断0,P3.2由裁判控制,是抢答开始键。

P1.0-P1.7是8组抢答的输入口, P2.0--P2.3口为数码管的段选口,位选口用的是P0.0--P0.7输出,P3.7口为蜂鸣器输出口。

P0口和P1口要分别接上上拉电阻。

设计如图3-1所示

图3-1单片机基本电路

3.1.2控制电路设计

1)八个开关按钮电路图3-2:

图3-2按钮电路

2)蜂鸣器电路图3-3所示:

图3-3蜂鸣器电路

该电路是由单片机P3.7端口输出信号经过三极管驱动放大后使蜂鸣器发出声音。

3)数码管显示电路,如图3-4所示:

图3-4数码管显示电路

该数码管电路使用的是共阳数码管,通过P0.0-P0.7控制数码管的A-G的各个相应段,P2.0-P2.3输出信号通过三极管功率放大后控制哪一个数码管显示。

4)主持人控制电路,如图3-5所示:

图3-5主持人控制电路

当主持人宣布答题开始时,主持人按下迅速S11,如图可使P3.7端口的电压拉低,相当是给单片机一个中断,单片机开始倒计时。

3.2总电路设计

本系统程序设计采用T0的溢出中断来实现倒计时定时,采用T0的溢出中断来使喇叭发出一定频率的声音;用一个两位LED来显示倒计时,另外用一个两位LED显示选手号。

其中,倒计时显示的两位LED用的是共阴极接法,选手号显示LED用的是共阴极接法;并且通过动态显示法(即位选控制)来实现四个LED的同时显示。

如附录1所示。

3.3PROTEL绘制的PCB图

如图,我们将绘制出的PCB图打印出来如图所示,最后就可以经过自己刷板或者工厂刷板后得到我们的印制电路板了。

图3-6抢答器PCB图

图3-7印制板底部布线图图3-8印制板元器件面摆放图

4程序设计

4.1、程序流程

由方案分析知,本设计涉及到的功能子程序包括:

查询程序、非法抢答处理程序、INT0(调抢答时间)、INT1(调回答时间)、倒计时程序、正常抢答处理程序、犯规抢答程序、显示程序、发声程序、T0溢出中断(响铃程序)、T1溢出中断(计时程序)。

由设计的硬件部分看到,本设计采用P3.2、P3.3分别接抢答时间调节和答题时间调节按钮,即通过外部中断0、外部中断1分别控制抢答、答题时间的调整。

因此,设计的软件部分可分为工作模块、外部中断0模块、外部中断1模块。

对流程图的分析,也分三部分来介绍。

1)工作时(非调节时间时)的流程

平时正常工作时,程序的流程图绘制如图4-1:

图4-1抢答器工作流程图

对工作流程图中的某些部分解释如下:

初始化部分:

包括对定时计数器的工作方式、初始化数值的设置,还包括对抢答时间与答题时间的预设,另外,还应对外部中断0、外部中断1进行开放。

抢答倒计时:

当主持人按下抢答键后,系统进入中断程序,开始计时,本次设计为10S。

犯规程序部分:

包括对犯规选手号的显示、报警器的间断工作,程序停止运行,并显示犯规的选手号码。

另外,由于在设计要求主持人能随时对工作过程终止,因此,要不断查询停止键的状态,一旦按下,便回到初始化后的状态;在倒计时过程中设定5S报警,因此程序在运行中要不断与5S比较,当小于5S时,还需调用发声程序;小于5S后,又需要不断将与0较,当其等于零时,立即返回。

2)外部中断0(抢答时间调整)流程

外部中断0(抢答时间调整)的流程图见图4-2:

图4-2中断程序流程图

一旦因P3.2对应键的按下,便进入INT0中断过程。

程序开始对答题选手进行时间倒计时,本设计为10S倒计时,当时间还剩5S时,调入报警子程序,驱动蜂鸣器发声。

另外,在中断过程中还需要不时对停止按钮进行查询,一旦发现其按下,立即中断返回。

由于本中断过程在返回前一直是循环执行的,因此,只需要在每次循环末查询一次即可,如流程图所示。

3)答题程序流程

图4-3答题流程图

与抢答时间调整类似,一旦因P3.2对应的按钮按下,便进入INT0中断过程。

通过不断对P3.2(减1s)进行不断的查询,来对答题时间进行调整,同上,在中断过程中,也还需要不时对停止按钮进行查询,一旦发现其按下,立即中断返回。

至此,流程图已介绍完毕,下面将对设计的源程序进行介绍:

4.2、源程序介绍

根据流程图中的介绍,本设计的源程序除主程序外,好包括查询程序、非法抢答处理程序、抢答时间调整程序、答题时间调整程序、倒计时程序、正常抢答处理程序、犯规抢答程序、显示程序、发声程序、T0溢出中断程序、T1溢出中断中断程序。

下面将对下面将对其一一介绍。

完整的源程序参见附录2

a)主程序:

包括对两个定时计数器的初始化、开中断、抢答时间和答题时间的预设等相关设置:

MAIN:

MOVTMOD,#11H;设定时器计数器为模式1

MOVTH0,#0F0H

MOVTL0,#0FFH;设置喇叭的发声频率

MOVTH1,#3CH

MOVTL1,#0B0H;设置T1的溢出中断周期为50ms

SETBET0;开放T0

SETBEX0;开放外部中断0

CLROK;OK为开始键按下的标志位(为1时表示按下)

CLRRING;RING为响铃的标志位

SETBTR0;一开始就运行定时器,以开始显示10.如果想重新计数,重置TH1/TL1就可以了

MOVR1,#10;初设抢答时间为10s

MOVR2,#20;初设答题时间为20s

b)查询程序:

对开始键、停止键、时间控制键、八路抢答键进行查询,若为按下,则消抖后,转入相应功能子程序(或调用某子程序):

START:

MOVR5,#00H;倒计时个位赋初值0

MOVR4,#01H;倒计时十位赋初值1

MOVR3,#0BH;选手号赋初值F

ACALLDISPLAY;未开始抢答时,显示10

JBP3.2,NEXT;开始键未按下(值为1),则跳至NEXT

ACALLDELAY;按下,则调显示子程序,同时也起到延时作用

JBP3.2,NEXT;去抖动,若开始键未按下,则跳到非法抢答查询

ACALLBARK;按键发声

MOVA,R1

MOVR6,A;送R1->R6,因为R1中保存了抢答时间

SETBOK;抢答标志位,用于COUNT只程序中判断是否查询抢答

MOVR7,#01H;读抢答键数据信号标志,这里表示只读一次有用信号

MOVR3,#0AH;抢答只显示计时,灭号数

AJMPCOUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面

NEXT:

JNBP1.0,FALSE1;下面为查询是否有选手犯规,是则跳入非法抢

JNBP1.1,FALSE2;答处理程序

JNBP1.2,FALSE3

JNBP1.3,FALSE4

JNBP1.4,FALSE5

JNBP1.5,FALSE6

JNBP1.6,FALSE7

JNBP1.7,FALSE8

AJMPSTART

c)非法抢答处理程序

随着查询程序,若在查询程序中发现有选手提前抢答,则程序转到非法抢答处理程序开始执行。

比如,检测到选手1犯规,则执行以下语句:

FALSE1:

MOVR3,#01H;送选手号

AJMPERROR;转犯规抢答程序

按照以上方法,可以得到FALSE2至FALSE8的编写方法,可参见附录源程序中的非法抢答处理程序部分。

d)INT0处理程序(抢答时间程序)

当P3.2按下后,程序转入INT0中断处理程序,程序流程参见图四INT0流程图。

另外,在调用显示程序前,还需要对当前抢答时间进行十六进制——十进制转换,将个位存入R4,十位存入R5,选手号不显示(R3存入0AH),具体编写参见附录源程序。

e)倒计时程序

这里的倒计时程序包括抢答倒计时和答题倒计时,为了编写方便,最后五秒的倒计时提示也包含在本部分。

程序中,首先要对T0溢出中断次数清零(一次中断为50ms),因为定时计数器0选用的是方式1,没有自动载入计数初值的功能,这里还需要对其赋初(3CB0H),每当T0溢出中断次数达到20次(50ms×20=1s),就对倒计时减一。

同样,这里需要调用到显示子程序,因此,也需要将倒计时转换为十进制,分别个位、十位分别存入R4、R5。

如果是在抢答倒计时,在倒计时过程中,若查询有人抢答,则要立即跳转到正常处理程序执行。

当倒计时小于等于5s时,通过每秒钟响0.5s铃来给与提示。

另外,还要不断对停止键查询,一旦发现其按下,则跳转到查询程序。

若倒计时及时完毕,也是跳转到查询程序。

g)正常抢答处理程序

在进行抢答倒计时的过程中,若有选手抢答,则程序转入抢答倒计时执行。

先按键发声,再将答题时间送入R6,进入答题倒计时,并将选手号送R3,以便显示。

另外,还需要对开始标志位清零,来封锁其他选手的抢答。

这里以选手一的抢答为例:

若检测到选手一最先抢答,则执行以下程序:

TRUE1:

ACALLBARK;调用发声提示,按键发声

MOVA,R2

MOVR6,A;答题时间R2送倒数计时R6

MOVR3,#01H;选手号送R3(以便显示)

CLROK;封锁其他选手抢答

AJMPCOUNT;跳至倒计时程序

同理,可以得到其他选手的处理程序。

详细程序请参见附录源程序中正常抢答处理程序部分。

h)犯规抢答程序

当选手在开始键按下之前进行了抢答,程序先转到非法处理程序执行,非法处理程序确定是哪位选手犯规后,就转入犯规抢答程序。

在进入犯规处理程序后,首先对定时计数器1的溢出中断次数清零,并对其赋初值(3CB0H),再灭显示0.3s,接着显示选手号并响铃0.5s。

直至检查到停止按钮按下,才返回到查询程序。

ERROR:

MOVR0,#00H;定时计数器1的溢出中断次数清零

MOVTH1,#3CH

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 交通运输

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2