8位竞赛抢答器的设计

合集下载

电子技术课程设计8路抢答器设计

电子技术课程设计8路抢答器设计

电子技术课程设计8路抢答器一、设计任务与要求1. 抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 ~ S7表示。

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

3. 抢答器具有锁存与显示功能。

即选手按动按钮,锁存相应的编号,并在LED 数码管上显示,同时扬声器发出报警声响提示。

选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。

二、总体框图如图1所示为总体方框图。

其工作原理为:接通电源后,主持人将开关拨到“清零”状态,抢答器处于禁止状态,编号显示器灭灯;主持人将开关置“开始”状态,宣布“开始”,抢答器工作,扬声器给出声响提示(或者提示灯给出显示)。

选手进行抢答时,抢答器将完成:优先判断、编号锁存、编号显示、扬声器(显示灯)提示等操作。

当一轮抢答之后,禁止二次抢答。

如果再次抢答必须由主持人再次操作“清除”和“开始”状态开关。

上面的总体框图是我认为的最佳方案。

具体的说明:抢答器按钮就是输入一些高低电平信号,此实验是低电平有效。

优先编码电路用来把输入的高低电平信号编码,74LS148优先编码器及8—3编码器,输出3位2进制数,以代表不同的低电平信号。

锁存器用D触发器,因为D触发器结构和功能都比较简单,方便使用。

D 触发器使用4个,第四个除用来输出2进制数的最高位外,还用于控制信号的锁定,即触发或锁定触发器的工作状态。

数码显示器用DCD—七段数码显示管,即有4个输入信号的管子,能表示0到9十个数,而且输入的二进制数正好和十进制数一一对应。

主持人控制开关就是一个开关,用来清零和开始工作。

控制电路比较复杂,除了第四个触发器和主持人的开关外,还需要8个抢答器按钮组成的8输入与非门和第四个触发器用一个与门共同组成一个控制电路来控制信号的传输和锁定。

报警显示电路,由于没有报警器,所以选择一个LED灯来表示信号的锁定。

为了使更明显一些,给LED灯加了个连续脉冲信号,以使灯能够按我们需要的频率一闪一闪。

8路计时抢答器设计报告

8路计时抢答器设计报告

数字电子技术基础课程设计-----八位计时抢答器一、设计理念智力竞赛是一种生动活泼的教育方式,在各种智力竞赛中,最最激烈的便是抢答环节的比赛。

抢答引起参赛者和观众极大地兴趣,在短时间内,参赛选手在主持人抢答的口令下达后开始抢答,充分体现出参赛者思维的活跃。

在这类比赛中,对于谁先谁后抢答,在什么时候抢答,如何限定抢答的规定时间等问题,如果单凭主持人主观的判断,就很容易出现误判。

所以我们就需要一种具备自动锁存、置位、清零等功能的只能抢答器来解决这些问题。

二、设计要求设计一个具备计时功能的八路抢答器,它所要实现的功能如下:1、给八位参赛选手分别配备一个抢答按钮,编号为K0、K1、K2、K3、K4、K5、K6、K7。

2、主持人可以主持抢答、计时的开始与清零。

3、抢答器可以显示出最先按下抢答键的选手编号。

4、抢答器具有60秒倒数计时功能。

抢答规则:主持人按下开始抢答键,选手可以开始抢答,同时计时器开始60秒钟倒计时,选手通过优先按键得到抢答机会后,在计时器所显示的剩下时间内完成抢答,否则扣分。

三、设计方案1、设计思路根据设计的要求,我们小组的设计思路如下:该抢答器由开关电路、触发电路、触发锁存电路、优先编码电路、译码电路、计时电路所组成。

2、具体电路的设计及其工作原理 (1)电源电路限于我们现成的电源只有9V 直流电源,但是我们的电路工作电压应该是5V 的稳压直流电源,我们通过利用7805芯片对9V 进行降压处理,形成直流5V 稳压电源。

(2)抢答电路工作原理:74LS148有8个信号输入端I0 ~ I7、3个二进制码输出端A0 ~A2、输入使能端EI、输出使能端EO和优先编码工作状态标志GS, 其功能如表1 所示。

由表可知, 当EI的非=0时, 编码器工作; EI的非=1, 则不论8个输入端为何种状态, A0、A1、A2 输出为1,15端和14端输出为1,编码器处于非工作状态。

