根据单片机的三路抢答器的设计王辉
三路抢答器设计

数字电路课程设计一、设计任务和要求:1. 抢答器同时供3名选手抢答,分别用3个按钮D1、D2、D3表示。
2. 设置一个系统清除和抢答控制开关S,该开关由主持人控制。
3. 抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,并在LED数码管上显示,选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。
4. 抢答器具有定时抢答功能,且一次抢答的时间为8秒。
当主持人启动"开始"键后,定时器进行计时(0-7)。
5.主持人没有闭合开关之前,有人抢答,数码管显示对应的选手编号,且红灯亮,当所有选手闭合自己对应的开关时,编号数码管清为0。
6. 参赛选手在设定的时间内进行抢答,抢答有效,计数器停止工作,显示器上显示选手的编号和抢答的时间,绿灯亮,并保持到主持人将系统清除为止。
7. 如果定时时间已到,无人抢答,本次抢答无效,定时显示器上显示8,且黄灯亮以示警告时间已到,若有人抢答,显示抢答人组号并锁存,直到主持人将系统清零,即黄灯灭,两个数码管显示都为0。
二、 实验框图: 1、设计方案 :抢答器具有锁存、定时、显示功能。
抢答之前,两个数码管显示为0,即主持人没有按下开始按钮之前,有人抢答,亮红灯给以警告,数码管显示对应的选手编号,当选手闭合自己的开关时,对应数码管显示为0;当主持人按下开始按钮后,进行抢答,若有人抢答,锁存器锁存选手号和抢答时的时间,同时亮绿灯,直到主持人清零,系统才能再次正常工作;如果时间已到,没有人回答,黄灯亮,即在8秒的时刻,如果有选手抢答,锁存器锁存选手号,数码管并将选手号显示出来,直到主持人清零。
2、系统框图 :当主持人宣布开始,定时电路开始秒脉冲电路的作用而进行计时,并通过译码器在数码管中显示。
当某选手按开关键时,通过控制电路控制锁存器的使能端,并在锁存器中锁存,在输出端产生相应的开关电平信息,然后在译码器中译码,将编码器输出的8421BCD 转换为数码管需要的逻辑状态。
3位竞赛抢答器课程设计报告分解

《单片机控制技术》期末课程设计题目:三位竞赛抢答器设计报告专业:电子科学与技术班级:成员:完成日期:2015年12月25日三位竞赛抢答器设计报告1设计意义及要求1.1设计意义在很多关于智力竞赛的电视节目上,经常会出现抢答环节,参赛选手们在得到主持人发出的特定口令之后,都会争先恐后地按下抢答器,但每次抢答环节只有可能产生一位抢答成功的选手,同时可以断定这位参赛选手肯定是反应最快按下抢答器的。
设计一个功能类似的三位抢答器不仅能够让大家进一步了解这种抢答器的工作原理,而且还能在功能上提出一些好的想法和思想,甚至可以实现部分新的功能,如果人们不断的进行具有创新性的设计实验,也许过不久那些竞赛类的电视的抢答模式就会发生一定的改变和创新,从而增加了节目的观赏性,进一步丰富大家的娱乐生活。
1.2设计要求1.以单片机为核心,设计一个3位竞赛抢答器:同时供3名选手或3个代表队比赛,分别用3个按钮S0~S2表示。
2.设置一个系统清除和抢答器控制开关S,开关有主持人控制。
3.抢答器具有锁存与显示功能,即选手按按钮,锁存相应的编号,并在优先抢答器选手的编号一直保持主持人将系统清楚为止。
4.抢答器具有定时抢答功能且一次抢答的时间由主持人设定(如30秒),当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,持续时间0.5S左右。
5.参赛选手在设定的时间内进行抢答,抢答有效,定时器工作停止,显示器上显示选手的编号和抢答的时间并保持到主持人将系统清除为止,6.如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。
2成员分工及方案设计2.1成员分工:编写C 语言并使用Protuce 软件仿真; :负责制作本课程设计报告; :负责最后答辩;2.2方案设计2.2.1模块化设计框架图图2-2-1模块化设计框架图2.2.2各个模块的实现 (1)脉冲发生器的实现根据本实验的具体要求,锁存器需要有脉冲信号的输入,及需要有相应的脉冲发生器。
三路抢答器课程设计

