智能八路抢答器设计

合集下载

八路智能抢答器设计

八路智能抢答器设计

八路智能抢答器设计
一、概述
八路智能抢答器是一种在教室课堂上提出问题,学生用设置在课桌上
的发射器发出抢答信号,接收端实时识别收到的信号,并将收到的抢答信
号自动分配给对应的台数,从而实现抢答活动的目的,让学生更容易抢答,提高课堂参与度。

二、结构
发射器的功能:当学生按下按钮发送抢答信号时,发射器发出抢答信号,并将发送的数据编码,从而保证抢答信号不会被其他发射器的信号干扰。

接收端的功能:接收端接收来自各台发射器的抢答信号,识别信号,
并将收到的抢答信号分配给对应的台数,然后由接收端输出给抢答指示灯。

抢答指示灯的功能:抢答指示灯接收来自接收端的信号,控制灯的开关,来指示哪一台学生发出了抢答信号。

三、电路
发射器:发射器主要由发射管、指示灯、MCU(微控制器)、发射器模
块等组成,其中MCU负责编码抢答信号,发射模块负责将抢答信号发射出去。

[VIP专享]经典八路智能抢答器毕业设计资料

[VIP专享]经典八路智能抢答器毕业设计资料

4、只有主持人按下复位键,下一轮抢答才能开始进行。

1.4 抢答器的工作流程抢答器的基本工作原理:在上电之后,系统开始运行,在抢答过程中,会有多个信号同时或不同时送入主电路中,抢答器内部电路和CD4511集成芯片会开始工作,并识别、记录第一个号码。

在整个抢答器工作过程中,编码电路、优先\锁存\译码电路、显示电路、报警电路都会运行。

抢答器的工作流程分为正常抢答流程、主持人复位等几部分,如图2-2所示。

图2-2 抢答器的工作流程1.5 抢答器的工作过程1、开始上电之后,主持人按复位键,抢答开始。

如有选手按下抢答键,报警电路会发出讯响声,并且数码显示电路上会显示成功抢答的选手的编号。

2、当有选手抢答成功之后,系统就进行了优先锁存,其他抢答选手抢答无效。

3、如果主持人未按下复位键,而有人按了抢答按键,此次抢答无效,只有当主持人按下了复位键,选手才能进行顺利抢答。

抢答器的单元电路设计八路智能抢答器主要由数字编码电路、译码\优先\锁存驱动电路、数码显示电路和报警电路组成。

现简单介绍八路智能抢答器设计中的各单元电路的设计的情况。

.1抢答器设计中的数字编码电路参考电路如图3-1所示,S1—S8组成1—8路抢答器,D1—D12组成数字编码器。

该电路完成的功能是:通过编码二极管编成BCD码,将高电平加到CD4511所对应的输入端。

从CD4511的引脚可以看出,引脚6,2,1,7分别为BCD码的D、C、B、A 位(D这高位,A为低位,即D、C、B、A分别代表BCD码8、4、2、1位)。

工作过程:当电路上电,主持人按下复位键,选手就可以开始抢答。

当选手1按下S1抢答键,高电平通过编码二极管D1加到CD4511集成芯片的7脚(A位),7脚为高电平,1、2、6脚保持低电平,此时CD4511输入BCD码为“0001”;当选手2按下S2抢答键,高电平通过编码二极管D2加到CD4511集成芯片的1脚(B位),1脚为高电平,2、6、7脚保持低电平,此时CD4511输入BCD码为“0010”;当选手3按下S3抢答键,高电平通过编码二极管D3、D4加到CD4511集成芯片的1、7脚(B、A位),1、7脚为高电平,2、6脚保持低电平,此时CD4511输入BCD码为“0011”;当选手4按下S4抢答键,高电平通过编码二极管D5加到CD4511集成芯片的2脚(C位),2脚为高电平,1、6、7脚保持低电平,此时CD4511输入BCD码为“0100”;当选手5按下S5抢答键,高电平通过编码二极管D6、D7加到CD4511集成芯片的2、7脚(C、A位),2、7脚为高电平,1、6脚保持低电平,此时CD4511输入BCD码为“0101”;当选手6按下S6抢答键,高电平通过编码二极管D8、D9加到CD4511集成芯片的1、2脚(B、C位),1、2脚为高电平,6、7脚保持低电平,此时CD4511输入BCD码为“0110”;当选手7按下S7抢答键,高电平通过编码二极管D10、D11、D12加到CD4511集成芯片的1、2、7脚(B、C、A位),1、2、7脚为高电平,6脚保持低电平,此时CD4511输入BCD码为“0111”;当选手8按下S8抢答键,高电平加到CD4511集成芯片的6脚(D位),6脚为高电平,1、2、7脚保持低电平,此时CD4511输入BCD码为“1000”。

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)