(附74LS148引脚图与真值表)当抢答开关S0 ~S7 中的任意一个开关按下时,编码器输出相应按键对应的二进制代码,低电平有效。

八路抢答器实验报告

八路抢答器实验报告

八路抢答器的实验报告一、设计题目八路抢答器设计二、设计要求1.设计一个竞赛抢答器,可同时供8名选手或者8个代表队参加比赛,他们的编号分别是1、2、3、4、5、6、7、8,各用一个抢答器的按钮,按钮的编号与选手的编号相对应。

2.给节目主持人设计一个控制开关,用来控制系统的清零和抢答开始。

3.抢答器具有数据锁存、显示的功能和声音提示功能。

抢答开始后,若有选手按动按钮,编号立即锁存,在数码管上显示选手的编号,并有声音提示。

此外,要封锁其他选手抢答。

优先抢答的选手的编号一致保持到主持人将系统清零为止。

三、设计思路工作原理为:1.接通电源前,抢答按钮与清零按钮都未按下。

接通电源后,主持人清除开关处于工作状态,抢答器处于工作状态,编号显示器显示为0,蜂鸣器未鸣响(为方便控制,电路设计为清除开关按下时是清零状态,未按下时为工作状态)。

等一轮抢答完成后(七段数码管显示出优先抢答队员编号,并蜂鸣器鸣响),主持人将清零开关按下数码管清为零,蜂鸣器停止鸣响。

然后先后把各队员抢答按钮与主持人清零按钮复位。

即可进入下一轮抢答。

原理为:电路中清零按钮控制D触发器集成块74LS175清零端低电平输入,按下时清零端输入为低电平(清零端低电平有效),未按下时输入高电平。

清零后D 触发器集成块74LS175 Q`端输出全变为高电平,使编码器74HC147(有效输入电平为低电平)无有效低电平输入,七段数码管上显示为0。

2.抢答时,队员按下抢答按钮的时间有先后次序,电路中每个抢答按钮连接一个D触发器,当一抢答按钮按下后其对应的触发器锁存住信号,Q`端输出有效低电平,同时通过反馈电路使D触发器集成块得脉冲信号终止输入,从而使其他D触发器停止工作,抢答后也无法锁存。

达到有先输入有先锁存功能。

原理为:根据与门功能特点:只要有一低电平输入输出即为低电平。

当D触发器集成块74LS175输出端输出一有效低电平后,电路中第7个与门U15A输出即为低电平,而U15A输出信号又与555触发器构成的多谐振荡器输出信号相与,因此只要U15A输出低电平,多谐振荡器产生的脉冲就无法输入,只有当D触发器集成块74LS175输出端输出全为高电平时脉冲才正常输入,各D触发器正常工作。

8位竞赛抢答器课程设计

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可设倒计时提示时间:最后5s1.3 工作原理八路数字抢答器原理框图如图1所示,其工作原理为:接通电源后,主持人未按下开始抢答,抢答器处于禁止状态,数码管显示“----”;主持人宣布“开始”同时按下开始抢答按键,抢答倒计时开始计时,扬声器给出声响提示。

选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。

8路抢答器设计八路智力竞赛抢答器

8路抢答器设计八路智力竞赛抢答器

1 前言1.1主要功能介绍(1)抢答器最多可供8名选手参赛,编号为1~8号,各队分别用一个按钮(分别为S1~S8)控制,并设置一个系统清零和抢答控制开关S,该开关由主持人控制。

(2)抢答器具有数据锁存功能,并将锁存数据用LED数码管显示出来,同时蜂鸣器发出间歇式声响(持续时间为0.5秒),主持人清零后,声音提示停止。

(3)开关S作为清零及抢答控制开关(由主持人控制),当开关S被按下时抢答电路清零,松开后则允许抢答。

输入抢答信号由抢答按钮开关S1~S8实现。

(4)有抢答信号输入(开关S1~S8中的任意一个开关被按下)时,并显示出相对应的组别。

此时再按其他任何一个抢答器开关均无效,指示灯依旧“保持” 第一个开关按下时所对应的状态不变。

1.2扩展功能介绍(1)抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如30秒)。

当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示,同时扬声器发出短暂的声响,声响持续时间0.5秒左右。