设计题目三路抢答器的PLC控制1 主要容该抢答器作为智力竞赛的品判装置,根据应答者抢答情况自动设定答题时间,并根据答题情况用灯光、声音显示其答题正确、错误及违规,在主持人的操作下,对答题者所显示的分数值进行加分、减分或违规扣分。
2 具体要求1.主持人提出问题按下启动按钮(开始抢答)后,若10s无人抢答,则有声音提示,说明该题无人抢答,自动作废。
2.主持人提出问题在未按下启动按钮(开始抢答)之前抢答,则违规,抢答器报出违规信号,并作减分处理。
3.主持人提出问题按下启动按钮(开始抢答)后,第一个按下按钮的信号有效,后按下的按钮信号无效。
4.主持人按下计时按钮,开始计时。
答题时间为1min,答题过程中有灯光提示时间,时间到并有声音指示。
5.抢答器有数码显示器显示各答题者的分数,由主持人控制,答对者加10分,答错者减10分,违规者扣5分,减分计算中若出现负分作0分处理。
6.答题完毕按下复位按钮,恢复抢答器原始状态,为下一轮抢答做好准备。
答题过程中灯光、音响的安排及注意事项见课程设计指导书。
在上述具体的要求下,完成硬件电路的制作和接线,PLC控制程序的设计及联机调试,直至满足要求。
3 进度安排1.理解课程设计容及设计要求,查阅资料(第一周的星期一)。
2. PLC外围硬件电路的制作和接线,构思设计方案(第一周的星期二至星期三)。
3. PLC控制程序设计、程序调试及系统的总体调试,撰写课程设计报告(第一周的星期四至第二周星期四)。
4. 课程设计答辩、批改设计报告,登载成绩(第二周星期五)。
4 完成后应上交的材料PLC外围硬件连接电路、程序清单及课程设计总结报告。
6 总评成绩指导教师签名日期年月日系主任审核日期年月日目录绪论 (3)第一章系统设计容及要求 (1)第二章硬件设计 (3)2.1硬件选取 (3)2.1.1 三菱PLC可编程控制器 (3)2.1.2 按钮板块 (3)2.1.3 数码显示电路 (4)2.1.4 八字数码管. (4)2.1.5 CD4511简介 (4)2.1.6 数码管显示电路 (5)第三章软件设计 (6)3.1编程辅助器说明 (6)3.2梯形图说明 (7)3.2.1初始化 (7)3.2.2抢答前计时 (8)3.2.3答题时间 (9)3.2.4抢答标志 (10)3.2.5抢答灯控制 (11)3.2.6蜂鸣器 (12)3.2.7数据处理 (13)3.2.8分数加减 (14)3.2.9显示控制 (16)3.2.10防过显示 (18)3.2.11复位 (18)3.2.12违规标志位 (19)参考文献 (20)总结 (21)致 (22)附录 (23)绪论该抢答器可作为智力竞赛的评判装置。
单片机 课程设计三人抢答器

单片机课程设计三人抢答器在现代电子技术的快速发展中,抢答器作为一种常见的电子设备,广泛应用于各种竞赛、游戏和活动中。
本次课程设计的任务是设计一个三人抢答器,通过单片机的控制实现抢答功能,并具备相应的显示和提示功能。
一、设计要求1、有三个抢答按键,分别对应三位选手。
2、当有选手按下抢答键时,系统能锁定该选手,并在显示屏上显示其编号。
3、同时伴有声音提示,表示抢答成功。
4、抢答成功后,其他选手再按下抢答键无效。
二、硬件设计1、单片机选型我们选择了常见的 51 系列单片机,如 STC89C52 单片机。
它具有价格低廉、性能稳定、易于编程等优点。
2、按键输入使用三个独立按键作为抢答按键,分别连接到单片机的三个I/O 口。
通过检测这些 I/O 口的电平变化来判断是否有按键按下。
3、显示模块采用数码管作为显示模块,用于显示抢答成功选手的编号。
可以选择共阴或共阳数码管,通过单片机的 I/O 口控制数码管的段选和位选,实现数字的显示。
4、声音提示模块使用蜂鸣器作为声音提示装置,连接到单片机的一个 I/O 口。
当抢答成功时,单片机输出高电平驱动蜂鸣器发声。
5、电源模块为整个系统提供稳定的电源,可以使用 5V 直流电源适配器或者通过电池供电。
三、软件设计1、主程序流程系统初始化后,进入循环等待状态,不断检测三个抢答按键的状态。
当有按键按下时,进行相应的处理,包括锁定选手、显示编号、发声提示以及禁止其他选手抢答。
2、按键检测程序通过不断读取与按键连接的 I/O 口的电平状态,判断是否有按键按下。
为了消除按键抖动的影响,需要进行软件消抖处理。
3、显示程序根据抢答成功选手的编号,将对应的数字编码发送到数码管的段选和位选端口,实现数字的显示。
4、声音提示程序当抢答成功时,单片机控制与蜂鸣器连接的 I/O 口输出高电平,使蜂鸣器发声。
四、系统调试1、硬件调试首先检查电路连接是否正确,有无短路、断路等情况。
然后测量各个电源点的电压是否正常,确保硬件电路工作正常。
三路智力竞赛抢答器的设计(14.12.22)