八路抢答器的方案设计书报告(1)方案名称:八路抢答器方案设计书报告1. 项目背景:八路抢答器是一种用于教育培训和游戏娱乐等场景中的互动装备,旨在增加参与者之间的竞争性和互动性。

该抢答器适用于小组竞赛、知识问答和快速反应等活动,能够提供准确的抢答结果和实时的排名反馈。

2. 项目目标:- 提供一个可靠、准确的抢答系统,确保抢答结果的准确性;- 设计一个易操作、方便使用的抢答器,满足各类用户的需求;- 实现实时展示参与者的排名、成绩和抢答结果,增强竞争性和互动性;- 提供灵活的配置参数,适应不同场景和活动的需求。

3. 方案设计:- 硬件设计:- 抢答器主机:设计一个抗干扰的主机设备,包含显示屏幕、按钮等交互元素,用于显示题目、记录抢答结果和展示排名。

- 抢答器手柄:设计一组手柄设备,每个手柄配有一个按钮,用于参与者进行抢答操作。

- 无线通信模块:通过无线通信技术实现主机和手柄之间的数据传输,确保实时性和可靠性。

- 软件设计:- 控制程序:设计主机端控制程序,用于接收手柄的抢答信号、判断抢答正确与否,并实时更新参与者的得分和排名。

- 数据显示程序:设计主机端数据显示程序,用于展示抢答题目、参与者的得分和排名等信息。

- 管理程序:设计主机端管理程序,用于配置抢答系统的参数,如参与者人数、抢答题库等。

4. 实施计划:- 第一阶段:进行前期调研和需求分析,明确项目目标和功能需求。

设计硬件和软件的初步方案,并进行初步的设计验证。

- 第二阶段:进行详细的硬件和软件设计,包括电路设计、外壳设计、程序编写等。

并进行相应的测试和验证。

- 第三阶段:进行整体集成和调试,确保硬件和软件的协同工作和稳定性。

进行用户测试和反馈收集。

- 第四阶段:根据用户反馈进行改进和优化,完善产品的功能和性能。

准备量产并开始市场推广。

5. 预期效果:- 提供一个实用、可靠的八路抢答器,满足教育培训和游戏娱乐场景的需求;- 增加参与者之间的竞争性和互动性,提升活动的趣味性和吸引力;- 为组织者提供一个便捷、灵活的抢答系统,简化活动的组织和管理工作;- 受益用户包括教育机构、培训机构、游戏娱乐场所等。

八路智能竞赛抢答器设计课程设计

八路智能竞赛抢答器设计课程设计
Abstract
The device is based mainly on theNumber7 4 series of integrated circuit
chips, which arein the lower cost, and beavailableto some of the schoolactivities.
The core of the Answer circuitis composed of74LS148 and 74LS279 RS encoder latch. 74LS192 increase the use of metric / Answer by counter design's timing of the clock pulse counter circuit to provide. Using 555timer and alarm circuit transistor constitute, timing control circuitisgenerated by the 74LS121. Seven-Segment LED cathode using a total of digital display and serial number Answerregular time, figures from the 74LS48 decoder digital tube display.In this paper, a digital circuit using a number of significant production Answer multi-functional device, which in addition to the Answer with the basic functions, but also has a regular alarm functions, and several significant features, when the start Answer, the system will automatically countdown, and can be pre-set time period if it was Answer system will stop the clock, if no one Answer period, the alarm system will be short-lived, suggesting that the end Answer.

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

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

八路竞赛抢答器设计实验报告#八路竞赛抢答器设计实验报告##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路抢答器设计(含完整图)

数字电路课程设计报告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路抢答器电子设计

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)。

智能八路抢答器设计智能八路抢答器设计1引言1.1设计目的此设计采用AT89C52单片机为核心控制元件,结合数码管、蜂鸣器、发光二极管等器件构成一个简易的八路抢答器。

利用了单片机的按键复位电路、时钟电路、定时中断等电路,设计的抢答器具有实时显示抢答功能。

1.2设计要求(1)设计一个可供8人进行抢答的抢答器。

(2)系统设置复位按钮,按动后,重新开始抢答。