(2)参加选手在设定的时间抢答,抢答有效,定时器停止工作,显示上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零为止。

(3)如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时后抢答,时间显示器上显示00。

(4)当选手抢答完后,主持人可根据相关题的加减分对选手进行加分或减分。

2总体方案设计此次课程设计我们有两套方案一是硬件部分主要由单片机、74LS373锁存器、LED显示器、声音报警器和其它基本外围电子电路组成软件部分则采用51系列单片机通用C语言精心设计编写。

它所具有的功能包括:抢答器同时供8名选手或8个代表队比赛,当开关S按下,抢答器发出0.5秒的报警声系统开始进行计时,选手可进行抢答,当计时30秒之后若没人抢答,则系统发出警报并禁止抢答,定时显示数码管上显示00字样,之后等待开关S按下,系统复位;若在30秒有选手进行抢答,此时扬声器会发出3秒时间的警报,同时在定时显示数码管上显示选手抢答时间(以秒为最小单位),编号显示数码管上显示抢答选手编号,显示器上的状态直到开关S按下将系统复位为止;系统复位时所有的数码管不显示任何的数据。

八路竞赛抢答器的设计方案

八路竞赛抢答器的设计方案

八路竞赛抢答器的设计方案一,设计题目、目的及要求1.1设计题目8路抢答器的设计1.2设计目的1、熟悉74ls148、74ls28、74ls29的功能和应用掌握其工作原理,并熟练运用它们。

2、熟悉面包板的使用。

3、掌握数字抢答器的工作原理以及制作方法。

4、增强动手能力,把握严谨的工作态度。

5、熟练运用所学习的模电及数电知识。

1.3设计要求1、八个选手或代表队参加比赛,编号0,1,2,3,4,5,6,7,各用一个抢答按钮,其编号与参赛者的号码一致。

此外,一个按钮给主持人用来清零;2、抢答器具有数据锁存功能,并将所锁存的数据用数码管显示出来;3、数码管不显示后动作选手编号,只显示先动作选手编号,并保持到主持人清零为止;4、选手只有在主持人说开始抢答后才能开始抢答拨动开关。

5、并且抢答结束后裁判没有清零,选手不得动自己的开关。

二、方案设计2.1、总体设计思路按照题目的要求,经过自己的思考与分析以后,将思路确定。

要满足题目所说的,要能完成抢答功能,当某一个选手输入后,屏幕上能显示出该选手的号码,同时通过锁存能限制其他选手的抢答,并且自己抢答后,由于锁存效果也不能反悔。

当抢答开始时,主持人未说开始抢答时,裁判的开关置于清零端,由于此时数码管处于灭灯状态,所以无论选手如何操作,数码管也不会有数据显示,由此想到用裁判来控制清零端,当裁判清零时,即可清除数码管上的数字,并且由于开始时屏幕上不能有显示,所以当裁判置于开始端的时候,数码管译码器的灭灯输入端依然是灭灯输入,只有当选手触发时才能改变电平,输入内容。

另外锁存端必然是反馈锁存,所以要使用后面芯片的信号来反馈给前面的芯片的使能端以控制其使能输入,由此阻断其他选手的输入信号。

锁存后如果没有其他信号去解锁,系统就处于禁止工作状态不能再工作,所以想到要用裁判清零来控制使能端,在消除数码管显示的同时来解锁使能端,让电路恢复其功能。

2.2、方案设计2.2.1 设计方案1(个人方案)根据以上思路,决定使用以下流程图作为本次课程设计的方案,基本能实现抢答器的功能,可以完成说明书上的要求。

八路抢答器设计说明书 精品

八路抢答器的设计一、设计要求(1)设计一个智力抢答器,可同时供8名选手或八个代表队参加比赛,他们的编号分别是1,2,3,4,5,6,7,8,各用一个抢答按钮,按钮的编号与选手的编号相对应,分别是S0,S1,S2,S3,S4,S5,S6,S7。

(2)节目主持人设置一个控制开关,用来控制系统的复位和抢答开始。

(3)抢答器具有数据锁存和显示功能。

抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,同时扬声器发出提示声音,此外封锁输入电路,禁止其他选手抢答。

优先抢答的选手的编号一直保持到主持人将系统复位为止。