n
J 0 X 1 Q1
n
输入封锁一个输出封锁信号为1时,X2都应为0,故可用或非门实现。
四、选手抢答器功能规划和电路设计 3.电路设计
根据上述分析所设计的电路原理图如图所示。
五、计分器功能和电路设计
1. 计分器应具备基本功能
(1)计数范围为000~990,以10为最小计数单位; (2)采用三位七段显示数码管显示计分值; (3)可用预置脉冲将计数值预置成100分; (4)具有“计分允许”信号输入端,该信号有效时方 可对本计分器进行加分或减分操作; (5)具有“加10分”脉冲信号和“减10分”脉冲信号 输入端。
Q1 n Q0 n X1X2 Q1 n+1Q0 n+1 0 1 0× 0 0 1 0 0 0 1 1 1 0 0 1 ×× 0 1 1 0 ×× 1 0 1 1 ×× 0 0 J1 K1 J0 K0 0 × 1 × 0 × 0 × 1 × 0 × 0 ×× 0 × 0 0× × 1 ×1 Y 0 Y 1Y 2
三、数字系统设计的一般方法
数字系统的设计方法有两种,即自上而下的设计方法和 自下而上的设计方法。现代数字系统的设计常采用自上而下 的设计方法。 自上而下的设计方法是针对数字系统层次化结构的特点 ,将系统的设计分层次、分模块进行。通常将整个系统从逻 辑上划分成控制单元和数据处理单元两大部分。如果控制单 元和处理单元仍比较复杂,可以在控制单元和处理单元内部 多重地进行逻辑划分,分解成几个子模块进行逻辑设计,最 后得到所要求的数字系统。
七、撰写报告
电路调试成功后,按照设计报告的格式撰 写实验报告,要求图文并茂,纸张大小选用A4 纸。
二、确定系统的组成
整个系统应包括主持人控制 台、选手抢答台、选手计分器三 部分。 主持人通过主持人控制台上 所设按钮向选手抢答台和选手计 分器发送“预置分值”、“准备 抢答”、“开始抢答”、“加分 ”、“减分”等信号; 抢答选手通过选手抢答台上 所设按钮发送“抢答”信号并封 锁竞争对手的抢答器,同时向自 己的计分器发出“计分允许”信 号。
三路抢答器PLC程序设计