2设计方案及原理2.1设计方案(1)复位电路89C52的复位输入引脚RST为89C52提供了初始化的手段,可以使程序从指定处开始执行,在89C52的时钟电路工作后,只要RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作,如果RST保持高电平,则单片机循环复位。

只有当RST由高电平变低电平以后,89C52才从0000H地址开始执行程序。

本系统采用按键复位方式的复位电路。

(2)时钟电路89C52的时钟可以由两种方式产生,一种是内部方式,利用芯片内部的振荡电路;另外一种为外部方式。

本论文根据实际需要和简便,采用内部振荡方式。

89C52内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

这个放大器与作为反馈元件的片外晶体或陶瓷谐振器一起构成一个自激振荡器。

(3)输入电路抢答器输入信号由八个小按键控制,八个按键连接在P2口当有键按下的时候,就产生了有效的输入信号,使与这个按键相连的引脚变为低电平,产生一个低电平的输入信号。

2.2系统组成框图该系统的组成框图如图1所示,在89C52单片机的P2口接上八个开关用于八路抢答;P3.2口接启动开关,用于主持人控制抢答是否开始;在RST脚接复位开关用于清零;在P1.0口接蜂鸣器用于开始提示和超时后报警;在P0口接三个数码管用于显示倒计时时间和抢答者的编号。

该系统还包括时钟电路部分。

复位时钟RSTXTAL1XTAL2~AT89C52数码管第一路...第八路启动蜂鸣器P0.0P0.7~P2.0P2.7~P3.2P3.7图1 系统组成框图3硬件设计3.1系统总体电路图2 系统总体电路图3.2抢答按键电路抢答按键电路采用八位开关依次接入P2口的8位,并通过编程实现抢答的优先判断,其电路如图4所示。

图4 抢答按键电路3.3数码管显示电路显示电路采用三位共阳数码管,前两位为抢答倒计时,后一位在有选手抢答时,显示抢答成功者编号。

P0口外接上拉电阻驱动数码管,并输出段选码,P1.0~P1.2口作为三位数码管的位选端,通过动态扫描的方式来实现预期功能。

数码管显示电路如图3所示。

图3 数码管显示电路3.4蜂鸣器电路蜂鸣器用以实现开始时提示、有选手抢答时提示以及时间用尽提示,外接在单片机的P3.7口上,其电路如图5所示。

图5 蜂鸣器电路3.5时钟电路通过引脚XTAL1和XTAL2外接晶振和电容构成系统时钟,如图6所示。

图6 时钟电路4软件设计4.1程序总体流程图图7 程序总体流程图4.2分段程序设计(1)延时程序段,即Delay()函数。

该函数用以调整单片机CPU处理指令的延时,实现数码管动态扫描显示、蜂鸣器发声等功能。

(2)数码管显示程序段,分为Display_1()和Display_2()两个函数。

前者用于在还没有选手抢答时显示问题倒计时,后者用于在有选手抢答后,数码管对时间和抢答成功者编号的显示。

(3)蜂鸣器发声程序段,即ring()函数。

用于控制蜂鸣器响一段时间。

(4)程序主函数,即main()。

该程序段用于指示单片机整个程序的入口,并设置好相应的参数、单片机处理的主要任务等。

(5)中断函数interrupt0(),用于触发主程序的执行,即打开定时器、开始倒计时等功能。

(6)定时器运行函数time0(),用于初始化定时器的初值以触发中断,实现准确倒计时的功能。

该函数的执行使定时器每10ms触发一次中断,每触发100次,即计时满1s,将倒计时的数字减一。

在倒计时未结束时,持续扫描键盘按钮,当有选手抢答时,将标志位置1,EA置0,并触发Display_2()的运行。

4.3编程语言编制程序见附录4.4调试结果源程序经过KeilC51软件编译通过,并通过调试工具成功验证软件执行结果,成功生成可以被单片机CPU识别执行的HEX文件。

5系统仿真5.1仿真结果主持人按下Start按钮,倒计时开始,运行效果如图8所示。

图8 倒计时阶段有选手抢答时,倒计时停止,显示选手编号,系统停止响应其他抢答者的按键,直到主持人将系统复位,如图9所示。

图9 抢答成功5.2问题分析(1)软件结构设计略显繁琐,会降低单片机执行效率,尚有待改进。

(2)系统功能仍可进一步扩充,使其更加智能化。

如可以加入最后五秒钟蜂鸣器报警功能、根据问题难易程度由主持人设置问题倒计时等功能。

(3)选手抢答按键判断可以采取矩阵键盘扫描方式,可方便后期扩充更多路数。

