⑴ 数字逻辑课程设计报告-多人抢答器(完整版) 八位抢答器课程设计
数字逻辑课程设计
——多路抢答器
专业:学号:姓名:
多路智力竞赛抢答器设计
一、设计内容及要求:
设计内容:本课题要求设计一台可供4-8名选手参加比赛的智力竞赛抢答器。 设计要求: 基本功能
(1)抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 ~ S7表示。 (2)设置一个系统清除和抢答控制开关S ,该开关由主持人控制。用来控制系统清零(编号显示数码管灭灯)和抢答的开始。
(3)抢答器具有锁存与显示功能。即抢答开始后,选手按动按钮,锁存相应的编号,并在编号显示器上显示该编号。同时封锁输入编码电路,禁止其他选手抢答。优先抢答选手的编号一直保持到主持人将系统清除为止。 2.扩展功能
(1)抢答器具有定时抢答功能。要求定时器开始倒计时,并用定时显示器显示倒计时时间。
(2)参赛选手在设定时间(20秒)内抢答,抢答有效,同时定时器停止倒计时,编号显示器上显示选手的编号,定时显示器上显示剩余抢答时间,并保持到主持人将系统清零为止。
(3)如果定时抢答时间已到,却没有选手抢答时,本次抢答无效。系统扬声器报警(音响持续0.5秒),并封锁输入编码电路,禁止选手超时后抢答,时间显示器显示0。
二、实验内容及方法
1.组装调试抢答器电路。
2.设计可预置时间的定时电路,并进行组装和调试。当输人1Hz 的时钟脉冲信号时,要求电路能进行减计时,当减计时到零时,能输出低电平有效的定时时间到信号。
3.组装调试报警电路。
4.完成定时抢答器的联调大答册,注意各部分电路之间的时序配合关系。然后检查电路各部分的功能,使其满足设计要求。
抢答器框架设计
定时抢答器的总体框图(如图
1.1)所示,它由主体电路和扩展电路两部
分组成。主体电路完成基本的抢答功能,即开始抢答后,当选手按动抢答按钮时,能显示选手的编号,同时能封锁输入电路,禁止其他选手抢答。扩展电路完成定时抢答的功能。
图1
如图所示为总体方框图。工作原理为:接通电源后,主持人将开关拨到“清零”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置; 开始" 状态,宣布“开始”抢答器工作。定时器倒计时,选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示。当一轮抢滚宏答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作“清除”和“开始”状态开关。
电路设计
1. 抢答电路设计
设计电路如图2所示。电路选用优先编码器 74LS148 和锁存器 74LS297 来完成。该电路主要完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号(显示电路采用七段数字数码显示管);二是禁止其他选手按键,其按键操作无效。
图2
工作过程:开关S 置于" 清除" 端时,RS 触发器的 R、S 端均为0,4个触发器输出置0,使74LS148的优先编码工作标志端(图中5号端)=0,使之处于工作状态。当开关S 置于" 开始" 时,抢答器处于等待工作状态,当有选手将抢答按键按下时(如按下S5),74LS148的输出经RS 锁存后,CTR=1,RBO(图中4端) =1,七段显示电路74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。此外,CTR
=1,使74LS148 优先编码工作标志端(图中5号端)=1,处于禁止状态,封锁其他按键的输入。当按键松开即按下时,74LS148的 此时由于仍为CTR =1,使优先编码工作标志端(图中5号端)=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢举哗答者的优先性。如有再次抢答需由主持人将S 开关重新置“清除”然后再进行下一轮抢答。
2. 定时电路设计
节目主持人根据抢答器的难易程度,设计一次抢答的时间,通过预置时间电路对计数器进行预置,选用十进制同步加减计数器74LS192进行设计,计数器的时钟脉冲由秒脉冲电路提供。具体电路如图3。
原理及设计:该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。具体电路如图3所示。两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号由时钟产生电路提供。原理及设计:该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。具体电路如图3所示。两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号 由时钟产生电路提供。按键弹起后,计数器开始减法计数工作,并将时间显示在共阴极七段数码显示管DPY_7-SEG 上,当有人抢答时,停止计数并显示此时的倒计时时间;如果没有人抢答,且倒计时时间到时, 输出低电平到时序控制电路,控制报警电路报警,同时以后选手抢答无效。结合我们的实际经验及考虑到元器件的成本,我们选择的电阻值为R1=15K,R2=68K,C=10uF,代入到上式中即得 ,即秒脉冲。
图3
仿真电路实验
一、 Multisim仿真电路图
实物制作
1. 原理图
1. 实物图
心得体会
通过这次设计,我的理论知识掌握得更扎实,动手能力明显提高。同时,通过网上搜索等多方面的查询资料,我学到许多在书本上没有的知识,也认识到理论联系实践的重要。在制作当中遇到了许多以前没遇到的困难。我们利用许多的方法去解决所遇到的问题。制作好以后,虽然基本符合设计要求,但我们总觉得欠缺点什么。这次设计,让我感受最深是。在仿真的阶段遇到很多的问题,计时电路不能随抢答而停止,以及在实物连接后,抢答电路不能锁存等问题。我们一定要具备一定的检查、排除电路故障的能力。我深刻认识到了“理论联系实际”的这句话的重要性与真实性。而且通过对此课程的设计,我不但知道了以前不知道的理论知识,而且也巩固了以前知道的知识。最重要的是在实践中理解了书本上的知识,明白了学以致用的真谛。
⑵ 四人智力竞赛抢答器的课程设计
四路抢答器的PLC程序设计 系统工作原理
1.1控制要求
(1)竞赛者专若要回答主持人所提问题属时,须抢先按下桌上的抢答按钮;
(2)绿色指示灯亮后,须等主持人按下复位按钮PB5后,指示灯才熄灭;
(3)如果竞赛者在主持人打开SW1开关10 s内抢先按下按钮,电磁线圈将使彩球摇动,以示竞赛者得到一次幸运的机会;
(4)如果在主持人打开SW1开关10 s内无人抢答,则必须有声音警示,同时红色指示灯亮,以示竞赛者放弃该题;
(5)在竞赛者抢答成功后,应限定一定的时间回答问题,根据题目难易可设定时间(如2 min);
(6)当主持人打开SW2开关后记时开始,如果竞赛者在回答问题时超出设定时限,则红色指示灯亮并伴有声音提示,竞赛者停止回答问题。
----------更多详见: http://www.gkbtob.com/html/jszl/yyfa/4439.html
⑶ 六路抢答器课程设计及其报告(急急急) 谢谢各位朋友帮忙!!
我这有八路的 改一下就可以了 很好的!
兰州理工大学技术工程学院
课程设计任务书
课程名称: 电子技术课程设计
题 目: 智力竞赛抢答器
专业班级:
学生姓名:
学 号:
指导老师:
审 批:
任务书下达日期 2009年 12 月 28日 星期一
设计完成日期 2010年 1 月 8 日 星期五
设计内容与设计要求
一、设计内容:
1.设计一个可容纳8组代表队参赛的智力抢答器,每组设一个抢答按钮,按钮的编号与选手的编号相对应。
2. 抢答器具有第一信号鉴别及数据锁存功能。主持人将设备复位(清零)后,发出抢答指令,当第一组参赛者触动按钮时,该组指示灯亮。此后,其他组别触动按钮无效。
3. 设计一个用数码管显示1~8组中最先抢答组别的电路。
4. 抢答器具有定时30S抢答的功能,当主持人发出抢答指令后开始减计时,并用显示器显示时间。当抢答时间到,蜂鸣器鸣叫发出报警信号,并封锁输入电路,禁止选手超时抢答。
5.设计一个犯规判别电路,并用指示灯显示。
6.设置记分显示电路,每组预置100分,答对1次加10分,答错1次减10分。
7.功能扩展(自选)
二、设计要求:
1.思路清晰,给出整体设计框图和总电路图;
2.单元电路设计,给出具体设计思路和电路;
3.写出设计报告;
主要设计条件
1. 在实验楼南楼的四楼“综合实验室”和“电子实验室”调试。
2. 提供调试用实验箱和电路所需元件及芯片。
说明书格式
1. 课程设计封面;
2. 任务书;
3. 说明书目录;
4. 设计总体思路,基本原理和框图(总电路图);
5. 单元电路设计(各单元电路图);
6. 安装、调试步骤;
7. 故障分析与电路改进;
8. 总结与体会;
9. 附录(元器件清单);
10. 参考文献;
11.课程设计成绩评分表
目录
1 绪论 6
2 设计方案 7
2.1 设计方案和要求 7
2.2 设计思想和原理 8
2.3 单元电路的设计 8
(1)抢答器部分电路设计 8
(2)定时电路设计 9
(3)报警电路设计 11
(4)计分电路设计 11
2.4 总体设计 12
3 EWB仿真 15
4故障分析与电路改进 15
5部分重要原件引脚图及其功能表 18
6心得体会 20
7附录 22
参考文献 22
1 绪论
智力竞赛是一种生动活泼的教育方式,而抢答就是智力竞赛中非常常见的一种答题方式。抢答能引起参赛者和观众的极大兴趣,并且能在极短的时间内,使人们迅速增加一些科学知识和生活常识。但是,在这类比赛中,对于谁先谁后抢答,在何时抢答,如何计算答题时间等等问题,若是仅凭主持人的主观判断,就很容易出现误判。所以,我们就需要一种具备自动锁存,置位,清零等功能智能抢答器来解决这些问题。
在本次课程设计中,将主要设计一个供八人使用的定时抢答器。他要实现以下主要功能:(1)为8位参赛选手各提供一个抢答按钮,分别编号S0、S1、S2、S3、S4、S5、S6、S7;(2)主持人可以控制系统的清零与抢答开始;(3)抢答器要有数据锁存与显示的功能。抢答开始后,若有任何一名选手按动抢答按钮,则要显示其编号至系统被主持人清零,并且扬声器发生提示,同时其他人再按对应按钮无效;(4)抢答器要有自动定时功能,并且一次抢答时间由主持人任意设定。当主持人启动“开始”键后,定时器自动减计时,并在显示器上显示。同时扬声器上发出短暂声响;(5)参赛选手只有在设定时间内抢答方为有效抢答。若抢答有效,则定时器停止工作,并且显示抢答开始时间直到系统被清零;(6)若设定时间内无选手进行抢答(按对应按钮),则系统短暂报警,并且禁止选手超时抢答,定时器上显示00数字抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时功能,构成扩展电路。
利用本次设计出的电路制造成的定时抢答器,即可轻松实现在8人或8个代表队之间进行的抢答比赛中进行控制,使得这一活动更加趣味、公平。
2 设计方案
2.1 设计方案和要求
1.给定的主要器件:74ls148 74ls138 74ls192 555 发光二极管 显示器
2功能要求:设计一个智力竞赛抢答球,可同时共8个选手参加比赛,并具有定时抢答功能。具体功能要求如下:
基本功能:
(1) 设计一个智力竞赛抢答器,可同时供8名选手或8个代表队参加比赛,他们的选号分别是s0,s1,s2,s3,s4,s5,s6,s7。
(2) 给节目主持人设置一个控制开关,用来控制系统的清零(编号显示数码管灭灯)和抢答器的开始。
(3) 抢答器具有数据锁存和显示功能。抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在led数码管上显示选手的编号,同时扬声器给出音响提示。此外,要封锁输入电路,禁止其他选手抢答。优先抢答选手的编号一直保持到主持人将系统清零为止
(4) 抢答器具有定时30S抢答的功能,当主持人发出抢答指令后开始减计时,并用显示器显示时间。当抢答时间到,蜂鸣器鸣叫发出报警信号,并封锁输入电路,禁止选手超时抢答。
(5) 设计一个犯规判别电路,并用指示灯显示。
(6) 设置记分显示电路,每组预置100分,答对1次加10分,答错1次减10分。
(7) 功能扩展(自选)
2.2设计思想和原理
多路智力抢答器的组成框
该设计抢答器的电路主要是由抢答电路,触发电路,触发锁存电路,七段显示译码器几部分构成。
工作原理:通电后,主持人将开关拨到“清零状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间:主持人将开关置“开始”状态,宣布“开始”抢答器工作。定时器倒计时,扬声器给出声响提示。当定时时间到,却没有选手抢答时,系统报警,并封锁输入电路,禁止选手超时抢答。选手在定时时间内抢答时,抢答器完成:优先判断,编号锁存,编号显示,扬声器提示。当一轮抢答之后,定时器停止,禁止二次抢答,定时器显示剩余时间。如果再次抢答必须由主持人再次操作“清除”和“开始:状态开关
2.3单元电路的设计
(1)抢答器电路的设计
该部分主要完成两个功能:一是分辨选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。选用优先编码器74ls148和RS锁存器可以完成上述功能,所组成的电路图如下所示。这个电路的工作原理过程:当主持人控制开关s置于“清零”
端时,RS触发器的R非端均为0,4个触发器输出(Q4--Q1)全部置0,使74ls148的BI的非=0,显示器灯灭:74ls148的选通输入端ST的非=0,使之处于工作状态,此时锁存电路不工作。当主持人把开关S置于“开始”时,优先编码器和锁存电路同时处于工作状态,即抢答器处于等待工作状态,等待输入端的信号,当有选手将键按下时(比如按下s5),74ls148的输出Y2Y1Y0的非=010,YEX的非=0,经RS锁存后,CTR=1,BI的非=1,经74ls148译码后,显示器显示为“5”。此外,CRT=1,使74ls148的ST的非为高电平,封锁其他按键的输入。如果再次抢答需有主持人将S开关重新“清除”,电路复位。
(2)定时电路的设计
节目主持人可根据抢答题的难以程度,来设定某一次抢答的时间,通过
置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。可预置时间的电路选用可由两片十进制同步加减计数器74Ls192、译码器7448、气短数码显示管来进行设计。其中,两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号由时钟产生电路提供。74192的预置数控制端实现预置数,由节目主持人根据抢答题的难易程度,设定一次抢答的时间,通过预置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。按键弹起后,计数器开始减法计数工作,并将时间显示在共阴极七段数码显示管上,当有人抢答时,停止计数并显示此时的倒计时时间;如果没有人抢答,且倒计时时间到时, 输出低电平到时序控制电路,控制报警电路报警,同时以后选手抢答无效。
74LS192是同步十进制可逆计数器,具备双时钟输入,同时具备清零和置位功能。其管脚图如图所示:
(3)报警电路的设计
这部分电路我们是由555构成多谐振荡器,振荡频率fo=1.43/【(R1+2R)C】,其输出信号经三极管推动扬声器。PR为控制信号,当PR为谐振荡器工作;而当PR为低电平时,电路停振。
2.4 总体电路设计和电路图
经过以上分析,我们将各部分电路连接,并加以适当控制,即得到了八位定时抢答器的总体电路图。如图11所示:
其工作原理是:
八位选手编号分别为0、1、2、3、4、5、6、7,对应按钮分别为S0、S1、S2、
S3、S4、S5、S6、S7;
首先主持人根据题目的难易程度设置抢答时间,此设定可以通过调节输入两片74LS192的D、C、B、A四个管脚的高低电平来进行(例如要设定时间为60s,就将十位的192的D、C、B、A分别置位为0、1、1、0,而将各位的192的D、C、B、A都置于0)。当主持人宣读完题目说“开始”并将开关置于“开始”位置后,输出为高电平,此高电平分为三路:一路输出到集成单稳态触发器74LS121的输入端,使其产生单个周期为0.5S的脉冲,驱动报警电路发出声响,即实现了发声提示的功能;另一路输出到74LS192的LD端,使其处于高电平而开始减 计数;还有一路输出到锁存器的C端;
若没有选手安东按钮,则74LS373输出全为高电平,74LS148也输出高电平,E0端输出低电平至7448的灭灯输入RI/RBO端,使得信号经7448到显示器 上时无显示;
当任意一路(设1)抢答器按下按钮时,八D锁存器74LS373工作,与输入端相对应的输出端(1)输出高电平,则锁存器输出的八位电平经8~3八位优先编码器74LS148编码输出的A0~A2成为与输入信号相对应的三位二进制码,而74LS148的管脚15(E0)的输出电平由低变高,输出到七段译码显示器74LS48的二进制码经其译码后输出到七段共阴数码管上,则显示器上显示对应的编号(1)。此时,7448的RI/RBO端输出高电平,开关出也输出高电平,二者经过与非门输出低电平,经过与门还是低电平输出到锁存器373的C端,起到所存功能,其他选手若再按动对应按钮也无对应输出,,即实现了抢答功能;
同时,由于74LS148的E0段输出高电平输出到集成单稳态触发器74LS121的输入端,使其产生单个周期为0.5S的脉冲,驱动报警电路发出声响,即实现了发声提示的功能;
同时,74LS148的GS端输出电平由高变低,与秒脉冲发生器产生的秒脉冲相与后输出为0,使得无脉冲抵达计数器192的Down端。计数器停止工作,保持原来显示不变,即实现了暂停减计数使其记录抢答时间的功能;
当选手回答完问题后,主持人将开关置于“清零”的位置,输出低电平,也是分为三路:一路与74148的E0端(高)与非后变为高电平输出到373的使能端C,使得锁存器不再锁存数据,此时,抢答部分显示器灭灯无显示,实现了清零;
另一路低电平输出到计数器192的LD端,而CR端也是低电平,所以使得对应显示器输出预置的数据;
若在定时部分计数器倒计时到00还无选手按动按钮的话,两片74LS192的借位输出端都输出高电平,二者相与后输出高电平到单稳态触发器74121的B端口,使其产生周期为0.5s的脉冲刺激报警电路发声提示
计分电路图
3 EWB仿真
按照总体电路图在仿真软件EWB上一一选择芯片并进行连接,然后启动开关观察。
当仿真结果和预期一样,则证明仿真成功。设计的电路是正确的。
4故障分析与电路改进
1. 显示器上不显示数字,我们从后级往前级进行测试,首先用1.5~2V的电压作用各个笔段,看对应各笔段是否亮,判断是否完好。若完好则继续检测74ls148芯片是否完好。在74ls148的A、B、C、D四个输入端随意输入一组二进制数码(用高低电平表示1和0,此处注意要用到8V以上的电源电压),看是否能显示数字。无显示的故障一般问题出在这两个环节。
2. 若显示器上显示的是不符合要求的数字,在设计原理正确的前提下,首先通过测试判断74ls148的输出a~g与LED管的a~g笔段是否连接有错。其方法是74ls148的输出a~g分别按规律输入高低电平,观察LED管是否显示相应的数字。如果这个环节正常,则问题在二极管编码电路,再逐一进行检查。
3. 如果不能锁存,或是锁存不了1和7,则问题在锁存电路,应该从原理上进行分析。锁存电路的设计原理是:启用CD4511的锁存功能端LE,高电平有效,即输入高电平时执行锁存功能。锁存器应能锁定第一个抢答信号,并拒绝后面抢答信号的干扰。如何设计呢,我们对0~9十个数字的显示笔段进行分析,只有0数字的d笔段亮与g笔段灭,其它数字至少有一点不成立。由此可以区分0与其它数字。我们将LED管的a笔段与g笔段的输入信号反馈到锁存电路,通过锁存电路控制锁存端LE输入为0或1(锁存与否)。当LED显示器显示为0时,LE=0,CD4511译码芯片不锁存;当LED显示器显示其它数字时, LE=1,芯片锁存。这样只要显示器上显示为0,74ls148译码芯片才不锁定,显示其它数字均锁存。所以只要有选手按了按键,显示器上一定是显示1~8的数字,LE=1芯片锁存,之后任何其他选手再按下按键均不起作用。例如SB1键先按下,显示器上显示1,LE=1芯片锁存,其他选手再按SB2~SB8,显示器上仍显示1,SB1按下之后的任一按键信号均不显示。直到主持人按清零键SB9,显示器上又显示0,LE=0,锁存功能解除,又开始新一轮的抢答。
若所有的数字都不能锁存,说明不管LED显示什么数字,74ls148管脚的5脚输入为电平,可能是5脚与地短接或者是锁存电路的两个二极管VD13和VD14断开等故障;若只有1和7两个数字不显示则可以分析一下其原因:显示1和7数字时g段不亮,74ls148的g输出端为低电平,VD14截止,而b段亮d段不亮本应该三极管VT截止而使VT13导通,产生高电平(锁存信号)给LE,现在不能锁存说明VD13截止,推断是三极管击穿损坏。
4. 在测试的过程中我们一定要注意,高低电平的测试电压数值要针对不同的电路而选取不同的数值。比如,针对LED管,高电平只能用1.5~2V,而在CD4511的输入端高电平要用到8V以上的电源电压。选高了,会烧管子;选低了,会看不到效果,甚至产生误判断。
5. 判断PNP型和MPN型晶体管:用万用表的R×1k(或者R×100)档。用黑表笔接晶体管的某一个管脚,用红表笔分别接其它两脚。如果表 针指示的两个阻值都很大,那么黑表笔接晶体管的某一个管脚,用红表笔接其它两脚。如果表针指示的两个阻值都很大,那么黑表笔所 接的那一个管脚是PNP型的基极,如果表针指示的两个阻值都很小,那么黑表笔所接的那个一个管脚是NPN型的基极;如果表针指示的阻 值一个很大,一个很小,那么黑表笔所接的那一个管脚不是基极。这就要另换一个管脚来试。以上方法,不但可以判断基极,而且可以 判断是PNP型还是NPN型晶体管。
判断基极后就可以进一步判断集电极和发射极。先假定一个管脚是集电极,另一个管脚是发射极。然后反过来,把原先假定的管脚对调一下,再估测β值,其中,β值大的那次的假定是对的。这样就把集电极个发射极也判
5部分重要原件引脚图及其功能表
(1)74ls148
管脚图
(2)74ls192
管脚图
功能表
(3)555
管脚图
6 总结与体会
转眼间两周数字电子课程设计转眼就结束了,通过这次课程设计,我学会了许多课本上学不到的东西,同时也加强了我的动手、思考和解决问题的能力,受益匪浅。
通过杨老师的讲课,杨老师从整体上给我们说明了设计的大体思路,每一步该实现怎么样的功能,怎么实现该功能。而我们的任务是通过这次杨老师的讲课去找资料了解各芯片的功能,并通过芯片实现其功能。接下来的任务就去找资料,设计电路图,并且仿真。
为了弄懂74LS192芯片的功能,我从图书馆里借来了好几本书,同时也在网上找了资料再到逻辑功能,经过一番努力终于解决啦,还有其它的芯片的功能也要慢慢的去琢磨。而在课程设计过程中,我觉得是对课本知识的巩固和加强,由于课本上的知识太多,同时平时课间又没有好好的运用额理解个个元件的功能,而且考试的内容有限,所以在这次课程设计过程中,我们了解很多元件的功能,对其在电路中的使用有更多的认识。
从前的学习过程过于浮浅,只是流于表面的理解,而现在要做课程设计,就不得不要求我们对所用到的知识有更深层次的理解。因为课程设计的内容比及书本中的理论知识而言,更接近于现实生活,而理论到实践的转化往往是一个艰难的过程,它犹如一只拦路虎,横更在我们的面前。但是我们毫不畏惧,因为我们相信我们能行。
前几天的主要任务是设计和仿真出主体电路。虽然在设计中会遇到这样那样的问题,有时认为是正确的,而在仿真中却出现了这样那样的问题。比如说在设计好的主电路图要实现南北各灯泡的状态,电路图我认为是对的,而在仿真的是后去出现了问题,就是出现了一个出状态,其它的都是正确的,经过了反复的检查没什么问题,后来问杨老师,其实没有问题,在实际中就不会出现了这种问题啦,所以有不懂的还是要问老师,那样还节省很多的时间。
电路图接好了,下面就是接线啦,这可是一个比较麻烦的事。首先要测试个芯片是否有问题,电路板有没有问题,以及导线是不是断了。这一系列的工作都是细心的事,容不的半点马虎。在接线的时候要细心和耐心、恒心,这样才能做好事情。首先是线的布局上既要美观又要实用和走线简单,兼顾到方方面面去考虑是很需要的,否则只是一纸空话。同时接好了一步电路以后,最为重要的是检查这部分是不是接对了。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
此次课程设计,学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和与人合作共同提高,都受益非浅,今后的制作应该更轻松,自己也都能扛的起并高质量的完成项目。
两周的课程设计已经结束,我将珍藏这段难忘的时光,是她让我让我知道,任何一种小小的成绩后面,也许就隐藏着许许多多不为人的艰辛。
在此,我要感谢给予我们精心辅导的杨老师,还有其他代理课程设计的老师,也向他们表示衷心的感谢!
7 附录.元器件清单
74ls148 1个 74ls138 1个 74ls192 2个 555 2个 JK触发器 2个 面包板 1块 调试箱 1个
参 考 文 献
1.《电子线路设计、实验、测试》(第二版)
华中理工大学出版社-------谢自美 主编
2.《新型集成电路的应用》---------电子技术基础课程设计
华中理工大学出版社 梁宗善 主编
3.《电子技术基础实验》
高等教育出版社-------------陈大钦 主编
4.《电子技术课程设计指导》
高教出版社-------------------彭介华 主编
⑷ 声光显示智力竞赛抢答器开题报告中的预期成果怎么写啊
开题报告主要包括以下几个方面:
(一)论文名称
论文名称就是课题的名字
第一,名称要准确、规范。准确就是论文的名称要把论文研究的问题是什么,研究的对象是什么交待清楚,论文的名称一定要和研究的内容相一致,不能太大,也不能太小,要准确地把你研究的对象、问题概括出来。
第二,名称要简洁,不能太长。不管是论文或者课题,名称都不能太长,能不要的字就尽量不要,一般不要超过20个字。
(二) 论文研究的目的、意义
研究的目的、意义也就是为什么要研究、研究它有什么价值。这一般可以先从现实需要方面去论述,指出现实当中存在这个问题,需要去研究,去解决,本论文的研究有什么实际作用,然后,再写论文的理论和学术价值。这些都要写得具体一点,有针对性一点,不能漫无边际地空喊口号。主要内容包括:⑴ 研究的有关背景(课题的提出): 即根据什么、受什么启发而搞这项研究。 ⑵ 通过分析本地(校) 的教育教学实际,指出为什么要研究该课题,研究的价值,要解决的问题。
(三) 本论文国内外研究的历史和现状(文献综述)。
规范些应该有,如果是小课题可以省略。一般包括:掌握其研究的广度、深度、已取得的成果;寻找有待进一步研究的问题,从而确定本课题研究的平台(起点)、研究的特色或突破点。
(四)论文研究的指导思想
指导思想就是在宏观上应坚持什么方向,符合什么要求等,这个方向或要求可以是哲学、政治理论,也可以是政府的教育发展规划,也可以是有关研究问题的指导性意见等。
(五) 论文写作的目标
论文写作的目标也就是课题最后要达到的具体目的,要解决哪些具体问题,也就是本论文研究要达到的预定目标:即本论文写作的目标定位,确定目标时要紧扣课题,用词要准确、精练、明了。
常见存在问题是:不写研究目标;目标扣题不紧;目标用词不准确; 目标定得过高, 对预定的目标没有进行研究或无法进行研究。
确定论文写作目标时,一方面要考虑课题本身的要求,另一方面要考率实际的工作条件与工作水平。
(六)论文的基本内容
研究内容要更具体、明确。并且一个目标可能要通过几方面的研究内容来实现,他们不一定是一一对应的关系。大家在确定研究内容的时候,往往考虑的不是很具体,写出来的研究内容特别笼统、模糊,把写作的目的、意义当作研究内容。
基本内容一般包括:⑴对论文名称的界说。应尽可能明确三点:研究的对象、研究的问题、研究的方法。⑵本论文写作有关的理论、名词、术语、概念的界说。
(七)论文写作的方法
具体的写作方法可从下面选定: 观察法、调查法、实验法、经验总结法、 个案法、比较研究法、文献资料法等。
(八)论文写作的步骤
论文写作的步骤,也就是论文写作在时间和顺序上的安排。论文写作的步骤要充分考虑研究内容的相互关系和难易程度,一般情况下,都是从基础问题开始,分阶段进行,每个阶段从什么时间开始,至什么时间结束都要有规定。课题研究的主要步骤和时间安排包括:整个研究拟分为哪几个阶段;各阶段的起止时间
⑸ 多路智力竞赛抢答器的设计
你可以参看一下PLC方面的书籍。这个是典型的例子。大部分教科书上都有。
⑹ 八路抢答器课程设计,急用~~~!!!~~~~高分
电子技术课程设计
——————八路智力竞赛抢答器
学院: 华科学院
专业,班级:电气工程及其自动化062203H
姓名 段超
学号: 200622050308
指导老师: 黄庆彩
2008年1月
目录
一 设计任务与要求……………………………………3
二 总体框图……………………………………………3
三 选择器件……………………………………………4
四 功能模块……………………………………………6
五 电路的装配调试……………………………………9
六 心得体会……………………………………………11
八路智力竞赛抢答器
一.设计任务与要求
1.任务和要求
抢大器能容纳8名选手,并且给出相应的编号为1、2、3、4、5、6、7、8,为每名选手设置一个按键。为了简化设计,可以利用试验仪上的逻辑电平开关。(这部分要求由我主要负责)
设置一个给工作人员清零的开关,以便能开始新的一轮的抢答。为了简化设计,可以利用试验仪上的逻辑电平开关。
用LED数码管显示获得优先抢答的选手的编号,一直保持到工作人员清零或1分钟倒记时答题时间结束为止。
用LED数码管显示有效抢答后的1分钟到记时答题时间。
用喇叭发声知识有效抢答及答题时间的结束。(这部分要求由我主要负责)
秒信号不必考虑时间精度,可利用试验仪上所提供的连续脉冲(方波)。
二.总体框图
根据设计任务与要求,我初步将系统分为4大功能模块:主电路、数据采集电路、控制电路和音响电路。可将主电路分为一个十六进制(实现一分钟倒记时答题时间)计数、译码、显示电路;数据采集电路(获得优先抢答选手的编号)分为8路抢答开关、八D数据锁存器、优先编码器、加1电路;控制电路分为锁存控制、倒记时控制、音响控制;音响电路分为单稳态触发器、音振及喇叭电路。以下是我设计的总体框图:如图1所示
图一 总体框图
三.选择器件
整个电路的电子器件有:555定时器,74LS192,74LS148,74LS373,74LS00,74LS04以及若干电容和电阻。我详细介绍一下我所设计的这两个电路中所用到的重要器件(555定时器和 74LS373):
1.555定时器
555 定时器是一种模拟和数字功能相结合的中规模集成器件。555 定时器成本低,性能可靠,只需要外接几个电阻、电容,就可以实现多谐振荡器、单稳态触发器及施密特触发器等脉冲产生与变换电路。它也常作为定时器广泛应用于仪器仪表、家用电器、电子测量及自动控制等方面。555 定时器的内部电路框图和外引脚排列图分别如下图2:
图2 555定时器的内部电路框图和外引脚排列图
它内部包括两个电压比较器,三个等值串联电阻,一个 RS 触发器,一个放电管 T 及功率输出级。它提供两个基准电压VCC /3 和 2VCC /3 555 定时器的功能主要由两个比较器决定。两个比较器的输出电压控制 RS 触发器和放电管的状态。在电源与地之间加上电压,当 5 脚悬空时,则电压比较器 A1 的反相输入端的电压为 2VCC /3,A2 的同相输入端的电压为VCC /3。若触发输入端 TR 的电压小于VCC /3,则比较器 A2 的输出为 1,可使 RS 触发器置 1,使输出端 OUT=1。如果阈值输入端 TH 的电压大于 2VCC/3,同时 TR 端的电压大于VCC /3,则 A1 的输出为 1,A2 的输出为 0,可将 RS 触发器置 0,使输出为 0 电平。
2.74LS373
74373八D锁存器为三态输出的8 D透明锁存器, 373的输出端O0-O7可直接与总线相连。当三态允许控制端OE为低电平时,O0-O7为正常逻辑状态,可用来驱动负载或总线。当OE为高电平时,O0-O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端LE为高电平时,O随数据D而变。当LE为低电平时,O被锁存在已建立的数据电平。当LE端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。
373引出端符号:
D0~D7-----数据输入端OE-----三态允许控制端
LE-----锁存允许端 O0-O7-----输出端
74LS373外部管腿图、真值表、逻辑图,如下图3所示:
图3 74LS373外部管腿图、真值表、逻辑图
真值表中:L——低电平; H——高电平; X——不定态; Q0——建立稳态前Q的电平; G——输入端,与8031ALE连高电平:畅通无阻低电平:关门锁存。图中OE——使能端,接地。当G=“1”时,74LS373输出端1Q—8Q与输入端1D—8D相同;当G为下降沿时,将输入数据锁存。
四.功能模块
根据设计任务与要求,我初步将系统分为4大功能模块:主电路、数据采集电路、控制电路和音响电路。
1.主电路由六十进制计数器和译码、显示电路两部分组成。
2.控制电路由锁存控制和倒计时控制两部分组成。
以上的这两大模块部电路均由我的搭档负责
以下的数据采集电路和音响电路两个模块是由我主要负责,下面我就详细说明我所设计的这两模块:
3.数据采集电路
(1).八路抢答开关
为8位选手提供8个抢答的按钮,这样可以在松开按钮后及时复位,为下次做准备。这部分我利用的是试验仪上的8个逻辑开关,在接电路图的时候,只用一个开关仿真。
(2).八D数据锁存器
采用八D数据锁存器74LS373,抢答前应使锁存允许LE=1,此时允许选手抢答,当有选手抢答有效时,要利用控制电路中的LE=0,使数据被锁存,其它选手就抢答无效了。
(3).优先编码器
采用优先编码器74LS148,因为采用了高速控制电路,因此一旦抢答,立即锁存。
我所设计的控制电路将充分利用74LS148的两个输出信号:选通输出Ys和扩展输出YEX。
以下是我设计的数据采集电路电路图如图4所示:
图4数据采集电路
4.音响电路
(1).单稳态触发器
设音响提示时间为2秒左右,可采用一脉宽为2秒的单稳态触发器实现。
实现单稳态触发器的方法有很多,可以用与非门或者非门电路实现微分型单稳、利用施密特触发器实现单稳、集成单稳等。现采用555定时器实现,注意其脉宽的计算公式为tw=1.1RC.若一个负脉冲触发信号到来,将有效触发单稳态电路产生一个脉宽为2秒的正脉冲。
(2).音频振荡器及喇叭电路
利用555定时器实现频率约1kHz的音频振荡器,因555定时器有较强的功率输出能力,可以直接推动喇叭输出。
当单稳态触发器进入暂稳态产生一个正脉冲时,控制555定时器开始工作,发出响声;当单稳态触发器自动返回稳态后,555定时器清零,不能发声。
以下是我设计的电路图如图5所示:
图5 音响电路
五 电路的装配与调试
1.由图中所示的定时抢答器的总体方框,按时信号的流向分单元装配,逐级级联。
2.我接好电路后,开始检验我的结果,发现当有选手抢答后,没有开始倒计时,经过老师的指正我们找到了原因,并立即改正,实现了要求的结果。
3.我将裁判的开关拨至0再拨回1时,发现是总能在任意时间重新抢答。(与设计要求相符)
4.我检查到,当计数器减到00时,产生了一个负脉冲信号,同时也允许开始新一轮的抢答。(与设计要求相符)
5.最后我检查的是我所设计的音响电路,当我拨动一个选手开关后,音响电路所对应的绿灯开始发光,并开始倒计时。当计数器减到00时,绿灯再次发光提示。(与设计要求相符)
现给出我所设计的总电路图如图6所示:
图6 总电路图
我的仿真结果图如图7所示:
图7 分别是倒计时、数据采集、音响电路的仿真结果
六 心得体会
在设计之前,参考了许多相关的资料。在设计中又参考了以前讲过的四路抢答器的原理图,有了基本的思路。
但着手设计时,又出现了许多未预料到的问题,例如元件的选择:在选择编码器时,是采用普通编码器还是优先编码器。普通编码器中,任何时刻只允许输入一个编码信号,否则输出将发生混乱。所以选择了优先编码器。但是74LS系列中众多不同管脚的类型,选择哪个作编码器。经过查找,选择了74LS192,因为想用数字的形式显示抢答者的编号,所以选择了数码显示管,但数码显示管不能直接,数码显示管需要由TTL或CMOS集成电路驱动,所以在TTL还是CMOS集成电路上又进行了比较和选择。最后选择了数显译码器,用它将输出的二进制代码译成相对应的高、低信号,用其作为数码显示管的驱动信号,数码显示管显示出相对应的选手编号。在音响电路中,根据设计需要选择了555定时器。
在一些设计原理上也遇到了许多新问题。发现当电源接通后,无论有无人按按钮都会使音乐集成电路通电发出声响,经同学以及老师的指证,发现导通的原因,并及时的改正。
通过这次八路抢答器的设计,我发现了以往学习中的许多不足,也让我掌握了以往许多掌握的不太牢的知识,感觉学到了很多东西。三周的课程设计,留给我印象最深的是要设计一个成功的电路,必须要有耐性和坚持下去的毅力。在整个电路的安装调试的过程中,花费时间最多的是各个元件电路的连接,电路的细节设计以及连完线路后的检查工作上,其中在连接电路是出现问题比较多,在555元件和74LS192元件的连接的调试的时候出现了问题在老师的指导和讲解下我门有了更深刻的认识,同时对元件的原理的功能了解的更多更深刻。在这次过程中,我深刻的体会到在设计过程中,需要反复实践,其过程很可能相当的烦琐,有时花很长时间检查电路故障,分析原因,那时心中就有点灰心,有时还特别想放弃,此时更需要静下心来,更仔细的查找原因。
总之,这次实验过程中我受益匪浅,在摸索我和我的搭档实现了课题所要求的结果。培养了我的设计思维,增加了动手操作的能力。更让我体会到实现电路功能喜悦。
⑺ 设计一个智力竞赛抢答器可同时供8人参加比赛,他们的编号分别是0、1、2、3、4、5、6、7,各用一个抢答按钮
第一章抢答器设计功能分析
1.1 数字抢答器的概述
对于抢答器我们大家来说都不陌生,它是用于很多竞赛场合,真正实现先抢先答,让最先抢到题的选手来回答问题。抢答器不仅考验选手的反应速度同时也要求选手具备足够的知识面和一定的勇气。选手们都站在同一个起跑线上,体现了公平公正的原则。
1.2 设计任务与要求
基本要求:
1. 给主持人设置一个开关,用来控制系统的清零(编号显示数码管灭灯)和抢答器的开始。
2. 抢答器具有数据锁存和显示的功能。抢答开始后,若有选手按动抢答器按钮,编号立即锁存,并在LED数码上显示选手的编号,同时扬声器给出音响提示。此外,要封锁输入电路,禁止其他选手抢答。
发挥部分:
1. 抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如30秒)。当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示,同时扬声器发出短暂的声响,声响持续时间0.5秒左右。
2. 参加选手在设定的时间内抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零为止。
3. 如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时后抢答,时间显示器上显示00。
4. 选手如果在主持人按开始键之前违规抢答,系统报警,LED显示违规选手号码和FF,直到主持人按下停止键。
第二章 抢答器方案论证
抢答器的实现方式有种多样,通过纯电子器件搭建电路实现,如优先编码器,锁存器,555定时器译码器等,纯电子器件实现没有软件参与,调试简单,但是它不易于扩展和修改,而且电路结构复杂,调试困难电子,电子器件管脚很多,实际搭建起来费时费力,焊接很容易出错。于是,我想到了用单片机实现。单片机体积小价格低,应用方便,稳定可靠。单片机将很多任务交给了软件编程去实现,大大简化了外围硬件电路,使外围电路的实现简单方便。由于单片机本身不具有软件编译测试的功能,我们需要借助其他软件编译,将编译好的程序“烧”入单片机内。
在实际电路设计中,需要先通过仿真软件测试电路以及编译的程序,检查外围电路设计是否合理,软件编译是否正确,以及软件和硬件电路能否正常配合工作,能否准确的实现所设计的功能。如果测试通过,电路仿真没有问题能完全实现功能的话就可以实际的做板子的焊接工作了。在老师的指导下我选择了常用的单片机仿真软件proteus6.9以及keil 进行仿真。
第三章 硬件电路设计
3.1总体设计
根据抢答器的基本功能,可以设计出如下的单片机外围电路:
图3-1 总体设计
如图3-1,P3.0为开始抢答,P3.2为停止,P1.0-P1.7为八路抢答输入,数码管段选P0口,位选P2口低3位,蜂鸣器(用绿灯代替)输出为P3.6口。P3.2为时间加1调整,P3.3为时间减1调整。
3.2 外部振荡电路
图3-2 外部振荡电路
一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。
3.3 复位电路的设计
单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图4所示:
图3-3 复位电路
在方案中使用到了硬件复位和软件复位两种功能,由上面的硬件复位可使寄存器及存储器的值都恢复到初始值,而前面的功能提到了倒计时间需要有记忆功能,该功能实现的前提条件就是不能对单片机进行硬件复位,所以设定了软复位功能。软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。
3.1.4 显示电路的设计
显示电路使用了七段数码管7SEG-MPX4-CC,它是共阴极的,由高电平点亮。
图3-4 阴极七段数码管
4.1.5 按钮输入电路的设计
抢答器的输入按钮使用常开开关,
图3-5 抢答按键
这些常开开关组成了抢答按键,硬件电路简单,在程序设计上也不复杂,只要在程序中消除在按键过程中产生的“毛刺”现象就可以了。这里采用最常用的方法即延时法,其的原理为:因为“毛刺”脉冲一般持续时间短,约为几ms,而按键的时间一般远远大于这个时间,所以当单片机检测到有按键动静后再延时一段时间(这里取10ms)后再判断此电平是否保持原状态,如果是则为有效按键,否则无效。
3.1.6 发声
这里能利用程序来控制单片机P3.6口线反复输出高电平或低电平,即在该口线上产生一定频率的矩形波,接上扬声器就能发出一定频率的声音,再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使扬声器发出不同的声音。
第四章 系统软件设计
4.1 程序系统结构图
硬件电路确定后,软件的编程要与硬件相匹配,软硬件才能结合完成所要实现的功能。由功能分析得到以下的软件结构图:
图4-1 软件系统结构图
4.2 程序流程图
整个程序主要由定时器T0、定时器T1、外部中断0和主程序构成。
定时器T0用于使扬声器发声,当需要响铃时,把响铃标志位置一,每次中断都对P3.7取反,扬声器发声,改变定时器初值,可改变扬声器频率。定时器程流程图如下:
图4-2 响铃程序流程图
定时器T1用于倒计时,每次中断为50ms,当计数标志为20时即为一秒,显示数字减一。其流程图如下:
图4-3 倒计时中断流程图
外部中断0用于调整倒计时时间,流程图如下:
图4-4 调整抢答时间流程图
主程序协调三个中断一起工作,实现抢答功能,其流程图如下:
图4-5 主程序流程图
附录:
程序代码:
P3.0为开始抢答,P3.1为停止,P1.0-P1.7为八路抢答输入,数码管段选P0口,位选P2的低三位口,蜂鸣器输出为P3.6口。
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT0SUB
ORG 000BH
AJMP T0INT
ORG 001BH
AJMP T1INT
OK EQU 20H ; 抢答开始标志位
RING EQU 22H ; 响铃标志位
ORG 0040H
MAIN: MOV R1,#0FH; 初设抢答时间为15s
MOV R2,#0AH; 初设答题时间为10s
MOV TMOD,#11H; 设置未定时器/模式1
MOV TH0,#0F0H
MOV TL0,#0FFH; 越高发声频率越高,越尖
MOV TH1,#3CH
MOV TL1,#0B0H; 50ms为一次溢出中断
SETB EA
SETB ET0
SETB ET1
SETB EX0
SETB EX1; 允许四个中断,T0/T1/INT0/INT1
CLR OK
CLR RING
SETB TR1
SETB TR0; 一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了
查询程序:
START: MOV R5,#0BH
MOV R4,#0BH
MOV R3,#0BH
ACALL DISPLAY; 未开始抢答时候显示FFF
JB P3.0,NEXT
ACALL DELAY
JB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询
ACALL BARK;按键发声
MOV A,R1
MOV R6,A; 送R1->R6,因为R1中保存了抢答时间
SETB OK; 抢答标志位,用于COUNT只程序中判断是否查询抢答
MOV R3,#0AH; 抢答只显示计时,灭号数
AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面
NEXT: JNB P1.0,FALSE1
JNB P1.1,FALSE2
JNB P1.2,FALSE3
JNB P1.3,FALSE4
JNB P1.4,FALSE5
JNB P1.5,FALSE6
JNB P1.6,FALSE7
JNB P1.7,FALSE8
AJMP START
非法抢答处理程序:
FALSE1: ACALL BARK; 按键发声
MOV R3,#01H
AJMP ERROR
FALSE2: ACALL BARK
MOV R3,#02H
AJMP ERROR
FALSE3: ACALL BARK
MOV R3,#03H
AJMP ERROR
FALSE4: ACALL BARK
MOV R3,#04H
AJMP ERROR
FALSE5: ACALL BARK
MOV R3,#05H
AJMP ERROR
FALSE6: ACALL BARK
MOV R3,#06H
AJMP ERROR
FALSE7: ACALL BARK
MOV R3,#07H
AJMP ERROR
FALSE8: ACALL BARK
MOV R3,#08H
AJMP ERROR
倒计时程序(包括有效抢答程序):
COUNT: MOV R0,#00H; 重置定时器中断次数
MOV TH1,#3CH
MOV TL1,#0B0H; 重置定时器
RECOUNT: MOV A,R6; R6保存了倒计时的时间
MOV B,#0AH
DIV AB; 除十分出个位/十位
MOV 30H,A; 十位存于(30H)
MOV 31H,B; 个位存于(31H)
MOV R5,30H ; 取十位
MOV R4,31H ; 取个位
MOV A,R6
CLR C
SUBB A,#07H
JNC LARGER ;大于5s跳到LARGER,小于等于5s会提醒
MOV A,R0
CJNE A,#0AH,FULL;1s中0.5s向下运行
CLR RING
AJMP CHECK
FULL: CJNE A,#14H,CHECK ; 1s时,响并显示号数并清R0,重新计时
SETB RING
MOV A,R6
JZ QUIT ; 计时完毕
MOV R0,#00H
DEC R6 ; 一秒标志减1
AJMP CHECK
LARGER: MOV A,R0
CJNE A,#14H,CHECK ; 如果1s向下运行,否者跳到查"停/显示"
DEC R6; 计时一秒R6自动减1
MOV R0,#00H
CHECK: JNB P3.1,QUIT; 如按下停止键退出
ACALL DISPLAY
JNB P1.0,TRUE1
JNB P1.1,TRUE2
JNB P1.2,TRUE3
JNB P1.3,TRUE4
JNB P1.4,TRUE5
JNB P1.5,TRUE6
JNB P1.6,TRUE7
JNB P1.7,TRUE8
AJMP RECOUNT
QUIT: CLR OK ; 如果按下了"停止键"重新回到开始
CLR RING
ACALL BARK
AJMP START
正常抢答处理程序:
TRUE1: ACALL BARK; 按键发声
MOV A,R2
MOV R6,A; 抢答时间R2送R6
MOV R3,#01H
CLR OK;
AJMP LOOP2
TRUE2:ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#02H
CLR OK
AJMP LOOP2
TRUE3:ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#03H
CLR OK
AJMP LOOP2
TRUE4:ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#04H
CLR OK
AJMP LOOP2
TRUE5: ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#05H
CLR OK
AJMP LOOP2
TRUE6: ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#06H
CLR OK
AJMP LOOP2
TRUE7: ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#07H
CLR OK
AJMP LOOP2
TRUE8: ACALL BARK;
MOV A,R2
MOV R6,A
MOV R3,#08H
CLR OK
LOOP2: AJMP DISPLAY ;抢答后停止计时,等待返回
SETB RING
JNB P3.1 QUIT
AJMP LOOP2
犯规抢答程序:
ERROR: SETB RING ;犯规响铃
MOV R5,#0BH
MOV R4,#0BH; 显示FF和犯规号数
LOOP3: ACALL DISPLAY
JNB P3.1 QUIT1; 等待“停止”键按下
AJMP LOOP3
QUIT1: CLR RING
CLR OK
AJMP START
显示程序:
DISPLAY:MOV DPTR,#DAT1; 查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出
MOV A,R5
MOVC A,@A+DPTR
MOV P2,#01H
MOV P0,A
ACALL DELAY
MOV DPTR,#DAT2
MOV A,R4
MOVC A,@A+DPTR
MOV P2,#02H
MOV P0,A
ACALL DELAY
MOV A,R3
MOVC A,@A+DPTR
MOV P2,#04H
MOV P0,A
ACALL DELAY
RET
DAT1:DB 00H,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H
;"灭","1","2","3","4","5","6","7","8","9","灭","F"
DAT2:DB 3FH, 06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H
DELAY1: MOV 35H,#08H
LOOP0: ACALL DISPLAY
DJNZ 35H,LOOP0
RET
延时(显示和去抖动用到):
DELAY: MOV 32H,#12H
LOOP: MOV 33H,#0AFH
LOOP1: DJNZ 33H,LOOP1
DJNZ 32H,LOOP
RET
发声程序:
BARK: SETB RING
ACALL DELAY1
ACALL DELAY1
CLR RING; 按键发声
RET
INT0(抢答时间R1调整程序):
INT0SUB:MOV A,R1
MOV B,#0AH
DIV AB
MOV R5,A
MOV R4,B
MOV R3,#0AH
ACALL DISPLAY;先在两个时间LED上显示R1
JNB P3.2,INC0; P3.2为+1s键,如按下跳到INCO
JNB P3.3,DEC0; P3.3为-1s键,如按下跳到DECO
JNB P3.4,BACK0; P3.4为确定键,如按下跳到BACKO
AJMP INT0SUB
INC0: MOV A,R1
CJNE A,#63H,ADD0; 如果不是99,R2加1,如果加到99了,R1就置0,重新加起
MOV R1,#00H
ACALL DELAY1
AJMP INT0SUB
ADD0: INC R1
ACALL DELAY1
AJMP INT0SUB
DEC0: MOV A,R1
JZ SETR1;如果R1为0, R1就置99,
DEC R1
ACALL DELAY1
AJMP INT0SUB
SETR1: MOV R1,#63H
ACALL DELAY1
AJMP INT0SUB
BACK0: RETI
TO溢出中断(响铃程序):
T0INT:MOV TH0,#0ECH
MOV TL0,#0FFH
JNB RING,OUT
CPL P3.6 ; RING标志位为1时候P3.6口不短取反使喇叭发出一定频率的声音
OUT: RETI
T1溢出中断(计时程序):
T1INT: MOV TH1,#3CH
MOV TL1,#0B0H
INC R0
RETI
END