目录一、前言 (2)二、课程设计分析与解决思路 (3)2.1、控制任务 (3)2.2、分析及解决思路 (3)三、控制系统设计 (4)3.1、PLC机型选择 (4)3.2、控制程序流程图 (4)3.3、输入输出点分配图 (5)3.4、梯形图设计 (6)3.5、设计指令 (8)3.6、外部接线图 (11)四、程序调试说明 (12)五、总结 (13)参考资料 (14)一、前言目前国内外市场上已有很多类型的知识竞赛抢答器,其大致采用模拟电路、数字电路、单片机或者PLC芯片、计算机控制系统等四类产品。
对于采用模拟电路或者数字电路的产品,其技术相当成熟。
但是随着功能的增多,电路也越复杂,并且成本偏高,故障率高,显示方式简单或者没有,无法准确判断抢按按钮的行为,也不便于参数调节及其功能的升级换代。
而对于科技飞速发展的今天,PLC、单片机应用的不断深入,带动了传统控制检测技术的不断更新,并鉴于其本身具有的优点,以PLC、单片机为核心的部件成为主流。
它对采样获得的各种抢答信号进行分析。
但仅有抢答功能的抢答器已经不能满足当今社会的需要。
该设计不但有抢答功能,而且还有一个计分系统,能分别对四个选手进行计分,并能够对分数进行加、减。
带计分功能的智能抢答器将会取代一般的智能抢答器,更好的服务于社会。
本设计将以PLC为核心设计了系统结构图、梯形图以及输入输出端子的分配方案,实现了三路抢答的功能,抢答人员按下抢答器后,七段显示器显示抢答成功的相应的位置号。
主持人只需按一下即可达到初始状态继续答题。
从而使得竞赛不断完善其公平、公正性。
二、课程设计分析与解决思路1、控制任务:(1)、有3个抢答席(分别为1~3号)和1个主持人席,每个抢答席上各有1个抢答按钮和一盏抢答指示灯。
(2)、参赛者在允许抢答时,第一个按下抢答按钮的抢答席上的指示灯将会亮,七段显示器显示抢答成功的相应的位置号,且释放抢答按钮后,指示灯仍然亮;此后另外两个抢答席上即使在按各自的抢答按钮,其指示灯也不会亮。
三路抢答器课程设计

图2-4
图2-5
3.元器件选型
3.1控制电路中元器件的选择
图3-174LS175外引线排列图
图3-274LS175逻辑图
输入
输出
MR
CP
1D
2D
3D
1Q
2Q
3Q
L
×
×
×
×
L
L
L
H
↑
1D
2D
3D
1D
2D
3D
H
H
×
×
×
保持
H
L
×
×
×
保持
表3-174LS175的功能表
通过对以上逻辑图和功能表的分析可知当主持人控制开关处于“复原”时,74LS175触发器的MR端为低电平,使D触发器被强制清零,输入的抢答信号无效。当主持人将开关拨到“开始”时,D触发器Q非端前一状态为高电平,三个Q非端与在一起为高电平,再和抢答按键信号和借位信号与在一起返还给D触发器的脉冲端,当没人抢答时,抢答信号为低电平,与门输出端为低电平返还给D触发器脉冲端,当一有人抢答时,抢答信号为高电平,并和U2的输出信号和借位信号与在一起,使得U3输出端为高电平给D触发器,于是D触发器就有一个上升沿,使得相对应的二极管导通。另外,当选手松开按键后,D触发器的Q非前一状态为低电平,与在一起后给与门U3,使得U3的输出端为低电平给D触发器,则D触发器的脉冲输入端恢复原来状态,从而使得其他选手按键的输入信号不会被接收。这就保证了抢答者的优先性及抢答电路的准确性,达到了设计中自锁的功能要求。
(1)3名选手编号为:1,2,3各有一个对应编号的抢答按钮.
(2)给主持人设置一个控制按钮,用来控制系统的复原和抢答的开始。
三路抢答器

