分享
分享赚钱 收藏 举报 版权申诉 / 30

类型八路抢答器硬件部分.doc

  • 上传人:yjrm16270
  • 文档编号:7418445
  • 上传时间:2019-05-17
  • 格式:DOC
  • 页数:30
  • 大小:1.13MB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    八路抢答器硬件部分.doc
    资源描述:

    1、CHANGZHOU INSTITUTE OF TECHNOLOGY科研实践题目:基于单片机的八路智能抢答器设计二级学院(直属学部): 延陵学院 专业: 电气工程及其自动化 班级: 学生姓名: 学号: 指导教师姓名: 范力旻 职称: 副教授 2013 年 12 月 30 日至 2014 年 1 月 10 日目录1.绪论 .31.1 课题研究背景及意义 .31.2 课题研究的内容 .31.3 系统需求分析 .42.系统设计方案论证 52.1 方案设计 52.2 系统需求分析 53.总体设计方案 73.1 单片机的选择 73.2 抢答器方案论证 .84.系统硬件电路设计 94.1 总体设计结构图 .

    2、94.2 最小系统电路设计 .94.2.1 时钟频率电路图 .94.3 输入电路设计 .104.3.1 按键电路的设计 .104.4 输出电路设计 .114.4.1 报警电路设计 114.4.2 数码管显示电路 124.4.3 电源电路设计 13图 4-8 稳压电路系统结图 5.软件设计 145.软件设计 .155.1 主程序结构图 .155.2 主程序流程图 .156 设计方案评价及使用方法 177.实物制作 187.1 电路板焊接 .187.2 电路板调试 .188.总结与致谢 208.1 科研实践总结 .20附录 2111.绪论1.1 课题研究背景及意义1 课题简介抢答器是一种广泛用于企

    3、业事业单位和商业部门,为各种知识竞赛、文娱活动提供公正客观快速裁决的一种常用的电子设备。随着集成技术和计算机技术的发展,单片机作为一个分支亦于 20 世纪 80 年代以来获得了飞速的发展,各种新品不断涌现,使单片机的应用更加深入,灵活性大大增强。应用单片机的八路抢答器系统具有结构简单、功能强大、可靠性好、实用性强的特点。2 课题设计目的此次设计以 80C52 单片机为核心控制元件,设计一个简易的电子抢答器,与数码管、蜂鸣器、键盘等构成八路抢答器,利用单片机的延时电路、上电复位电路、数码管显示、定时/中断等电路。设计的八路抢答器具有倒计时、实时显示抢答选手的号码、答题计时、分数可调和计分可查的特

    4、点。 1.2 课题研究的内容本系统采用模块化设计智能抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。1 抢答功能通过八路按键配合程序来实现抢答功能。当主持人按下抢答开始键后,此时任一路按下抢答按钮均闭锁其他各路按钮,由程序对键盘译码并显示最先按下抢答键的路数及其当前倒计时。2 抢答限时主持人按下抢答键后,设置 5s 为抢答时间(此时间可调)。若 5s 内无人抢答,倒计时为零时发出报警,说明该抢答题目作废。此时封闭所有抢答按键,只有主持人再次按下抢答按键开始下一次抢答方可开始抢答。3 答题限时2当主持人按下答题按钮后,开始计时,若答题时间过长,倒计时为零时报警,说明答题时间到。4 计分功能

    5、当按下加减分键后可实现加减计分,分值可在 1999 之间设置。如果各题分值相同,可在第一次设定分值后直接按加减键来实现计分。5 查询功能当按下查询键后,可查询各路的分数。按下分组数可直接显示当前台数及其分值,比如按下 1,显示台数为 1,分值为其当前实际分值。通过研究并在设计验证后发现,此方法简单可靠,抗干扰能力强。所以本研究是一个实用的工程设计,具有创新性。1.3 系统需求分析1、在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。2、抢答限定时间和回答问题的时间可以在 199s 设定。3、可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示。4、抢答时间和回答问题时间倒记时显

    6、示,时间完后系统自动复位。5、抢答限定时间内使用道具回答时间将加 15s,但只能使用两次。6、按键锁定,在有效状态下,按键无效非法。32.系统设计方案论证2.1 方案设计本系统是借用单片机采用模块化设计的八路抢答器,包括 8 路抢答按纽、计时显示、提示功能等、开始与结束控制按钮、时限设定、各种相关显示调控功能等。参赛者系统,除享有抢答按纽的权利功能外,还有人性化的提示功能和时间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;主控系统的控制按钮做开始与结束控制,根据活动参赛者的层次,对提前抢答者的行为设定为非法或阻隔,若设有非法抢答控制功能时,在主控处带有公示性显示的非法抡答者的台位

    7、号,对抢答限时及回答问题限时设为倒计时,并有显示提示。本系统采用模块化设计的八路抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。一共有 8 个按键输入,分别对应 8 路选手的抢答按键。2.2 系统需求分析1、在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。2、抢答限定时间和回答问题的时间可以在 199s 设定。3、可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示。4、抢答时间和回答问题时间倒记时显示,时间完后系统自动复位。5、抢答限定时间内使用道具回答时间将加 15s,但只能使用两次。6、按键锁定,在有效状态下,按键无效非法。工作过程描述:1、如果想调节抢答时间或答

    8、题时间,按“SNATCH”键或“ANSWER”键进入调节状态,此时会显示现在设定的抢答时间或者回答时间的初始值,如想加一秒按一下“PUSH_1S“键,如果想减一秒按一下“REDUCE_1S”键,时间 LED 上会显示改变后的时间,调整范围为 099s,0s 时再减 1s 会跳到 99,99s 时再加 1s 会变到 0s。2、主持人按“抢答开始“键,会有提示音,并立刻进入抢答倒计时(预设 20s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时4(预设 30s 抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于 5s 会每秒响一下提示音。3、如倒计时

    9、期间,主持人想停止倒计时可以随时按“停止”按键,系统会自动进入准备状态,等待主持人按“抢答开始”进入下次抢答计时。4、如果主持人未按“抢答开始”键,而有人按了抢答按键,犯规抢答,LED上不断闪烁 FF 和犯规号数并响个不停,直到按下“停止” 键为止。总而言之,本课题利用AT89C52单片机及外围接口实现的抢答系统设计了抢答器,该抢答器增加了新功能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。53.总体设计方案3.1 单片机的选择ATMEL 公司的89C52单片机,是增强型 RISC 内载 Flash 的单片机,芯片上的 Flash存储器附在用户的产品中,可随时编程,再

    10、编程,使用户的产品设计容易,更新换代方便。89C52单片机采用增强的 RISC 结构,使其具有高速处理能力,在一个时钟周期内可执行复杂的指令,每 MHz 可实现1MIPS 的处理能力。89C52单片机工作电压为2.76.0V,可以实现耗电最优化。AT89S52 具有以下主要性能:1.8KB 可改编程序 FLASH 存储器;2.全表态工作 :024HZ;3.256X8 字节内部 RAM;4.32 个外部双向输入,输出(I、O)口;如图 3.1图 3-1 单片机芯片管脚图63.2 抢答器方案论证抢答器同时供 8 名选手或 8 个代表队比赛,分别用 8 个按钮 SW1-SW8 表示。设置一个抢答控制

    11、开关 START,该开关由主持人控制。同时抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在 LED 数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统重置为止。抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如 30 秒)。当主持人启动“开始“键后,定时器进行减计时,当进入 5S 倒计时时扬声器发出短暂的声响,声响持续的时间 0.4 秒左右。参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统重置为止。如果定时时间已到,无人抢答,本次抢答无效,定时显示器上显示

    12、 FF00。我们利用单片机可以用很少元件实现相同功能,而且单片机性能稳定,可操作性强。可以只用 P0 口连接上拉电阻,完成驱动 LED 的功能,串接按键可以由选手自己控制抢答机会,利用 TXD 接移位脉冲做时钟信号。利用单片机程序判断选手按键是否有效,选手违规抢答,利用简单程序显示选手序号,启动蜂鸣器并不间断,告诉主持人有人违规操作,抢答无效。给出相应的延时,选手按正常的操作抢答,软件倒记时,利用 74HC573 锁存 8 段数码管,实现倒记时显示时间,到 5 秒相应时间提醒选手时间快到了,要及时作答,并启动蜂鸣器。如果有选手在规定的时间以前完成问题,主持人通过按键重置,开始新的问题作答,因为

    13、程序不是很大不需要扩展存储空间,选手按键跳入相应的子程序,回答倒记时,通过单片机实现功能可以更人性化,只需单电源供电更方便,容易实现。电路结构简单,外围扩展的电路不是很多,锻炼我们所学的知识应用到现实生活当中,所以我们选用单片机加一定的外围设备实现本次课程设计的要求。74.系统硬件电路设计4.1 总体设计结构图数字抢答器的总体设计结构见图 4-1:图 4-1 数字抢答器总体结构图4.2 最小系统电路设计4.2.1 时钟频率电路图AT89S52 的时钟可以由两种方式产生,一种是内部方式,利用芯片内部的振荡电路;另外一种为外部方式,本论文根据实际需要和简便,采用内部振荡方式,MCS-51 内部有一

    14、个用于构成振荡器的高增益反相放大器,引脚 XTAL1 和 XTAL2 分别是此放大器的输入端和输出端,这个放大器与作为反馈元件的片外晶体或陶瓷谐振器一起构成了一个自激振荡器。AT89S52 虽然有内部振荡电路,但要形成时钟,必须外接元件,所以实际构成的振荡时钟电路,外接晶振以及电容 C1 和 C2 构成了并联谐振电路接在放大器的反8馈回路中,对接电容的值虽然没有严格的要求,但电容的大小会影响振荡频率的高低,振荡器的稳定性,起振的快速性和温度的稳定性。晶振的频率可在1.2MHZ12MHZ 之间任选,电容 C1 和 C2 的典型值在 20pf100pf 之间选择,由于本系统用到定时器,为了方便计算

    15、,采用了 12MHZ 的晶振,采用电容选择 30pf。时钟频率电路见图 4-24.2.2 复位电路图设计单片机的第 9 脚 RST 为硬件复位端,只要将该端持续 4 个机器周期即 4us 的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,复位按钮按下后即可输入高电平。复位时间计算:当取 100us 时 为高电平,所VeVcVt ufksRCt 9.4*510以可以达到复位作用。图 4-3 复位电路图4.3 输入电路设计4.3.1 按键电路的设计在单片机应用中键盘用得最多的形式是独立键盘及矩阵键盘。本实验用的是独立式键盘,图中 SW1-SW8 分别表示选手 1 到 8 号。K10、K

    16、11、K12 分别表示开始按钮、加 1 按钮、减 1 按钮。9键盘扫描电路图见图 4-4:图 4-4 抢答器独立键盘图4.4 输出电路设计4.4.1 报警电路设计声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音,蜂鸣器选择的型号为:GPC1407YB,参数为:电压:325Vp-p,灵敏度:min 75 dB 这个蜂鸣器的工作电压可以在 5V 电源下工作,且 P3 口不需要上拉电阻。三极管

    17、 8550 基极电流大约是(5-0.7)/10000=0.43mA,因为喇叭的电流是 37mA,所以,功率放大倍数K=Ic/Ib=37/0.43=86.04,所以大约放大 86 倍。图 4-6 蜂鸣器发声电路结构图104.4.2 数码管显示电路LED 显示器,实现七段数码管的显示四位十六进制数。来进行倒计时,即来限制抢答的时间,其中前两位显示选手号,后两位显示时间。 其中数码管的显示可以分为两种:静态显示和动态显示。静态显示的段选位和位选位均单独连接,因此占用的 I/O 接口多,无法扩展多个数码管,在这种采用这种方式,必须要给 LED 恒定的电压,要求电压一直保持,所以一般在 LED 和单片机

    18、之间加锁存器,这种显示方式亮度高,编程较简单,结构清晰,管理也较简单,占用的 CPU 时间少。动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共端 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的

    19、COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。从电路上,按数码管的接法不同又分为共阴和共阳两种。本次设计采用共阴型,型号为 GN-5461AH。选上拉电阻时:500uA x 8.4K= 4.2 即选大于 8.4K 时输出端能下拉至 0.8V 以下,此为最小阻值,再小就拉不下来了。为了方便选取 10K 电阻。11

    20、图 4-6 数码管显示电路结构图:4.4.3 电源电路设计如图 4-7 所示图 4-7 电源电路结构图三端稳压管又称集成稳压器,它是将取样电路、基准电压、比较放大电路、保护电路及调整管等制作在一个芯片上,封装后作为一个元件来使用。主要有两种,一种输出电压是固定的,称为固定输出三端稳压管,另一种输出电压是可调的,称为可调输出三端稳压管,其基本原理相同,均采用串联型稳压电路。本设计稳压电路采用了 7805 三端稳压集成电路,顾名思义,三端 IC 是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通三极管。输入端输入 9v 电流的经 7805 稳压管后输出端输出

    21、 5v 电流,系统图如图 4-8 所示12图 4-8 稳压电路系统结图135.软件设计5.1 主程序结构图系统初始化模块按键模块非法抢答模块正确抢答模块调整抢答时间调整回答时间模块数码显示模块图 5-1 软件系统结构图5.2 主程序流程图流程图是使用图形表示算法的思路是一种极好的方法,不论采用何种程序设计方法,程序总体结构确定后,一般以程序流程图的形式对其进行描述。总体框图中的各个子模块或各个子任务也应该结合具体的教学模型和算法画出较详细的程序流程图,供后面编写具体程序和阅读程序使用。 流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操

    22、作的先后次序。流程图的基本结构为顺序结构,分支结构(又称选择结构),循环结构。14主程序流程如图 5-2 所示:显示 FFFF开始键加一键减一键回答时间 调整抢答时间是否提前非法抢答处理显示犯规正常抢答 显示抢答号并倒计时Y YY 初始化图 5-2 主程序流程图结束156 设计方案评价及使用方法6.1 优点具有结构简单、可靠性好等特点。体积小、功能强可靠性高、价格低廉等一系列优点升级容易,响应迅速,判别精确。AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。带 4 位 LED 显示屏,以数字形式显示抢答的组别号、计分方便,抢答成功带有声

    23、音提示。而且在以后容易扩展,满足不同情况的需要,使用灵活,设计完全符合满足要求。6.2 缺点此类抢答器存在长距离信号衰减严重 而导致不能准确判断选手号码的缺点,电路复杂。因为简单逻辑电路只完成号码处理、计时、数据运算等功能,其它功能如选手号码的识别、译码、计分显示等仍只能通过数字集成电路完成。采用简单逻辑电路扫描技术识别选手抢按号码时,电路的延迟时间较大。最后,容易出现选手抢按成功现象6.3 正确的使用方法及调试硬件调试过程接完毕后,在接通电源前,先用万用表仔细检查各管脚间是否有短路,虚焊、漏焊现象。检查无误后,先不要把各个集成块插入芯片插座中,然后接通电源,用手触摸桥碓,看看是否发热,或者用

    24、万用表测试其两端的电压是否在 10V 左右。如果发热或者电压为零则说明电路中有短路的现象,要立刻切断电源,再做仔细的检查,改正后再进行同样的测试,直到正常为止。再测试各个芯片的电压是否正常,正常的话可以把各个集成块芯片插入芯片插座中。以上检查无误后,再进行调试。首先按下复位键,用万用表测试CD4013 的第六引脚是否有高电平输出,有的话说明电路连接正确;再测试第一脚是否是低电平,不是的话说明电路连接有问题,要切断电源检查。如果没有的就再按下抢答按钮 S1,用万用表测试第一脚是不是有高电平,数码管的显示数字是否为“1”。不是的话再仔细地检查电路中的连接。是的话就依次按下16S2、S3、S4,观察

    25、数码管的显示是否有变化,没有变化说明电路中的反相器CD4069 起到了闭锁的作用。再看看蜂鸣器是否响。再按下 S2,进行与 S1 相同的操作。同理按下 S3、S4 进行检查。7.实物制作7.1 电路板焊接一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的正常运行。造成焊接质量不高的常见原因是:焊锡用量过多,形成焊点的锡堆积;焊锡过少,不足以包裹焊点。冷焊。焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊锡表面不光亮(不光滑),有细小裂纹(如同豆腐渣一样!)。夹松香焊接,焊锡与元器件或印刷板之间夹杂着一层松香,造成电连接不良。若夹杂加热不足的松香,则焊点下有一

    26、层黄褐色松香膜;若加热温度太高,则焊点下有一层碳化松香的黑色膜。对于有加热不足的松香膜的情况,可以用烙铁进行补焊。对形成的黑膜,要“吃“净焊锡,清洁被焊元器件或印刷板表面,重新进行焊接才行。焊锡连桥。指焊锡量过多,造成元器件的焊点之间短路。这在对超小元器件及细小印刷电路板进行焊接时要尤为注意。焊剂过量,焊点明围松香残渣很多。当少量松香残留时,可以用电烙铁再轻轻加热一下,让松香挥发掉,也可以用蘸有无水酒精的棉球,擦去多余的松香或焊剂。焊点表面的焊锡形成尖锐的突尖。这多是由于加热温度不足或焊剂过少,以及烙铁离开焊点时角度不当浩成的内。7.2 电路板调试最小系统的电路不工作,首先应该确认电源电压是否

    27、正常。用电压表测量接地引脚跟电源引脚之间的电压,看是否符合电源电压,常用的是 5V 左右。接下来就是检测复位引脚的电压是否正常,EA 引脚的电压要正常为 5V 左右。如果补焊电源后最小系统还是不能工作,有可能是 AT89C52 单片机坏掉了,重新选择一个 AT89C52 单片机焊接。如果是工作但是不能按需要的功能执行,也可用17更换 AT89C52 单片机方法调试,但在此之前可以选择检查对应的模块是否有焊接问题,若没有再进行更换。188.总结与致谢8.1 科研实践总结经过近两周的的努力,在老师和同学的商讨和帮助下,我较好的完成了设计任务,通过此次课程设计,我重新认识到了自学的重要性,以及学以致

    28、用的道理。我在图书馆查阅了大量的资料,同时也认识到了图书馆的重要作用。通过此次的抢答器的设计,让我重新拾起了以前所学习的电子知识,及我觉得此次设计让我更加巩固了所学的知识并在设计的过程中学会了与时俱进,克服了编程的枯燥感,让我受益匪浅。在学习单片机这门课程的时候,我们应该好好你的记笔记,课下好好的做练习题才能把 C 程序设计灵活的运用到单片机程序的设计上,在单片机这门课程的学习上,我们还应该知道一种常用的仿真软件 proteus 软件,可以让你我们更为清晰的掌握 AT89C52 单片机的实际应用上的设计。在今后的学习过程中,应该多到图书馆看一些专业方面的书籍,以丰富自己的知识。也使我加深了对单

    29、片机及接口技术的理解和应用,由于知识水平的局限,设计中可能会存在着一些不足,我真诚的接受老师和同学的批评和指正。19附录1.参考文献1 高伟.单片机原理及应用M.北京:国防工业出版社,2008 年.2 李增生.对抢答器的改进J.电子制作,2008 年.3 蔡朝阳.单片机控制实习与专题制作M.北京:北航出版社,2006 年. 4 范力旻.单片机原理及应用技术.电子工业出版社.5 胡文金 杨健.单片机应用技术实训教程.重庆大学出版社. 6 杨加国.单片机原理与应用及 C51 程序设计.清华大学出版社,2006 年.7 胡汉才.单片机原理与接口技术M.北京:清华大学出版社,1998 年.8 郭培源.

    30、电子电路及电子器件.高等教育出版社,2003 年.9 张齐 朱宁西.单片机应用系统设计实验(C51).电子工业出版社,2013 年.2.原理图3.元器件清单序号 文字标号 名称 数量 规格型号 备注1 R1-R9 电阻器 9 1K2 R10 电阻器 1 2003 R11-R18 电阻器 8 1004 C1、C2 电容 2 30pf 无极性5 C3 电容 1 10uf 有极性6 U1 单片机 1 AT89C527 U2 锁存器 1 74HC573 74HC373207 LED 显示器 1 GN-5461AH8 D1-D8 二极管 8 LED-RED9 SW1-SW8 按钮 8 TD-03B10

    31、START 等 按钮 8 TD-03B11 LS1 蜂鸣器 1 GPC1407YB12 X1 晶振 1 UM-513 VCC 电源 1 5V14 Key1 开关 1 控制电源15 Q1-Q3 三极管 3 3DG124.电路成品图5.程序清单/* 名称:八路智能抢答器说明:通过 AT89C52 实现抢答器的功能21*/#include#include#define uchar unsigned char#define uint unsigned int/*变量定义*/sbit sw1=P10;sbit sw2=P11;sbit sw3=P12;sbit sw4=P13;sbit sw5=P14;

    32、sbit sw6=P15;sbit sw7=P16;sbit sw8=P17;sbit start_button=P30;sbit props_button=P31;sbit snatch_button=P32;sbit answer_button=P33;sbit push_button=P34;sbit reduce_button=P35;sbit stop_button=P36;sbit BEEP=P37;uint flag=0;uint snatch_flag=1;uint answer_flag=0;uint a,b,c,d,x;uchar state=0x3f,0x06,0x5b,

    33、0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x71,0x76,0x00,0x79,0x54,0x5e; /*数据依次表示数字 0-9 和字母 F、H,以及 End。*/*函数声明*/void initUart(); /初始化函数void time(uint ucMs); /延时函数void Play(); /蜂鸣器发声函数void Start(); /开始函数void Stop(); /终止函数void Props(); /道具函数void Snatch(); /抢答置数函数void Answer(); /回答置数函数void Push(); /时间加 1S 函数v

    34、oid Reduce(); /时间减 1S 函数void DisPlay(); /显示器显示函数void Keyscan(); /选手按钮扫描函数/*主函数*/22void main()x=30;initUart();while(1)if(!flag)Keyscan();if(a!=10a!=12;)Play();if(!start_buttonStart();if(!snatch_button)flag=0;Snatch();if(!answer_button)flag=1;Answer();if(!push_button)Push();if(!reduce_button)Reduce();

    35、DisPlay();/*初始化程序*/void initUart()23a=10,b=10,c=10,d=10;BEEP=0;P2=0xee;P0=state10;time(1);P2=0xed;P0=state10;time(1);P2=0xeb;P0=state10;time(1);P2=0xe7;P0=state10;time(1);/*延时程序*/*delay_5us*/void delay_5us(void) /延时 5us_nop_();_nop_(); /*delay_50us*/void delay_50us(void) /延时 50usunsigned char i;for(

    36、i=0;i0)24for(j=0;j10;j+)delay_100us();ucMs-;/*蜂鸣器发声程序*/void Play()uchar i;for(i=1;i100;i+)BEEP=BEEP;DisPlay();if(!stop_button)Stop();if(!props_buttonelse if(snatch_flag=1for(i=1;i150;i+)DisPlay();if(!stop_button)Stop();if(!props_buttonelse if(snatch_flag=1BEEP=0;/*抢答开始程序*/25void Start()uint i,j,y=x;

    37、for(i=0;i=yi+)c=x/10;d=x%10;x-;if(x5)Play();elsefor(j=1;j250j+)DisPlay();if(!stop_button)Stop();if(!props_buttonelse if(snatch_flag=1/*终止程序*/void Stop()a=12;b=13;c=14;d=15;flag=1;/*道具使用程序(回答时可以重置倒计时时间)*/void Props()x=x+16;c=x/10;26d=x%10;while(!props_button)DisPlay();/*抢答置数程序*/void Snatch()x=30;a=10

    38、;b=10;c=3;d=0;snatch_flag=1;answer_flag=0;/*回答置数程序*/void Answer()x=60;a=10;b=10;c=6;d=0;snatch_flag=0;answer_flag=1;/*时间加 1S 程序*/void Push()uint y;x+;y=x;c=y/10;d=y%10;if(x=99)x=0;while(!push_button)DisPlay(); 27/*时间减 1S 程序*/void Reduce()x=x-1;time(1);c=x/10;d=x%10;if(x=-1)x=99;while(!reduce_button)

    39、DisPlay();/*按键扫描程序*/void Keyscan()if(sw1=0)a=1;b=11;if(sw2=0)a=2;b=11;if(sw3=0)a=3;b=11;if(sw4=0)a=4;b=11;if(sw5=0)a=5;b=11;28if(sw6=0)a=6;b=11;if(sw7=0)a=7;b=11;if(sw8=0)a=8;b=11;/*显示器显示程序*/void DisPlay()P2=0xee;P0=statea;time(1);P2=0xed;P0=stateb;time(1);P2=0xeb;P0=statec;time(1);P2=0xe7;P0=stated;time(1);

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:八路抢答器硬件部分.doc
    链接地址:https://www.docduoduo.com/p-7418445.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开