二、总体设计思路本次设计采用T0外部中断来实现主持人的控制开关,用P0口输出选手的段码,用P2口来读取按键选手号,用P1口来点亮选手相应的发光二极管。

三、硬件设计3.1 原理综述单片机:使用了AT89C51单片机芯片控制电路。

显示电路:P0口输出选手段码,P1口点亮相应的发光二极管。

按键电路:P3^2管脚接一个开关来实现主持人的控制开关,通过P2口接的按键来读取选手号。

图3.1 硬件框图3.2 元器件清单3.3 硬件原理图图3.2 硬件原理图四、软件设计4.1 程序流程图图4.1 主程序流程图4.2 程序及注释#include<reg51.h> //包含头文件REG51.H #define uchar unsigned char#define uint unsigned int //数据类型的宏定义uchar code seg7[9]={0xff,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80}; //7段数码管0-8断码uchar act[9]={0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //低电平有效的位码uchar num; //宏定义全局变量num bit bdata start; //定义开始按键start sbit bz=P3^3; //定义P3.3为bz//延时函数*********************************************************** void delay(uint k){uint i,j;for(i=0;i<k;i++){for(j=0;j<121;j++){;}}}//蜂鸣器*********************************************************void buzzer(void){while(1){bz=~bz;delay(10);}}//外中断0 ************************************************************ void EA_INT0() interrupt 0 //定义函数名为EA_INT0的T0外中断服务函数,中断号为0 {uchar in=1; //定义in=1start=!start; //start取反if(start==1) //判断是否开始抢答{while(in) //循环{P2=act[0]; //初始化P2if(P2!=0xff) //判断有无选手按下{delay(10); //延时确定有选手按下for(num=1;num<9;num++) //判断选手号{if(P2==act[num]) //读取选手号{bz=1;in=0;break;} //停止循环}}}}else{num=0;P3=0xff;bz=0;}}//******************************************************************************* void main(void) //主函数{ start=0; //初始化startP0=seg7[0]; //初始化段码P1=act[0]; //初始化发光二级管bz=0; //初始化蜂鸣器EX0=1; //允许外中断T0IT0=1; //外中断T0设为边沿触发EA=1; //开启总中断while(1) //无限循环{P0=seg7[num]; //P0输出段码P1=act[num]; //点亮相应的二极管}}五、软硬件调试5.1 软硬件仿真环境设置1)Keil 与Proteus连接连接开始必须在proteus安装目录下VDM51.dll文件复制到Keil安装目录的\C51\BIN 目录中,但新版本中没有,所以必须下载安装补丁vdmagdi.exe,则在Keil 安装目录的 \C51\BIN 目录中有文件:VDM51.dll2)修改keil安装目录下 Tools.ini文件用记事本(其它的编辑软件也可以,如Ultra Edit)打开Keil 根目录下的TOOLS.INI 文件,在[C51] 栏目下加入TDRV3=BIN\VDM51.DLL ("Proteus VSM Monitor-51 Driver" ) ,其中“TDRV3”中的“3”要根据实际情况写,不要和原来的重复。

八路竞赛抢答器设计实验报告

八路竞赛抢答器设计实验报告#八路竞赛抢答器设计实验报告##1.实验目的通过设计和制作八路竞赛抢答器,掌握数字电子技术的基本原理和应用,培养实际动手能力,提高团队协作和创新能力。

##2.实验原理八路竞赛抢答器主要基于数字电子技术的逻辑门、计数器、时序电路等原理。

每个参赛者的抢答器包含按钮、计数器、显示器等组件,通过按下按钮触发计数器计数,同时在显示器上显示计数结果。

##3.实验材料与器件-逻辑门:使用TTL(Transistor-Transistor Logic)或CMOS(Complementary Metal-Oxide-Semiconductor)逻辑门芯片。

-计数器:选择适当的计数器芯片,如74LS190或74HC161等。

-按钮开关:作为参赛者抢答的触发器。

-显示器:使用数码管或LED等显示模块。

##4.实验步骤###4.1设计电路图根据竞赛抢答器的要求,设计电路图,包括逻辑门的连接、计数器的接入、按钮开关和显示器的布置等。

###4.2制作原型根据电路图,制作抢答器的原型。

连接逻辑门、计数器、按钮、显示器,并确保电路的正确性。

