单片机的四路电子抢答器设计
基于单片机实现智能4路抢答器的设计
智能四路抢答器目录一、前言 (3)二、方案设计 (3)1、方案比较 (3)2、系统总体设计方案与实现框图 (3)三、理论分析 (3)四、电路设计 (4)1、按键部分 (4)2、显示部分 (4)五、软件模块 (5)六、测试方法与数据 (6)七、结论 (6)八、参考文献 (6)一、前言本设计要求能够在主持人按下开始键后,四个参赛者开始抢按自己的按键,谁的按键先按下,谁面前的灯就会亮并且有相应的提示,当参赛者耗时太多时又会有相应的提示。
根据设计的要求,本系统采用独立式按键,通过单片机不停的扫描按键来控制LED灯和蜂鸣器,并用定时器T0来定超时的时间,当超时的时候让蜂鸣器响。
二、方案设计1、方案比较(1)、总体设计方案一:采用可编程I/O口扩展芯片81558155作为单片机的扩展接口能实现很多功能,但是这个系统并不复杂,用8155会浪费很多的资源,而且8155要用P0和P2端口作为地址线对它进行读写,这样不仅浪费端口还使得编程变的复杂。
从节省资源和简化编程的角度考虑,放弃了此方案。
方案二:直接采用AT89C51单片机直接用单片机不仅编程被简化,还有效的利用了各个端口。
8051单片机的资源完全够这个系统的要求。
所以最终选择了此方案。
(2)、模块方案一:采用4*4矩阵键盘此种键盘是常用的按键扫描方法,但是本系统只需要六个按键,这样就会浪费十个,而且矩阵按键扫描要送数读数,对于编程很复杂,最终放弃了此方案。
方案二:采用独立式键盘本系统只要六个按键就可以,用独立式键盘不仅节省端口还使编程变得简单。
程序只要不停的读数检查就行。
所以,最终选择此方案。
2、系统总体设计方案与实现框图采用六个独立式的键盘作为按键输入,当在开始后有按键按下时,就会有对应于这个按键的灯亮并且蜂鸣器响一声,其它按键再按也无效。
十秒之后如不清除,蜂鸣器就会一直响,提示已经到时间。
框图如图1。
- 1 -6图1三、理论分析51单片机的端口上电是高电平,而且当外部没有输入时能自动的弹跳到高电平,所以通过按键所接端口的高低电平变化可以判断出哪个按键按下了。
51单片机的四路电子抢答器设计
目录1设计要求与功能 (4)1.1设计基本要求 (4)2 硬件设计 (4)2.1控制系统及所需元件 (4)2.2抢答器显示模块 (5)2.3 电源方案的选择 (6)2.4 抢答器键盘的选择 (6)2.5蜂鸣器模块 (7)2.6外部振荡电路 (7)3 程序设计 (7)3.1程序流程图 (7)3.2系统的调试............................................... (9)3.3 焊接的问题及解决 (10)4总结 (10)附录C程序 (11)Word 资料一设计要求与功能1.1设计基本要求(1)抢答器同时供4名选手或4个代表队比赛使用,分别用4个按钮K1~K4表示。
(2)设置裁判开关k5和清零开关k6,该开关由主持人控制,当主持人按下k6,系统复位,预备抢答,当主持人按下总控制控制开关k5,开始抢答;(3)抢答器具有定时抢答功能,抢答时间为倒计时15秒。
当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的提示声响,声响持续的时间0.5秒左右,当计时小于5秒后,每减少一秒,便报警一次以提示选手。
(4)抢答器具有锁存功能,参赛选手在设定的时间内进行抢答,抢答有效,蜂鸣器发声,计时停止,数码管上显示选手的编号和时间,选手相应的信号灯被点亮,其他选手再抢答时无效。
(5)如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答。
等待下一轮抢答。
二硬件设计2.1控制系统及所需元件控制系统主要由单片机应用电路、存储器接口电路、显示接口电路组成。
其中单片机STC89C52是系统工作的核心,它主要负责控制各个部分协调工作。
所需元件:该系统的核心器件是STC89C52。
各口功能:P0.0-P0.3 是数码管的位选口;P2.0-P2.7是数码管的段选口,为其传送段选信号;P1.0-P1.3是4组抢答信号的输入口;P1.4、P1.5由裁判控制,分别是抢答开始\复位功能键;P1.6为蜂鸣器的控制口;P3.4-P3.7为选手信号灯输出口;在其外围接上电复位电路、数码管电路、LED发光二极管、按键电路及扬声器电路。
四路数字抢答器课程设计
四路数字抢答器课程设计四路数字抢答器是一种在教学活动中广泛使用的设备,它不仅可以增加课堂的趣味性,还能提高学生的参与度和思考能力。
本文将详细介绍四路数字抢答器的设计原理、功能特点以及在教学中的应用。
四路数字抢答器是由四个独立的按钮组成,每个按钮上的数字代表一个选项或答案。
在教学中,老师可以设定问题或选择题,并通过按下相应的按钮来抢答。
系统会根据按钮的先后顺序确定回答问题的学生,并显示正确答案或给出相应的提示,以便进行评价和讲解。
四路数字抢答器的设计原理是基于无线通信技术。
设备通过无线信号与接收器进行信息传输,实现快速、准确的答题抢答功能。
同时,它还具备多个功能键,如开始、结束、重置等,在教学中提供了更多的操作便利。
四路数字抢答器具有多种功能特点,首先是全自动抢答,无需手动记录答题顺序,减少出错率。
其次,它支持多人同时抢答,可以满足大班级或团队竞赛的需求。
此外,抢答器还可以通过显示屏实时显示抢答结果,让学生们能够清晰地了解自己的答题情况。
在教学中,四路数字抢答器具有广泛的应用价值。
首先,它可以用于课堂互动环节,激发学生的学习兴趣和积极性。
教师可以设计各类问题,如知识点回顾、思考题、快速测验等,引导学生积极思考并主动参与。
其次,抢答器可以用于小组竞赛,增加学生之间的协作和竞争,培养他们的团队合作精神。
最后,它还可以用于考试复习,通过模拟考试环节,测试学生对知识点掌握的程度,发现并弥补薄弱环节。
总之,四路数字抢答器作为一种先进的教学辅助工具,不仅可以提高教学效果,还能增加课堂的趣味性。
教师在应用抢答器时,需要根据不同的教学目的和教学内容,灵活运用,借助抢答器的功能特点,提高教学质量,激发学生的学习兴趣和积极性。
同时,抢答器也需要与其他教学手段相结合,形成多样化的教学模式,使教育教学更加丰富多彩。
四路智力抢答器飘
2009 - 2010学年第2学期《单片机应用技术》课程设计报告题目:基于单片机的四路智力竞赛抢答器专业:班级:~飘~~~姓名:指导教师:宋老师成绩:电气工程系2010年5月27日课程设计任务书学生班级:学生姓名:学号:设计名称:基于单片机的四路智力竞赛抢答器起止日期:指导教师:宋老师引言PLC在我国的应用已有二十几年的历史,随着目前生产自动化水平的提高,以及各种监控系统的需要,PLC其外部电路简单、模块化结构、可靠性高,尤其可以通过方便的编制和修改软件来实现顺序控制的功能等特点,在工业的应用中越来越广泛。
它将传统的继电器控制技术与计算机和通信技术融为一体。
在实际现场,设备操作方便,管理维护简单,能根据各种突发事情,做出实时的正确反应,在各类竞赛中,都离不开抢答器,虽然市场上有许许多多种抢答器,但功能却各不相同,而所编程序也各不相同,据此,现以F940GOT触摸屏和三菱FX2N系列结合,进行程序设计并仿真验证,设计了一款用触摸屏GOT作为PLC 输入和输出设备的抢答器。
该抢答器集抢答、声音警示、灯光指示和计时于一身,而且其编程简单,容易理解掌握,工作稳定可靠,扩展性能强。
目录一.方案论证与比较 (4)二.总体设计思路 (8)三.小结 (9)四. 参考文献.......... (9)五.自我评价 (10)六.附录......... . (11)一、方案论证与比较:与普通抢答器相比,本作品有以下几方面优势:1、具有触摸屏控制的功能。
2。
具有得分统计的功能。
3、具有定时功能.4.具有数据锁存和显示的功能。
二、总体设思路(一)程序设计1.智力竞赛抢答器控制用PLC和触摸屏的I/0、内部继电器与外部元件的对应关系见下页表:I/O、内部继电器与外部元件对应关系2.七段码译码表抢答器显示电路的作用是发出抢答位置信号,显示抢答所在位置。
译码显示就是以各抢答位置信号为输入信号,按表所示的七段码显示译码表译码输出,驱动七段数码管指示抢答所在位置。
四路抢答器课程设计报告
一、设计要求用组合逻辑器件CD4511构成四路抢答器。
CD4511实现优先抢答的锁存、译码输出驱动LED ,数码管显示先抢答者的号码,同时四路抢答器发出响声,主持人通过“复位”按钮清除LED数码管的显示和停止响声。
CD4511是具有锁存功能的BCD码4—7线译码区动器。
CD4511能将输入的二一十进制码(8421BCD码)译成七段码(a~g),驱动共阴极LED数码管。
它是16脚双列直插式CMOS的集成器件,引脚排列如图1所示。
其各引脚功能如下:●U∞、Uss分别是正、负电源端,电源电压范围是3~18V。
●A、B、C、D是8421BCD码输入端。
A 是低位,D是高位。
i圈1cD4511的管脚排列圈:●a~g是七段译码输出,高电平有效。
●LT是灯测试端。
当LT=0时,无论其他输入端状态如何,此时a~g全为1,LED所有段全亮。
可利用此来检查数码管的好坏。
●BI是消隐控制端。
当Bl=O,且LT=1时,a~g全为0,数码管不亮。
●LE是锁存控制端。
当LE=0时选通,LE=1 时锁存。
时钟脉冲产生电路二、设计目的抢答器对于我们来说都不陌生,它应用于很多竞赛场合,是参赛者用来抢答的工具,真正实现先抢先答,让最先抢到的选手来回答问题。
依靠抢答器来断定抢答的先后,更好地实现公平公正的原则。
本系统可以供四名选手进行抢答,主持人使能抢答器工作后,当第一个选手按下按键时,相应的指示灯亮和蜂鸣器响,同时锁住抢答器,即其他选手按下按键不起作用,从而实现先抢先答的功能,直到主持人重新复位后方可抢答。
使用中小型集成电路和门电路设计四人抢答器。
功能:•可同时供4名选手参加比赛,各用一个抢答按钮,按钮编号和选手的编号相对应;•用发光二极管显示第一抢答者对应的指示灯亮;并使其余抢答开关不起作用;•主持人用一个控制开关,用来控制抢答器的清零和抢答开始;•使用555定时器产生一个1KHz的周期信号作为时钟信号。
三,电路设计方案a,无人抢答时所有的输出为零b按下抢答按钮c触发器翻转d显示电路:LED发光e报警电路:蜂鸣器发声f脉冲封锁以实现优先判决g主持人控制开关控制电路四、电路原理图及单元电路设计及参数计算(A)选手按键设计如图1(B)LED显示如图2CD4511是一个用于驱动共阴极 LED (数码管)显示器的 BCD 码—七段码译码器,特点如下:具有BCD转换、消隐和锁存控制、七段译码及驱1. CD4511的引脚CD4511具有锁存、译码、消隐功能,通常以反相器作输出级,通常用以驱动LED。
数字电路课程设计—四路抢答器
数字电路课程设计—四路抢答器数字逻辑课程设计报告——数字抢答器学院名称:通信与信息工程工程学院学生姓名:专业名称:信息工程班级:信息工程实习时间:2012年6月18 日——2012年6月29 日课程设计报告一.课程设计题目:四路数字抢答器二.任务和要求:设计一个数字式抢答器,具体要求如下:1.要求至少控制四人抢答,允许抢答时间为10秒,输入抢答信号实在“抢答开始”命令后的规定时间内,显示抢先抢答者的序号,绿灯亮。
2.在“抢答开始”命令前抢答者,显示违规抢答者的序号;红灯亮。
3.选做:在“抢答开始”命令发出后,超过规定的时间无人抢答,显示无用字符(可自行确定)。
4.选做:不仅能显示抢答者的序号并且能显示抢答次序。
三.总体方案的选择方案一:其工作原理为:接通电源后,主持人将开关拨接地,抢答器处于禁止状态,组号显示器显示“0”,定时器显示时间(0秒);若有队员在此时抢答,则表示犯规,违规报警电路的红灯亮,并显示其组号;由于锁存电路的原因,只记录下第一组的组号。
在主持人读完题目后,将开关接上电源,宣布"开始"抢答,定时器开始计时,选手在10秒内抢答时,抢答器完成:优先判断、编号锁存、编号显示、绿灯提示。
当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示经过的时间。
如果再次抢答必须由主持人再次操作“清零”和“开始”状态开关。
方案二:脉冲电路计 时 电 路译 码 电 路译 码 显 示控制 电路主持人开 关违规报 警电路译码显示译码电路锁存电路优先编 码电路抢答按钮方案二与方案一的原理大致相同,区别在于方案二是“先锁后编”,后者是“先编后锁”:方案一的实现要用148优先编码器 ,实际中其7IN 管脚的控制却比较复杂,还要设法控制75的使能端;方案二则直接将抢答信号作为75锁存器的输入信号,再使用或非门来实现编码,且其只受锁存电路的控制,所以只需控制好75 的使能端即可。
故采用方案二。
四.单元电路的设计 1.脉冲电路:由555电路提供CP 脉冲信号脉冲电路计 时 电 路译 码 电 路译 码 显 示控制 电路主持人开 关违规报 警电路译码显示译码电路选手号转换电路锁存电路抢答按钮2.抢答锁存电路:在这一部分,最主要的是锁存电路,锁存电路主要由7475来实现,当74LS75的4,13号管角的信号为“0”时,它将保持原来的状态:74LS75真值表:D C Q1 1 10 1 0X 0 Qn74LS75的管脚图为:747514131211109123456715VccD 0Q 0D 1Q 3100-12281613E 2-3D 2D 3输入输出E D LH H H L XQ Q H L LH7475功能表保持当有一组队员按下开关后(高电平有效),Q1,Q2,Q3,Q4中有一个信号 为1,则它们四个通过与非门后的信号为1,在通过非门后,它变为0, 接入G12,G34,7475实现锁存功能,保持状态不变。
基于MCS51单片机的四路抢答器课件
程序流程图如下
电路原理图及PCB制版图
四路智力抢答器电路原理图
四路智力抢答器PCB模块
程序设计
▪ 抢答器工作过程如下
▪ · 首先主持人选定倒计时时间,单片机扫描U3以 获取此信息。如果没有人为设置,默认为10s。
▪ · 在按下抢答按键之前,3个数码管全部显示“0”。
▪ · 按下抢答按键之后,蜂鸣器响一声,单片机开 始倒计时,数码管U6和U7显示倒计时时间,数 码管U8显示“0”。
▪ void send_data(uchar);
▪ uchar set_time(void); 时时间
▪ bit control_key(void); 是否按键
▪ uchar get_key_num(void); 个参赛者按键
▪ void display_time(void); 时剩余时间
//初始化MAX7219 //向控制寄存器写数
▪ 完成上述功能的电路包括时间设定开关、声光显 示、按键控制以及按键锁存等部分
各模块功能
▪ 单片机部分 ▪ 时间设定模块 ▪ 按键模块 ▪ 数码管显示模块 ▪ 蜂鸣器模块
单片机部分
▪ 通过读取P3.7~P3.3 的状态决定倒计时时 间;通过读取P1.3~ P1.0的状态读取按键 情况;通过P2.4~ P2.2控制显示模块以 显示按键者的号码和 倒计时所剩时间;通 过P0.1控制蜂鸣器
key_flg=1;
//设置有人按键答题标志
TR0=0;
//停止T0运行
}
else
//否则循环检测
{
display_time();
//并显示剩余时间
continue;
}
}
if(key_flg==1)
单片机的四路电子抢答器设计
单片机的四路电子抢答器设计设计四路电子抢答器可以用单片机来实现。
抢答器通常包括主控板、显示屏、按键模块、信号输入模块和声音模块,下面我将详细介绍设计过程。
一、系统硬件设计部分:1.主控板:使用单片机作为主控处理器,常见的有51系列、AVR系列和STM32系列等。
根据所选单片机的引脚分配情况,设计电路板布线。
2.显示屏:使用液晶显示屏来显示题目和选手答案情况。
选择适合的液晶显示屏,并连接到主控板上。
3.按键模块:设置每个选手的抢答按键,可以使用带有独立按键的矩阵键盘模块,也可以使用独立的按键和扩展IO口。
4.信号输入模块:接收抢答信号,可以使用红外接收器模块,当选手按下抢答键时发射红外信号,由红外接收器模块接收。
也可以选择其他合适的接收方式。
5.声音模块:用于提醒和提示答题情况,可以使用蜂鸣器模块,通过主控板控制发声。
二、系统软件设计部分:1.初始化:在主控板上编写程序,进行硬件初始化,包括液晶屏初始化、按键模块初始化、红外接收模块初始化等操作。
2.题目显示:通过液晶显示屏展示当前抢答题目。
3.抢答检测:主控板通过循环扫描检测按键状态,当检测到一些按键按下时,记录该选手抢答,并停止其他选手的抢答。
4.抢答结果显示:通过液晶显示屏显示抢答结果,标识各个选手的抢答顺序。
5.声音提示:根据抢答结果,通过蜂鸣器模块进行声音提示,例如正确答案和错误答案的不同提示音。
6.重复抢答:在抢答过程中,如果有选手重复抢答,可以通过程序进行判断并作相应的提示。
7.复位操作:可以设置一个复位按钮,用于清除抢答结果和重新开始抢答。
三、系统工作流程:1.开机初始化:主控板上电初始化,配置各个模块,显示“待机”状态。
2.显示题目:主控板从题库中读取题目内容,并通过液晶显示屏展示给选手。
3.抢答:选手按下抢答按钮,主控板检测到按键状态变化并记录抢答情况。
4.显示抢答结果:主控板通过液晶显示屏显示抢答结果,标识各个选手的抢答顺序。
四路抢答器PLC程序
四路抢答器PLC程序
设智力测验时分四个组,每一组前面放一个按钮,当某一组先按下按钮时,其对应的指示灯亮,电铃响,此时其它按钮均失效。
这样,先按下按钮的那一组,就抢到了“答题权”。
这就是“四路智力抢答器”的“抢答”功能。
设计“四路智力抢答器”的关键是:四路信号优先择一,拒绝其余。
如果用逻辑门来实现的话,可以用五个四输入与非门和一级输出驱动电路来实现。
但在这里仅介绍用PLC“程序”来实现“四路智力抢答器”逻辑功能的方法:
1、按照I/O分配接线图接线。
I/O分配接线图如图3所示,图中P0—P3为四个按钮,X0—X3为输入继电器接口,Y0—Y3为输出继电器接口,COM为输入继电器的公共端,在内部已接电源负极,COM1为输出继电器分区的公共端,应接24V直流电源的正极。
千万注意不能将COM和COM1连接在一起,否则,将造成电源短路,烧坏保险丝。
因本实验台本身没有提供电铃,所以电铃在图中未画出,实际应用时可用相应的输出接继电器再控制电铃。
2、接线完毕,检查无误方可开机运行。
运行调试时,应验证“程序”是否具有“抢答”功能,即在按下一键有效的情况下,看看其它键是否失效,如果是这样,说明“程序”是正确的,否则,就要查一查原因,看是什么问题。
3、为了帮助初学者了解“四路智力抢答器”的工作原理,特附上梯形图如图4所示。
四路抢答器设计精品
四路抢答器设计报告一.设计要求(1)可容纳四组参赛的数字式抢答器。
(2)电路具有第一抢答信号的鉴别与保持功能。
(3抢答优先者声光提示。
二.设计的作用与目的作用是能够完成抢答功能。
目的是让学生熟练掌握课本上所学的内容在具体实践中的应用,以及对题目的理解分析能力,了解单片机等器件的原理及应用范围<三.设计的具体实现1.系统概述本系统的设计思路是通过四个按键来当作选手的开关按键,某一个按键按下时,由单片机来控制并输出,再由锁存器锁存,延迟一段时间,在数码管上显示相应的数字。
该系统有抢答模块,控制模块,显示模块三部分组成。
抢答模块由五个开关按键组成,控制模块由AT89C51单片机组成,显示模块由8段数码管锁存器组成。
工作过程如下:某一个按键按下时,由单片机里的程序来控制,锁存器锁存第一个抢答信号并保持一段时间,在数码管上显示选手编号,进而来判断是哪位选手抢答成功。
系统流程图:2.单元电路设计、仿真与分析抢答模块的选择四路抢答器应该有四个抢答按键和一个清零按键组成,这些按键对应单片机的四个P1端口。
控制模块的选择用AT89C51单片机作系统控制器,它体积小,成本低,软件编程灵活,可以实现多种功能。
显示模块的选择用74LS373数据锁存器来锁存抢答信号,8段数码管显示选手的编号。
373为三态输出的八D透明锁存器,共有373的输出端00~07可直接与总线相连.当三态允许控制端0E为低电平时,00~07为正常逻辑状态,可用来驱动负载或总线。
当0E为高电平时,00~07呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。
当锁存允许端LE为高电平时,0随数据D而变。
当LE为低电平时,0被锁存在已建立的数据电平。
当LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。
引出端符号:D0〜D7数据输入端:0E三态允许控制端(低电平有效):LE锁存允许端00~07输出端实验电路图如下程序如下:#in elude <reg51.h>unsigned char tab[]={0x3f,0x60,0x5b,0x4f,0x66,0x6d};sbit k1=P1A0; sbit k2=PMl ; sbit k3=P1A2; sbit k4=P1A3; sbit k5=P1A4;void mai n() { P0=0x3f; if(k1==0) {P0=0x06;}ci;5CTAL1IXTAOALETJ1□.1=J.45-R .TPOD'AmPO.IfADI POMpia^AtHFEL4/JM4 POSfAK PQIJ9MIIH FO.7/AC? PZJ^J «PZJflB PS^AfSF23W11II FZ.^AEpzsma P27fift15pjjnxBpi-aTTH P33WTTP3.<maP3imFJ.6W FITiWS 473S S | "35 13 ' ~~ ~T+ ~ H3I Z1T laF~\z ~nr -n?-Fif(k2==0){P0=0x5b;} if(k3==0) {P0=0x4f;} if(k4==0) {P0=0x66;} if(k5==0) {P0=0x3f;}}仿真图如下:C3 ■HIP-wr3・.'-7T[E I^XTALIXTAIZ阳IVXEO FQ.1/AB1I FD^AIUZ 阳*EO阳拆憶皓 PDJ9ADSRST PM 执MPZafiS PAH 海FSaAltALE F3.WA1EF^i'AQ FSjffl'AUFZ.7A1& p 1 fj■FFV.M p i iPIPITp?i 去 IMiD p 1 Jipq iTBTT p 1 4■耳sn F1SFjsmF1J5IF1J旧了河T实物图如下:f ..AnF - Q□Kri P ,3■ 1S'ITTJTTPCB版图如下:3.电路的安装与调试在安装与调试过程中由于经验不足,在焊接的时候,焊点比较大,不美观,或者把两个点不小心焊在一起,造成短路:还有就是虚焊,并没有焊接起来,使得电路不能调试出来,达不到实验结果;再有就是电烙铁温度高,一些元器件的耐热性能不好,因而被烧坏;在实验过程中,要非常小心的焊接,如果虚焊的话,则用发光二极管来测试,找出虚焊的地方,然后重新焊接起来。
四路抢答器课程设计
四路抢答器课程设计一、引言四路抢答器是一种常用于教育培训领域的教学工具,通过快速抢答的方式提高学生的参与度和专注力。
本次课程设计旨在介绍四路抢答器的原理、使用方法以及在教学中的应用。
二、四路抢答器的原理四路抢答器由主机和多个手持抢答器组成,主机负责控制整个系统,手持抢答器用于学生进行抢答。
具体原理如下:1.主机通过无线信号与手持抢答器进行通信,实现问题发送和结果显示。
2.主机将问题发送给手持抢答器,并启动计时器。
3.学生按下手持抢答器上的按钮进行抢答。
4.主机根据按钮按下的先后顺序判断正确回答者,并在显示屏上显示结果。
三、四路抢答器的使用方法使用四路抢答器进行课堂教学需要以下步骤:1.准备工作:确保主机和手持抢答器电量充足,并保证无线信号通畅。
2.设置问题:在主机上输入问题并设置倒计时时间。
3.发送问题:按下发送按钮,主机将问题发送给手持抢答器。
4.学生抢答:学生按下手持抢答器上的按钮进行抢答。
5.结果显示:主机根据按钮按下的先后顺序判断正确回答者,并在显示屏上显示结果。
6.统计分析:通过主机记录的数据进行统计分析,了解学生的回答情况。
四、四路抢答器在教学中的应用四路抢答器可以广泛应用于各个学科的教学中,以下是几个典型的应用场景:1. 提问环节在课堂上,教师可以使用四路抢答器来进行提问。
通过快速抢答的方式,激发学生积极性和参与度。
教师可以根据学生回答问题的情况及时调整教学内容和方法。
2. 小组竞赛将学生分成若干小组,每个小组配备一个手持抢答器。
教师出题后,小组内成员共同商讨并使用手持抢答器进行抢答。
正确回答者可以为自己小组赚取分数,从而增加竞争和合作氛围。
3. 课堂测验在课堂结束前,教师可以进行一次小型的课堂测验。
将几道题目发送给学生,学生使用手持抢答器进行抢答。
通过测验结果,教师可以了解学生对知识掌握的情况,并及时调整教学内容。
4. 反馈评估四路抢答器还可以用于学生对教师提出问题的反馈评估。
教师提出问题后,学生使用手持抢答器进行回答,并给出自己对问题的评价。
四路数字抢答器课程设计
课程设计专用封面设计题目: 四路数字抢答器课程设计 所修课程名称: 电子技术基础(数字部分) 修课程时间: 完成设计日期: 评阅成绩评阅意见:评阅教师签名: 年 月 日____ ____学院__ ___专业 姓名_ __ 学号________ ………………………………(密)………………………………(封)………………………………(线)………………………………一、设计题目:四人智力抢答器二、设计要求:(1)4名选手编号为:1,2,3,4。
各有一个抢答按钮,按钮的编号与选手的编号对应,也分别为1,2,3,4。
(2)给主持人设置一个控制按钮,用来控制系统清零和抢答的开始。
(3)抢答器具有数据锁存和显示的功能。
抢答开始后,若有选手按动抢答按钮,该选手编号立即锁存,并在抢答显示器上显示该编号,同时扬声器给出音响提示,封锁输入编码电路,禁止其他选手抢答,同时计数器显示此时的时间。
抢答选手的编号一直保持到主持人将系统清零为止。
(4)抢答器具有定时(30秒)抢答的功能。
当主持人按下开始按钮后,定时器开始倒计时,定时显示器显示倒计时间,若无人抢答,倒计时结束时,扬声器响。
参赛选手在设定时间(30秒)内抢答有效,抢答成功,扬声器响,同时定时器停止倒计时,抢答显示器上显示选手的编号,定时显示器上显示剩余抢答时间,并保持到主持人将系统清零为止。
(5)如果抢答定时已到,却没有选手抢答时,本次抢答无效。
系统扬声器报警,并封锁输入编码电路,禁止选手超时后抢答,时间显示器显示0。
(6)用555定时器产生频率为1Hz的脉冲信号,作为定时计数器的CP信号。
三、题目分析:本设计是一个数字电路设计课题,针对我们所有学的数字电路知识,为满足四组参赛队参赛的声光显示智力抢答器,我们采用74HC74双D触发器实现抢答电路,采用三十进制计数器实现计时电路、并由555时基电路组成。
此课题的设计工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,显示器清零,定时器显示设定时间;主持人触发“开始”按扭后,计时器开始倒计时,抢答器处于工作状态。
四路抢答器的抗干扰设计
综述 : 从文 中论述 可看 出, 上述 的设计思想很好地解决 了抢答 单片机在 1 号抢 答线( P 2 . 0 引脚) 上产 生一个3 u s 的负脉冲干扰 。 这个 干扰信号在 主持人按下裁判键并松手后产生。 ( 图1 ) 中显示 的1 就是 器的抗干扰 问题 。 当然 , 文中的抢答器达不化商业化的 目的, 有些功 P 2 . 0 引脚上的干扰信号造成 的触发器的误翻转 。 能没有 , 比如显示抢答剩余时 间。 这不是本文重点。 需要时读者可 自 显然干扰信号造成了触发器的误翻转 。 利用单片机编程 , 可有 行补 充。 效避开干扰信号 , 对应 的电路如 ( 图2 ) 。 参 考 文 献 该 电路 中仅有 以下几 个元件 : 单片机 , 排阻, 按键, 电阻 , 数码 [ 1 ] 蔡奕超. 西 门子 S 7 -2 0 0控制的 4路抢答器设 计. 《 华章 第 2 3 管, 晶体管 , 发光 二极管 , 蜂鸣器 。 避开干扰及正确显示按键编号通
过编程 实现。 设计思想 : 取4 个 比特( 此处取2 0 H. 0 , 2 0 H. 1 , 2 0 H. 2 ,
卷。 2 0 1 1年 .
2 0 H. 3 ) 用来保存 一次按键轮询 中P 2 . 0 到P 2 . 3 上 负脉冲出现与否 。
E 2 ] 蔡永 慧, 修淑英. 基于西 门子 S 7 —2 0 0的四路抢 答器 的控制. 《 硅
信号 , P 2 . 1 引脚用来检 测主持人是否按下了裁判键 。 第二部分: 时钟 锁存复位三合一 的电路 第三 1 的 则开始 下一 : 译码及显示 电路 。 各部分的功能 次的轮询 。 通过上面 的论述可看 出上面 的算法在检测到干扰时 , 能
设计 开发
‘ I 与 应 用 穗
基于单片机的四路抢答器设计
简易四路抢答器设计目录摘要 (1)一、设计任务与要求 (2)二、方案设计与论证 (2)三、硬件电路设计 (2)1、抢答器的设计总电路 (2)四、软件设计 (3)1、系统主程序流程图 (3)五、器件选型方案 (4)六、调试 (5)1、上电 (5)2、开始 (5)3、仿真 (5)七、体会与心得 (6)八、参考文献 (7)附录主程序清单 (8)单片机四路抢答器设计摘要:本设计是以四路抢答为基本理念。
考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器中断和外部中断,将软、硬件有机地结合起来,使得系统能够正确地进行工作,同时使数码管能够正确显示组别。
用开关做键盘输入,扬声器发生提示。
同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;可以显示是哪位选手有效抢答,正确按键后有音乐提示;当有一组抢答成功后其他组抢答无效。
关键字:AT89C51单片机;四路抢答器;定时/计数器中断一、设计任务与要求1、抢答器同时供4名选手或4个代表队比赛,分别用4个按钮S0 ~ S3表示。
2、设置一个复位按钮和抢答控制开关S,该开关由主持人控制。
3、抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统复位为止。
二、方案设计与论证方案:该系统采用单片机AT89C51作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。
由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。
整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。
MCS-51单片机特点如下:1、可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的CPU,程序指令和数据都可以写在ROM里,许多信号通道都在同一芯片,因此可靠性高,易扩充。
单片机四路抢答器的设计
单片机四路抢答器的设计一、设计需求分析在设计四路抢答器之前,我们首先需要明确其功能需求。
1、能够同时支持四路选手进行抢答。
2、当有选手按下抢答按钮时,能够迅速锁定并显示抢答者的编号。
3、具备倒计时功能,在规定时间内无人抢答则显示超时。
4、要有声音提示,如抢答成功、违规抢答、倒计时结束等。
二、硬件设计1、单片机选择我们选用常见的 51 系列单片机,如 STC89C52 单片机。
它具有性能稳定、价格低廉、编程方便等优点。
2、输入模块使用四个独立按键作为四路选手的抢答按钮,分别连接到单片机的四个 I/O 口。
3、显示模块采用数码管显示抢答者的编号和倒计时时间。
可以选择共阴极或共阳极数码管,通过单片机的 I/O 口进行驱动。
4、声音模块使用蜂鸣器来实现声音提示功能。
通过单片机控制蜂鸣器的通断,产生不同频率的声音。
5、电源模块为整个系统提供稳定的电源,可以使用 5V 直流电源适配器。
三、软件设计1、编程语言选择 C 语言进行编程,C 语言具有语法简洁、可读性强、可移植性好等优点。
2、主程序流程系统初始化后,进入等待抢答状态。
当有选手按下抢答按钮时,判断是否违规抢答(即在倒计时未结束前抢答)。
如果是合法抢答,锁定抢答者编号并显示,同时发出抢答成功的声音提示;如果是违规抢答,则发出违规提示音并显示违规者编号。
在抢答成功后,开始倒计时,倒计时结束时发出超时提示音。
3、中断处理利用单片机的外部中断功能,实现对抢答按钮按下事件的快速响应。
4、计时与显示程序通过定时器实现倒计时功能,并将剩余时间实时显示在数码管上。
四、系统调试1、硬件调试首先检查电路连接是否正确,有无短路、断路等情况。
然后测量各个电源点的电压是否正常,确保硬件工作在稳定的状态。
2、软件调试将编写好的程序下载到单片机中,通过单步调试、断点调试等方式,检查程序的执行流程和逻辑是否正确。
同时观察数码管显示和蜂鸣器发声是否符合预期。
五、设计优化与拓展1、增加更多的抢答通道,以满足更多选手参与的需求。
基于51单片机的4人抢答器课程设计
基于51单片机的4人抢答器课程设计基于51单片机的4人抢答器设计设计要求:以单片机为核心,设计一个4位竞赛抢答器:同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。
设置一个系统清除和抢答控制开关S,开关由主持人控制。
抢答器具有锁存与显示功能。
即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。
抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。
当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。
参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。
如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。
工作原理:通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加1(超过30时置0)。
同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。
#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar 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}; //数码管编码sbit dula=P1^6; //定义段选端口sbit wela=P1^7; //定义位选端口sbit sp=P3^0; //定义蜂鸣器端口sbit clear=P1^0; //定义清零键sbit start=P1^1; //开始键sbit key1=P1^2;sbit key2=P1^3;sbit key3=P1^4;sbit key4=P1^5; //key1到key4为选手按键void delay(uint z) //延时函数{uint i,j;for(i=z;i>0;i--)for(j=110;j>0;j--);}void beep() //定义蜂鸣器函数{sp=0;delay(500);sp=1;}void display(uint a) //选手编号显示函数{P2=0xff; //防止锁存干扰wela=0;dula=1;P2=table[a];dula=0;P2=0xff;wela=1;P2=0xfd;wela=0;delay(5);}void clr() //清零函数(主持人按下清零键后数码管显示0){dula=1;P2=table[0];dula=0;P2=0xff;wela=1;P2=0xfc;wela=0;}void dis30s() //十秒倒计时显示函数{uchar shi,ge;shi=num1/30;ge=num1%30;wela=1;P2=0xff;wela=0;dula=1;P2=table[shi];dula=0;P2=0xff;wela=1;P2=0xfe;wela=0;delay(5);wela=1;P2=0xff;wela=0;P2=table[ge];dula=0;P2=0xff;wela=1;P2=0xfd;wela=0;delay(5);}void player() //选手按键检测函数{if(key1==0&&flag4==0){delay(10);if(key1==0&&flag4==0){display(1);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key1);}}if(key2==0&&flag4==0) {delay(10);if(key2==0&&flag4==0) {display(2);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key2);}}if(key3==0&&flag4==0) {delay(10);if(key3==0&&flag4==0) {display(3);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key3);}}if(key4==0&&flag4==0){delay(10);if(key4==0&&flag4==0){display(4);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key4);}}}void keyscan() //检测按键{if(clear==0&&flag2!=1) //判断清零键,判断语句的作用是按下开始键清零键失效{delay(10);if(clear==0&&flag2!=1){while(!clear); //等待按键释放flag1=0;flag2=0;flag3=0;flag4=0;num=0;num1=10;clr(); //清零flag1=1; //按下清零键标志位}}if(flag1==1) //如果按下清零键{if(start==0&&flag3==0) //判断开始键,判断语句的作用是按下开始键后开始键失效{delay(10);if(start==0&&flag3==0){flag2=1;flag3=1;while(!start);}}}if(flag2==1) //按下开始键{TR0=1; //启动定时器0dis30s();player();}}void main(){TMOD=0x01; //设置定时器0工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1; //开总中断ET0=1; //开定时器0中断while(1) //一直检测按键{keyscan();}}void T0_ser() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;num++;if(num==20){num=0;num1--;}if(num1==0){TR0=0;flag1=0;flag2=0;num=0;num1=30;clr();beep();}}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录1设计要求与功能 (4)1.1设计基本要求 (4)2 硬件设计 (4)2.1控制系统及所需元件 (4)2.2抢答器显示模块 (5)2.3 电源方案的选择 (6)2.4 抢答器键盘的选择 (6)2.5蜂鸣器模块 (7)2.6外部振荡电路 (7)3 程序设计 (7)3.1程序流程图 (7)3.2系统的调试............................................... (9)3.3 焊接的问题及解决 (10)4总结 (10)附录C程序 (11)一设计要求与功能1.1设计基本要求(1)抢答器同时供4名选手或4个代表队比赛使用,分别用4个按钮K1~K4表示。
(2)设置裁判开关k5和清零开关k6,该开关由主持人控制,当主持人按下k6,系统复位,预备抢答,当主持人按下总控制控制开关k5,开始抢答;(3)抢答器具有定时抢答功能,抢答时间为倒计时15秒。
当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的提示声响,声响持续的时间0.5秒左右,当计时小于5秒后,每减少一秒,便报警一次以提示选手。
(4)抢答器具有锁存功能,参赛选手在设定的时间内进行抢答,抢答有效,蜂鸣器发声,计时停止,数码管上显示选手的编号和时间,选手相应的信号灯被点亮,其他选手再抢答时无效。
(5)如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答。
等待下一轮抢答。
二硬件设计2.1控制系统及所需元件控制系统主要由单片机应用电路、存储器接口电路、显示接口电路组成。
其中单片机STC89C52是系统工作的核心,它主要负责控制各个部分协调工作。
所需元件:该系统的核心器件是 STC89C52。
各口功能:P0.0-P0.3 是数码管的位选口;P2.0-P2.7是数码管的段选口,为其传送段选信号;P1.0-P1.3是4组抢答信号的输入口;P1.4、P1.5由裁判控制,分别是抢答开始\复位功能键;P1.6为蜂鸣器的控制口;P3.4-P3.7为选手信号灯输出口;在其外围接上电复位电路、数码管电路、LED发光二极管、按键电路及扬声器电路。
电子抢答器用单片机来设计制作完成的,由于其功能的实现主要是通过软件编程来完成的,所以采用单片机STC89C52,它是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和512 bytes 的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C52单片机可为您提供许多较复杂系统控制应用场合。
下图为其I/O口引脚图:STC89C52管脚图2.2. 抢答器显示模块显示模块分为数码管模块和LED信号灯模块分别采用四位一体共阴极数码管和四个发光二极管,体积小,功耗低,故障率低,程序编译容易,资源占用较少。
(见图1,图2)图1图22.3 电源方案的选择系统需要5V电源来驱动单片机STC89C52。
利用电脑的USB接口可以提供5V电压来驱动单片机。
2.4抢答器键盘的选择键盘是单片机不可缺少的输入设备,是实现人机对话的纽带。
键盘按结构形式可以分为非编码键盘和编码键盘,前者用软件方法产生键码,而后者则用硬件方法来产生键码。
在单片机中使用的都是非编码键盘,因为非编码键盘结构简单,成本低廉,非编码键盘的类型很多,常用的有独立式键盘,行列式键盘等。
本设计采用独立式键盘。
键盘接口中使用多少根I/O线,键盘中就有几个按键,键盘接口使用了6根I/O口线,该键盘就有6个按键,这种类型的键盘,其按键比较少,且键盘中各按键的工作互不干扰。
因此可以根据实际需要对键盘中的按键灵活的编码。
如图所示。
最简单的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接读取I/O口的状态来获取按键的直接状态编码值,根据这个值直接进行按键识别,这样形式的键盘结构简单,按键识别容易。
独立式键盘的缺点是需要占用比较多的I/O口线,当单片机应用系统键盘中需要的按键比较少或I/O口线比较富余时,可以采用这样类型的键盘。
其模块电路图如图4所示。
采用六个BUTTON 按钮作为抢答的选择按钮,与STC89C52的P1.0-P1.5相连。
图4 键盘模块2.5蜂鸣器模块蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件,其图形如图所示.2.6 外部振荡电路外部振荡电路单片机必须在AT89C52的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,外部振荡电路见图所示。
三程序设计3.1程序流程图:抢答器主程序流程图初始化部分K5= =0启动中断,数码管开始倒计时若有选手抢答中断停止,数码管显示选手的标号并点亮信号灯结束开始NYYN主程序这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。
C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。
本次设计的主程序中包括时钟设计程序,定时器中断子程序,LED显示程序以及按键控制子程序,具体程序见附件。
3.2系统的调试系统调试包括硬件调试和软件调试,而且两者是密不可分的。
我们设计好的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。
硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、开路、短路等)。
这种调试可单独模拟进行,也可通过开发装置由软件配合进行。
硬件联机调试则必须在系统软件的配合下进行。
软件调试一般包括分块调试和联机调试两个阶段。
程序的分块调试一般在单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序功能块一起在开发装置上运行;也可配合对应硬件电路单独运行某程序功能块,然后检查是否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并加以改正,直到运行结果正确为止。
这时该程序功能块已调试完毕,可去掉附加程序段。
其它程序功能块可按此法进行调试。
程序联机调试就是将已调试好的各程序功能块按总体结构联成一个完整程序,在所研制的硬件电路上运行。
从而试验程序整体运行的完整性、正确性和与硬件电路的配合情况。
在联调中可能会有某些支路上的程序、功能块因受条件制约而得不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。
在联调中如发现硬件问题也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。
系统调试完成后,还要进行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要求,是否达到预期的效果。
3.3 焊接的问题及解决一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的正常运行。
造成焊接质量不高的常见原因是:①焊锡用量过多,形成焊点的锡堆积;焊锡过少,不足以包裹焊点。
②冷焊。
焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊锡表面不光亮(不光滑),有细小裂纹(如同豆腐渣一样!)。
③夹松香焊接,焊锡与元器件或印刷板之间夹杂着一层松香,造成电连接不良。
若夹杂加热不足的松香,则焊点下有一层黄褐色松香膜;若加热温度太高,则焊点下有一层碳化松香的黑色膜。
对于有加热不足的松香膜的情况,可以用烙铁进行补焊。
对于已形成黑膜的,则要"吃"净焊锡,清洁被焊元器件或印刷板表面,重新进行焊接才行。
④焊锡连桥。
指焊锡量过多,造成元器件的焊点之间短路。
这在对超小元器件及细小印刷电路板进行焊接时要尤为注意。
⑤焊剂过量,焊点明围松香残渣很多。
当少量松香残留时,可以用电烙铁再轻轻加热一下,让松香挥发掉,也可以用蘸有无水酒精的棉球,擦去多余的松香或焊剂。
⑥焊点表面的焊锡形成尖锐的突尖。
这多是由于加热温度不足或焊剂过少,以及烙铁离开焊点时角度不当浩成的内。
总结经过近半个月的努力,在我们合作下,我们较好的完成了这次设计项目,通过此次电子制作比赛,我们重新认识到了自学的重要性,以及学以致用的道理。
我们在图书馆和网上查阅了大量的资料,同时也认识到了图书馆的重要作用。
通过此次的抢答器的设计,让我们更加重视到专业知识的重要性及动手能力的必要性,在整个制作过程中,我们出现很多问题,但我们并没有因此而放弃,在不断调试和失败中,我们不仅学到了专业知识,更是磨炼了我们的心智,让我们受益匪浅。
任何事情只要去做,多多去尝试,努力的要以自己去做为前提的心态,那么任何事情即使做的不好,也会受益很多,不是有句话叫做:心态决定的成败的话吗,实在是有理。
无论做什么事情都不可能一帆风顺,碰到阻碍不要舍弃,不要踟蹰不前,不经历风雨,怎么见彩虹!在今后的学习过程中,应该多到图书馆看一些专业方面的书籍,比如protel 画图,proteus仿真软件,以丰富自己的知识,掌握更多的硬件与软件设计技巧,使我们在今后的制作中提高效率。
这次设计任务也使我们加深了对单片机及接口技术的理解和应用,由于知识水平的局限,设计中可能会存在着一些不足,我们真诚的接受老师和同学的批评和指正.。
附录(C程序)#include<reg52.h>#define uchar unsigned char#define uint unsigned intUchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴数码管0~9编码uint i,j,time,num;uchar ge,shi;bit flag,flag1;sbit k1=P1^0;sbit k2=P1^1;sbit k3=P1^2;sbit k4=P1^3;sbit k5=P1^4;sbit k6=P1^5;//k1~k4为选手按键,k5为主持人开关,k6为复位键sbit beep=P1^6;//定义蜂鸣器的端口sbit wei1=P0^0;sbit wei2=P0^1;sbit wei3=P0^2;sbit wei4=P0^3;//定义数码管的位选端口sbit led1=P3^4;sbit led2=P3^5;sbit led3=P3^6;sbit led4=P3^7;//定义LED灯的端口void delay(uint a)//延时函数{uint i,j;for(i=a;i>0;i--)for(j=110;j>0;j--);}void display()//显示函数{shi=time/10;ge=time%10;P2=table[num];//显示选手编号wei1=0;delay(1);wei1=1;P2=table[shi];wei3=0;delay(1); //显示时间wei3=1;P2=table[ge];wei4=0;delay(1);wei4=1;}void keyscan(){if(k1==0)//按键按下{delay(10);//延时去抖动if(k1==0){num=1;led1=0;flag=1;TR0=~TR0;TR1=0;//开定时器0,关定时器1 beep=1;delay(500);beep=0;//蜂鸣器响500毫秒while(!k1);//等待按键释放}}if(k2==0){delay(10);if(k2==0){num=2;led2=0;flag=1;TR0=~TR0;TR1=0; beep=1;delay(500);beep=0;while(!k2);}}if(k3==0){delay(10);if(k3==0){num=3;led3=0;flag=1;TR0=~TR0;TR1=0; beep=1;delay(500);beep=0;while(!k3);}}if(k4==0){delay(10);if(k4==0){num=4;led4=0;flag=1;TR0=~TR0;TR1=0; beep=1;delay(500);beep=0;while(!k4);}}display();//显示选手编号和时间if(time==0){TR0=0;TR1=0;flag=1;//关计时器0和1}if(time==6)TR1=1;}void init(){TMOD=0x11;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;ET0=1;ET1=1;beep=0;//作品上蜂鸣器是赋高电平响,开始置低关闭}void main(){init();//初始化while(1){display();if(k6==0){delay(10);if(k6==0){P3=0xff;//关闭所有LED灯flag1=k6;time=15;wei1=0;num=0;P2=table[num];while(!flag1){if(k5==0){delay(10);if(k5==0){flag1=1;flag=k5;TR0=1;beep=1;delay(500);beep=0; while(!k5);while(!flag)keyscan();//扫描键盘}}}}}}}void time0() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;i++;if(i==20){i=0;time--;}}void time1() interrupt 3{TH1=(65536-50000)/256;TL1=(65536-50000)%256;j++;if(j==10){j=0;beep=~beep;}}抢答器用独立键盘设计一个四路抢答器,要求第一个按键按下的灯亮,以后按下的灯就不亮了,按下复位键从新开始抢答;(共用5个按键,四个抢答用,一个复位用)#include<reg52.h>#define uchar unsigned char#define uint unsigned intuint i,j,time,num;uchar ge,shi;bit flag,flag1;sbit k1=P1^0;sbit k2=P1^1;sbit k3=P1^2;sbit k4=P1^3;sbit k5=P1^4; //k1,k2,k3,k4为选手抢答按键,按下时亮灯。