6设计总结此方案设计的抢答器具有计时抢答功能,并且灵敏度高,实用性强,造价低廉,功能比较完善。

通过这次抢答器的设计我加深了对单片机各个方面知识的了解,基本掌握了利用单片机设计制作简单的电子系统的步骤和方法。

在整个设计过程中,我先进行了软件方面的设计。

通过去图书馆翻阅相关书籍、在网络上查看相关资料等方式对项目进行了一个初步的设计,并在word上做了基本的设计思路汇总,列出大概的整体框架和程序流程图。

之后我根据流程图写出基本的c语言程序。

这个程序中包括了初始化子程序、延时程序、中断程序、定时器程序、Led数码管显示程序等。

在多次检查程序后,我在keil里对源程序进行了编译。

Keil下方显示屏中出现了两个错误,经过检查,原因是没有通过sbit 命令对接口进行定义。

经过对源代码的修改,再次运行时编译成功,之后我通过建立目标文件生成了.hex文件。

硬件方面,我根据设计需求在proteus仿真软件上进行了基本的硬件设计。

首先从元件库中选出了89C52芯片,之后我在P0口上连Led数码管显示电路,P2连选手按键抢答电路,P3口连蜂鸣器警报电路和start电路。

在这个整体过程中我认为最困难的步骤是找到适合抢答器设计的电容元件,为了解决这个问题,我上网查了大量资料,并结合自己的多次的实验,最终找到合适电路的电容。

在解决完这个问题后,我把hex文件烧录到AT89C52芯片中,但是系统无法响应Start 按键触发的中断程序,按下Start按钮后,数码管只显示20而不开始倒计时。

于是我又重新回到工程文件中查找错误的根源所在,在确定了电路图连接无误后,我开始查找C语言源程序中存在的不能被编译器识别的错误,经过反复查找和对比相关资料,最终确定导致错误的原因是误把ET0的值赋成了0而没有开启计时器,经过改正后,系统运行正常。

参考文献[1]王思明.《单片机原理及应用系统设计》.北京科学出版社,2012.09[2]邹应全.《51系列单片机原理与实验教程》.西安电子科技大学出版社,2007.12[3]周坚.《单片机轻松入门(第二版)》.北京航空航天大学出版社,2007.02[4]周坚.《单片机C语言轻松入门》. 北京航空航天大学出版社,2011.08附录C语言源程序#include<reg52.h>#define uchar unsigned char#define uint unsigned intuint num=20;uint Count=0;uint ge=0;//个位uint shi=2;//十位uint n;uint i;uint m=0;sbit P3_7=P3^7;uchar flag=0;uchar flag1=0;uint tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void Delay(i){for(;i>0;i--);}void Display_1(){P1=0x01;P0=tab[shi];Delay(200);P1=0x02;P0=tab[ge];Delay(200);}void Display_2(){P1=0x01;P0=tab[shi];Delay(200);P1=0x02;P0=tab[ge];Delay(200);P1=0x04;P0=tab[n];Delay(200);}void ring(){flag1=0;P3_7=1;Delay(1000);P3_7=0;}main(){EA=1;//开总中断EX0=1;//开外部中断0IT0=1;//中断方式TMOD=0x01;//定时器/计数器0工作于方式1 ET0=1;//开定时器/计数器0中断TH0=0xd8;TL0=0xf0;P3_7=0;while(1){if(flag!=1)Display_1();if(flag==1)Display_2();if(flag1==1)ring();}}void interrupt0() interrupt 0{TR0=1;flag1=1;}void time0() interrupt 1{TH0=0xd8;TL0=0xf0;Count++;if(Count==100){Count=0;num--;}if(num!=0&&P2==0xff){shi=num/10;ge=num%10;flag=0;}if(num==0){ring();EA=0;}if(num!=0&&P2!=0xff){switch(P2){case 0xfe:单片机原理及系统课程设计报告n=1;flag=1; flag1=1;EA=0;break;case 0xfd:n=2;flag=1; flag1=1;EA=0; break;case 0xfb:n=3;flag=1; flag1=1;EA=0; break;case 0xf7:n=4;flag=1; flag1=1;EA=0; break;case 0xef:n=5;flag=1; flag1=1;EA=0; break;case 0xdf:n=6;flag=1; flag1=1;EA=0; break;case 0xbf:n=7;flag=1; flag1=1;EA=0; break;case 0x7f:n=8;flag=1; flag1=1;EA=0; break;default:break;}}}9。

相关文档
最新文档