###4.3编程(如有需要)如果抢答器需要特定的计分逻辑或显示效果,可能需要进行微控制器的编程工作。

在这一步骤中,确保编写的程序与硬件连接相匹配。

###4.4调试与测试逐一检查电路连接,确保没有短路或开路。

通过模拟按下按钮的操作,测试计数器和显示器的正常工作。

##5.实验结果与分析经过调试与测试,八路竞赛抢答器实现了预期的功能。

通过观察显示器的计数结果,可以准确判断参赛者的抢答顺序。

##6.实验总结通过本次实验,加深了对数字电子技术原理的理解,提高了动手制作电子装置的能力。

同时,实验中的问题与挑战也促使我们更好地合作解决问题,培养了团队协作与创新的精神。

##7.实验改进与展望为了进一步提高抢答器的性能,可以考虑引入更多的计数器、添加蓝牙或无线模块,以实现远程监控和计分等功能。

8路抢答器设计(含完整图)

数字电路课程设计报告8路数字抢答器1.概述抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 ~ S7表示。

另外设置系统清除开关一个,该开关由主持人控制。

抢答器具有锁存与显示功能。

即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在七段数码管上显示选手号码。

选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清零为止。

当主持人按下清除键后,参赛选手可以进行抢答,同时倒计时电路开始倒计时,抢答有效时,红灯亮,倒计时停止,显示器上显示选手的编号,并保持到主持人将系统清零为止。

2、8路数字抢答器各主要芯片介绍2.1、74LS14874LS148是一个8线—3线优先编码器。

74LS148外部管脚图、真值表如图所示:图一 74ls148 真值表由表不难看出,在0=S 电路正常工作状态下,允许70~I I 当中同时有几个输入端同时为低电平,即有编码输入信号。

7I 的优先权最高,0I 的优先权最低。

当07=I 时,无论其它输入端有无输入信号(表中以x 表示),输出端只给出7I 的编码,即000012=Y Y Y ,当74LS148的功能表输 入输 出S0I 1I 2I 3I 4I 5I 6I 7I2Y 1Y 0Y S Y EX Y1 0 0 0 0 0 0 0 0 0 x x x x x x x x 1 1 1 1 1 1 1 1 x x x x x x x 0 x x x x x x 0 1 x x x x x 0 1 1 x x x x 0 1 1 1 x x x 0 1 1 1 1 x x 0 1 1 1 1 1 x 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0U CC Y EX Y S I 3 I 2 I 1 I 0 Y 0I 4I 5I 6I7S Y 2Y 1GND 图2 74LS148管脚图16 9 74LS148 1 80167==I I 、时,无论其它输入端有无输入信号,只对6I 编码,即输出为001012=Y Y Y 。

8路抢答器电子设计

8路抢答器电子设计八路定时抢答器的设计方案1.设计题目八路数字抢答器的设计2.设计目的3.设计要求3.1设计指标:抢答器可供8名选手或8个代表队比赛,分别用8个按钮S0~S7表示。

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

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

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

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

3.2设计要求:3.2.1画出电路原理图。

3.2.2进行电路的仿真与调试。

4.设计方案多路智力竞赛抢答器的组成框该设计抢答器的电路主要是由抢答开关电路、触发电路、触发锁存电路、编码器、七段显示译码器几部分构成。

工作原理为:5.具体设计及原理图5.1抢答器电路的设计出(Q4—Q1)全部置0,使74LS48的BI的非=0,显示器灯灭;74LS148的选通输入端ST的非=0,使之处于工作状态,此时锁存电路不工作。

当主持人把开关S置于\开始\时,优先编码器和锁存电路同时处于工作状态,即抢答器处于等待工作状态,等待输入端的信号输入,当有选手将键按下时(如按下S5),74LS148的输出Y2Y1Y0的非=010,YE某的非=0,经RS锁存后,CTR=1,BI的非=1,74LS279处于工作状态,Q4Q3Q2=101,74LS48处于工作状态,经74LS148译码后,显示器显示为\5\。

此外,CTR=1,使74LS148的ST的非为高电平,74LS148处于禁止工作状态,封锁其他按键的输入。

当按键松开即按下时,74LS148的YE某的非为高电平,但由于CTR维持高电平不变,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性以及抢答电路的准确性。