摘要近年来随着科技的飞速发展, PLC的应用不断地走向深入,同时带动传统的控制检测技术的不断更新,可编程控制器由于其优良的控制性能,极高的可靠性,在各行各业中的应用日益广泛普及。
本次设计是利用PLC(Programmable Logic Controller)对PLC控制智力抢答器进行控制。
首先,选择这个题目之后,我对本次设计进行了全面的思考。
使自己对本次设计有一个大致的总体思路,然后仔细分析PLC控制的三路智力抢答器的工作原理,以及它的一些工作过程,分析后得出它主要需要完成主持人的控制、选手的抢答、计时及计分输出显示功能等。
关键词:智力控制;三路抢答器;PLC;计分目录1 前言 (1)2 系统设计内容及要求 (4)2.1 概述 (4)2.2 设计要求 (4)2.3 设计任务 (5)3 抢答器硬件系统设计 (6)3.1 控制系统选取 (6)3.2 控制系统的硬件组成 (6)3.3 硬件I/O地址分配 (7)4 抢答器软件系统设计 (11)4.1 整体设计 (11)4.2 PLC控制程序 (11)5 安装与调试 (22)6 结论 (22)致谢 (23)参考文献 (24)1 前言目前国内外市场上已有很多类型的知识竞赛抢答器,其大致采用模拟电路、数字电路、单片机或者PLC芯片、计算机控制系统等四类产品。
对于采用模拟电路或者数字电路的产品,其技术相当成熟。
但是随着功能的增多,电路也越复杂,并且成本偏高,故障率高,显示方式简单或者没有,无法准确判断抢按按钮的行为,也不便于参数调节及其功能的升级换代。
对于计算机控制系统来说,其程序简单,反应灵敏,便于参数调节及其功能的升级换代,但鉴于其必须配合计算机实用,可操作性差,没有得到广泛的应用。
而对于科技飞速发展的今天,PLC、单片机应用的不断深入,带动了传统控制检测技术的不断更新,并鉴于其本身具有的优点,以PLC、单片机为核心的部件成为主流。
传统的普通抢答器主要存在一下缺点:⑴在一次抢答过程中,当出现超前违规抢答时,只能处理违规抢答信号,而对没有违规的有效信号不能进行处理,因而使该次抢答过程变为无效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的三路抢答器的设计1课程设计的任务与要求1.1 课程设计的任务(1)设计一个可供3人进行的抢答器。
(2)系统设置复位按钮,按动后,重新开始抢答。
(3)抢答器开始时数码管显示序号00,选手抢答实行优先显示,优先抢答选手的编号一直保持到主持人将系统清除为止。
抢答后显示优先抢答者序号,同时发出音响,并且不出现其他抢答者的序号。
(4)抢答器具有定时抢答功能,且一次抢答的时间有主持人设定,本抢答器的时间设定为30秒,当主持人启动“开始”开关后,定时器开始减计时。
(5)设定的抢答时间内,选手可以抢答,这时定时器停止工作,显示器上显示选手的号码和抢答时间。
并保持到主持人按复位键。
1.2 课程设计的要求(1)基于单片机的三路抢答器的设计,并用Proteus设计与仿真出来。
(2)程序用Keil编程出来,并且生成Hex文件。
(3)设计的方案要能够长期,有效,稳定的运行。
(4)力求简单实用。
1.3 课程设计的研究基础本设计是以三路抢答为基本理念。
考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。
用开关做键盘输出,扬声器发生提示。
同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答时间和回答问题时间倒记时显示,满时后系统计时手动复位。
2 基于单片机三路抢答器系统方案制定2.1 方案提出方案一:图1 方案一设计方案方案二:图2 方案二设计方案2.2 方案比较第一个方案比第二个方案多了一个驱动电路,所以第一个方案的电路会比较复杂。
2.3 方案论证该系统采用51系列单片机AT89C52作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。
由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。
整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。
2.4 方案选择通过以上两个方案的比较,选择第二个方案。
3 基于单片机三路抢答器系统方案设计3.1各单元模块功能介绍及电路设计3.1.1振荡电路的设计AT89C52内部有一个用于构成片内振荡器的高增益反相放大器, 振荡器产生的信号送到CPU, 作为CPU的时钟信号,驱动CPU产生执行指令功能的机器周期。
引脚XTAL1和XTAL2是此放大器的输人端和输出端。
这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器, 振荡电路的连接如图所示图3所示,外接石英晶体或陶瓷谐振器以及电容C1和C2构成并联谐振电路, 接在放大器的反馈回路中。
图3 振荡电路3.1.2 复位电路的设计单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态, 并从这个状态开始工作。
无论是在单片机刚开始接上电源时, 还是断电后或者发生故障后都要复位。
89系列单片机的复位信号是从RST引脚输人到芯片的施密特触发器中的。
当系统处于正常工作状态时, 且振荡器稳定后, 如果RST引脚有一个高电平并维持2个机器周期(24个振荡周期), 则CPU就可响应并且将系统复位。
复位分为手动复位和上电复位。
本设计系统采用的是手动复位, 当按下按钮时, 即使人的动作很快, 也会使按钮保持通达数十毫秒,所以, 手动复位能确保复位时间要求。
复位电路连接如图4。
图4 复位电路3.1.3 计时和组号显示的设计计时部分由一个共阴极四位八段数码管前二位构成。
时间显示是由一个共阴极四位八段数码管前二位构成,组号显示是由一个共阴极四位八段数码管后二位构成,通过P0口直接对其控制。
电路图如下:图5 显示电路3.1.4 选手按键的设计三位选手通过按键产生的电平下降沿信息送至P2.0~P2.2口,然后再经由主控制模块处理锁存,最后在数码管上显示最早按下的选手号。
电路图如下:图6 选手按键3.1.5 主持人控制电路的设计主持人控制部分由一个开始键组成。
开始按键通过外部中断送信息给控制模块,电路图如下:图7 主持人控制电路3.1.6蜂鸣器电路设计P3.4口控制的蜂鸣器主要是提醒选手答题时间到。
电路图如下:图8 蜂鸣器电路3.2电路参数的计算及元器件的选择电容C1,C2都是30uF,C3是100n。
电阻R1,R2都是10K.3.3 特殊器件的介绍7段LED数码管是利用7个LED(发光二极管)外加一个小数点的LED组合而成的显示设备,可以显示0~9等10个数字和小数点,使用非常广泛。
数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com,而每个LED 的阴极分别为a、b、c、d、e、f、g及h(小数点);共阴极则是把所有LED的阴极连接到共同接点com,而每个LED的阳极分别为a、b、c、d、e、f、g及h(小数点)。
图9 数码管原理图我用的是共阴极。
3.4 系统整体电路图图10 总电路图4 基于单片机三路抢答器系统仿真和调试4.1 仿真软件介绍Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。
Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。
通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。
4.2 系统仿真实现根据设计的方案,在Proteus中画出相应的原理图,在Keil中把所需程序生成HEX 文件,导入到原理图中的单片机中,就可以实现仿真了。
步骤如下:(1)Keil创建文件步骤:1)新建项目文件。
点击Project菜单,选择弹出的下拉式菜单中的New Project。
在“文件名”中输入您的第一个C程序项目名称,“*****.uv2”。
“保存”后的文件扩展名为uv2,这是KEIL uVision2项目文件扩展名,以后可以直接点击此文件以打开先前做的项目。
2)选择所要的单片机,常用Ateml公司的AT89C51。
3)在项目中创建新的程序文件。
点击新建文件的快捷按钮,出现一个新的文字编辑窗口,这个操作也可以通过菜单File-New或快捷键Ctrl+N来实现。
好了,现在可以编写程序了。
4)点击保存新建的程序,*****.c,保存在项目所在的目录中,这时会发现程序单词有了不同的颜色,说明KEIL的C语法检查生效了。
5)将程序文件加到项目中。
在屏幕左边的Source Group1 文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。
选“Add File to Group ‘Source Group 1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件加到项目中。
这时在Source Group1文件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。
6)设定创建HEX文件选项。
7)编译运行。
8)查错并直至无错误。
(2)Proteus仿真步骤:1)创建文件并命名“****.dsn”。
2)放置元件,设定好参数,并连接电路图。
3)双击单片机芯片,添加“****.hex”文件。
4)仿真运行。
5)检查错误直至达到项目要求。
4.3 系统测试没有按开始键时:图11 开始显示按开始键没有人抢答时:图12 没人抢答显示按开始键有人抢答时:图13 有人抢答显示30秒内一直没有人抢答时:图14 30秒后没人抢答按复位键时:图15 按复位键4.4 数据分析主持人按键来控制总开关,主持人按下开关那么选手开始抢答,此时数码管开始30—0计数,并且选手们必须在规定的时间内进行抢答,若过了30秒还没抢答那么抢答失效,选手们若有一个在规定的时间内抢答成功则其余的选手不可以再抢答,即该选手抢答成功。
最小系统的电路不工作,首先应该确认电源电压是否正常。
用电压表测量接地引脚跟电源引脚之间的电压,看是否符合电源电压,常用的是5V左右。
接下来就是检测复位引脚的电压是否正常,EA引脚的电压要正常为5V左右。
5 总结5.1 设计小结通过此次的课程设计,让我更进一步的巩固了单片机的各种知识。
但在设计的过程中,遇到了很多的问题,有一些知识已经不太清楚了,但是通过一些资料又重新的翻阅并且认真的复习了相关教科书中的内容。
此次的课程设计树立了对自己工作能力的信心,相信会对今后的学习工作生活都有非常重要的影响,而且大大的提高了动手能力,使我充分的体会到了创造过程中的探索的艰难和成功的喜悦。
虽然这次做出的作品还存在很多需要改进的地方,但是在整个设计过程中所学习到的东西是这次实训所得到的最大收获跟财富,使我终身受益。
5.2 收获体会经过近两个月的努力,在老师和同学的讨论和帮助下,我成功地完成了三路抢答器的设计,通过此次课程设计,我重新认识到了对书本上的知识要独立运用的道理。
在抢答器设计过程中,发现了很多细节性的问题,也出现了很多错误,经过和同学们研究、商讨最后都解决,感觉团队协作能力是非常有必要的!通过此次的抢答器的设计,让我重新拾起了以前所学习的电子知识和C语言的编程,也使我加深了对单片机及接口技术的理解和应用,由于知识水平的局限,设中可能会存在着一些不足,我真诚的接受老师和同学的批评和指正。
5.3 展望本设计可以对抢答器扩展的功能有:(1)可以将该抢答器扩展抢答定时功能,添加定时中断可以比较精确的设置延时。
(2)可以对该抢答器扩展多个选手抢答,这样可以对抢答器不受3位的限制。
(3)可以对该对抢答器加上其他功能,如停止键,加时间,减时间键。
6参考文献[1] 郭天祥主编. 新概念51单片机C语言教程:入门、提高、开发、拓展全攻略. 北京:电子工业出版社,2008:108-120.[2]侯玉宝等主编.基于Proteus的51系列单片机设计与仿真.北京:电子工业出版社,2008.9.[3]谢维成,杨加国主编.单片机原理与应用及C51程序设计.北京:清华大学出版社,2009.7.7附录1系统流程图图 16图 17图 182器件清单表1 器件清单排阻 1电阻10K 2电容20PF 3晶振12MHZ 1按钮 5 共阴4位8段数码管 1 扬声器 1三极管 1#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intint a,b,c,d;//数码管数字定义uint l,l2,n,m,lsd;sbit s1=P3^5;//控制键定义sbit d1=P2^0;sbit d2=P2^1;sbit d3=P2^2;//抢答键定义sbit w1=P2^4;sbit w2=P2^5;sbit w3=P2^6;sbit w4=P2^7;sbit feng=P3^4;//蜂鸣器uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x76,0x79,0x38,0x3f,0x40,0x00};void display(uchar,uchar,uchar,uchar); void display2(uchar,uchar,uchar,uchar); void delay(uint z){uint t1,y;for(t1=z;t1>0;t1--)for(y=110;y>0;y--);void main(){a=3;b=c=d=0;lsd=0x0f;w1=w2=w3=w4=1;TMOD=0x01;TH0=(65536-10000)/256;TL0=(65536-10000)%256;EA=1;ET0=1;while(1){display(a,b,c,d);if(s1==0){delay(1);if(s1==0){TR0=1;s1=0;if(d1==0){P1=0xfe;m=0;while( ((a!=0)||(b!=0)||(c!=0)||(d!=0))){TR0=0;display2(a,b,20,1);m++;if(m<=300)feng=0;elsefeng=1;}if(d2==0){P1=0xfd;m=0;while( ((a!=0)||(b!=0)||(c!=0)||(d!=0))){TR0=0;display2(a,b,20,2);m++;if(m<=300)feng=0;elsefeng=1;}}if(d3==0){P1=0xfb;m=0;while( ((a!=0)||(b!=0)||(c!=0)||(d!=0))){TR0=0;display2(a,b,20,3);m++;if(m<=300)feng=0;elsefeng=1;}}}}void display(uchar qi,uchar ba,uchar sh,uchar g) {P0=0xff;w1=0;P0=table[qi];delay(1);w1=1;P0=0xff;w2=0;P0=table[ba]|0x80;delay(1);w2=1;P0=0xff;w3=0;P0=table[sh];delay(1);w3=1;P0=0xff;w4=0;P0=table[g];delay(1);w4=1;P0=0xff;}void display2(uchar qi,uchar ba,uchar sh,uchar g) {P0=0xff;w1=0;P0=table[qi];delay(1);w1=1;P0=0xff;w2=0;P0=table[ba];delay(1);w2=1;P0=0xff;w3=0;P0=table[sh];delay(1);w3=1;P0=0xff;w4=0;P0=table[g];delay(1);w4=1;P0=0xff;}void timer0() interrupt 1 { TH0=(65536-10000)/256;TL0=(65536-10000)%256;d--;if(d==-1){P1=lsd;lsd=_crol_(lsd,1);d=9;c--;if(c==-1){.-c=9;b--;if(b==-1){b=9;a--;if(a==-1){a=b=c=d=0;TR0=0;feng=0; }}} } }。