如有再次抢答需由主持人将S开关重新置“清除”,电路复位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计专业电气工程及其自动化指导教师_______________________________ 学生______________ 颜良堂_____________ 学号B16 ___________题目8位竞赛抢答器的设计2013年12月25日目录设计任务与要求. ............................................................方案设计与论证 (3)方案一: (3)方案二:三、单元电路的设计..........................................芯片的选择及工作原理. (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个按钮SO〜S7表示。

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

抢答器具有锁存与显示功能。

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

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

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

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

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

通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加 1 (超过30时置0)。

同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。

方案设计与论证方案一:使用C语言编程实现基于单片机的八位抢答器的课程设计,用到的元器件有AT89C51、MAX7219按键、数码管、上拉电阻、蜂鸣器等。

使用汇编语言编程实现八位抢答器的课程设计,用到的元器件有AT89C51、74LS373、按键、数码管、上拉电阻、蜂鸣器等。

选择方案二的理由:首先汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言,具有很高的精确控制;其次选用74LS373芯片作为数码管的控制芯片是因为它容易控制选用3个741S373分别控制倒计时的两个数码管及一个显示抢答结果的数码管,所以我选择了方案二。

三、单元电路的设计芯片的选择及工作原理本设计使用到的元器件包括AT89C51芯片、数码管。

工作原理:仿真开始显示FFF;按下"复位”键显示倒计时初值,起初设的是30秒;再按下"设时”键,按一下计数初值加1,到30自动清零;按下“开始”键开始倒计时,每减一,有秒的声响;当有选手按下,则倒计时停止,显示当前倒计时数值和选手编号;若在倒计时计数到0,无人抢答则有1秒声响的报警。

系统的硬件构成及功能1、单片机晶振及复位部分电路电路2、选手抢答部分电路:由八个按键S0~S7以及8个阻值为1k的上拉电阻组成3、开始、复位、时间设置及扬声器部分电路:由3个按键、1个电阻、NPF和1个BUZZERS成, 用于主持人操作及扬声器提示报警4、显示部分电路:由3个74LS373芯片及3个数码管构成,用于显示倒计时时间和抢答结果四、软件的设计主程序流程图主程序Y显示抢答结果MAIN: MOV TMOD,#01H 主程序MOV TH0,#3CHMOV TL0,#0B0HSETB EASETB ET0SETBEXOSETB ITOMOV R4,#30 ;30秒倒计时MOV R7,#0AH ; 倒计时MOV R6,#0AH存放倒计时的显示值,初值设为30 MOV R0,#30 ;R0LCALL XIANSH2子程序1、开始、复位程序;******** 复位程序********预判复位键按下否FW: JNB ,FW1 ;JMP FW去抖动,判断是否真按下FW1: LCALL DELAY ;JNB ,FW2JMP FWFW2: MOV R3,#0BH ; 复位按下,则存放选手编号的R3,放入"灭" 的代码倒计时初值R4放入显示倒计时寄存器R0中MOV A,R4 ;MOV R0,ALCALL XIANSH1; 开始程序SAM: JNB ,PKJMP SAM扫描开始键是否按下PK: JNB ,PK1 ;JMP SAM按下则R3存"灭”代码,PK1: MOV R3,#0BH ;SETB TR0 ;/ 启动定时器MOV R2,#0AH ; 中断次数设为10次,刚好1秒HERE: CJNE R1,#01H,YY ;若R1中存放的选手按键标志位为1,则JMP STAR ;否则继续循环 等待中断JMP RETURN ; 按下则返回转入 STARYY: JMP HERE 2、中断程序 ; 中断程序 IT0P: CLR TR0DEC R2CJNE R2,#05H,JX0 ;clrJX0: CJNE R2,#00H,JX1秒 setb DEC R0 LCALL XIANSH1 MOV R2,#0AH ;R2JX1: LCALL SAMOCJNE R1,#01H,JX2 按下则返回 JMP RETURNJX2: JNB ,PK2JMP CZ PK2: LCALL DELAYJNB ,QFW JMP CZ QFW: MOV R1,#01H中断 5次后,开启扬声器中断 10次后,关闭扬声器,这样喇叭响中再存入中断次数扫描选手按键标志位R1,未按下则转JX2检测复位键按下否CZ: CJNE R0,#00H,CZ1clr 及时完毕无人抢答则扬声器开启LCALL DELAY5 延时1秒MOV R1,#01H ;R1 设1JMP RETURN 中断返回CZ1: MOV TH0,#3CH 计时器初值重装MOV TL0,#0B0HSETB TR0RETURN: RETI3、选手键盘扫描程序; 选手键盘扫描程序SAMO: JNB ,XS1JNB ,XS2JNB ,XS3JNB ,XS4 ; 预扫描选手按键是否按下JNB ,XS5JNB ,XS6JNB ,XS7JNB ,XS80RETURN2:RET ; 未按下则返回XS80: LJMP XS8XS1: LCALL DELAY ; 去抖动再判是否按下JNB ,XS11JMP RETURN2XS11: MOV R1,#01Hsetb ; 按下则显示1 号扬声器关闭LCALL XIANSH1MOV R3,#01HXS2: LCALL DELAYJNB ,XS22JMP RETURN2XS22: MOV R1,#01Hsetb ; 按下则显示2 号扬声器关闭MOV R3,#02HLCALL XIANSH1JMP RETURN2XS3: LCALL DELAYJNB ,XS33JMP RETURN2XS33: MOV R1,#01Hsetb ; 按下则显示3号扬声器关闭MOV R3,#03HLCALL XIANSH1JMP RETURN2XS4: LCALL DELAYJNB ,XS44JMP RETURN2XS44: MOV R1,#01H ; 按下则显示4号扬声器关闭setbMOV R3,#04HLCALL XIANSH1JMP RETURN2XS5: LCALL DELAYJNB ,XS55XS88: MOV R1,#01HXS55: MOV R1,#01H setbMOV R3,#05H LCALL XIANSH1 JMP RETURN2 XS6: LCALL DELAY JNB ,XS66 JMP RETURN2 XS66: MOV R1,#01H setb ; MOV R3,#06H LCALL XIANSH1 JMP RETURN2 XS7: LCALL DELAY JNB ,XS77JMP RETURN2 XS77: MOV R1,#01H setb MOV R3,#07H LCALL XIANSH1 JMP RETURN2 XS8: LCALL DELAY JNB ,XS88 JMP RETURN2按下则 显示 5号 扬声器关闭按下则 显示 6号 扬声器关闭按下则 显示 7号 扬声器关闭setb按下则 显示 8号 扬声器关闭MOV P2,A ; 显示十位CLR选择显示个位的数码管MOV R3,#08H LCALL XIANSH1 JMP RETURN2 4、数码管显示程序 ; 显示程序XIANSH1:MOV A,R0MOV B,#0AH ;R0 和个位 DIV AB MOV R7,A MOV R6,B XIANSH2:SETBCLR ;CLR MOV A,R3MOV DPTR,#SEGTABMOVC A,@A+DPTR MOV P2,ACLR SETB ;CLR MOV A,R7MOV DPTR,#SEGTABMOVC A,@A+DPTR CLR中存放的倒计时显示值 除 10 分出十位;十位存入R7中 ;个位存入R6中选择选手编号的数码管; 调入代码; 显示选手编号选择显示十位的数码管调入代码SETB MOV A,R6RET5、抢答时间设计程序 ; 抢答时间设置程序样可以全局不变,R (会倒计时中递减而改变MOV R4,A LCALL XIANSH1 RETI 6、延时子程序;10ms 延时程序(用于去抖动) DELAY: MOV R7,#20 D1: MOV R6,#248 D2: DJNZ R6,D2DJNZ R7,D1 RET;1s 延时程序(无人抢答报警) DELAY5:MOV R7,#40 DL1: MOV R6,#50MOV DPTR,#SEGTAB MOVC A,@A+DPTR MOV P2,A; 调入代码; 显示个位SHESH:INC R0CJNE R0,#31,BQL MOV R0,#00H BQL: MOV R3,#0BHMOV A,R0; 倒计时初值加 1倒计时初值设置超过 30 自动清零倒计时初值存入其专用寄存器R 知,这DL2: MOV R5,#248DL3: DJNZ R5,DL3DJNZ R6,DL2DJNZ R7,DL1RET五、仿真与调试抢答器调试结果1、开始开始运行仿真电路数码管显示FFF。

相关文档
最新文档