摘要
本设计是四路智力抢答器。使用51系列单片机,编写应用程序来实现智力抢答功能。设计思路是先等待主持人按键,当有主持人按键时,开始计时一分钟,并显示时间。有人抢答时,报警电路启动,并显示组号,同时计时显示停止。若在计时时间内无人抢答,一分钟到时,无报警,且计时停止,重新开始等待主持人按键,进行下一轮抢答。
软件设计利用中断系统的基本构成原理编写中断服务程序,使用80C51单片机串行接口P1口、P2口、P3口的输入/输出功能向CPU输入信号,其信号由按键电路提供,由CPU响应中断,并输出响应。用到了查询按键模块、定时器模块、显示时间模块、显示组号模块、报警模块等。软件涉及51系列单片机的中断系统、定时器/计数器、串行接口及外围电路的功能。
硬件设计使用的是51系列单片机中的80C51,其他部件有74LS48、八段数码显示管、蜂鸣器、LED闪光灯,按键等。硬件设计采通过外部12M的X1提供时钟的脉冲,利用其中断控制程序进行抢答部分的处理,通过多输入与门的控制去申请单片机内部的中断,以达到显示抢答的目的。用分模块设计思想,以CPU为中心逐一设计了时钟电路和复位电路;然后设计了按钮电路为CPU提供输入信号;再次,为数码管选择输入信号电路;还有就是提供了报警电路;最终就是修饰和完善总原理图。
显示结果是主持人按键时,数码管显示60,即定时器定从一分钟开始计时,若一分钟内有人抢答,则此时定时器停止计时,数码管显示此时的时间,如计时56秒时有人抢答,数码管就显示56,同时蜂鸣器发出“嘀”声,且警报灯闪烁一下,与此同时显示抢答组的组数。如一分钟内无人按键抢答,计时时间一分钟到时数码管显示00,并停止计时。此时等待主持人按键进行下一轮抢答,若主持人不按键,数码管就一直显示00。
目录
1 概述 - 3 -
2 系统总体方案及硬件设计 - 4 -
2.1系统总体方案 - 4 -
2.2控制部分80C51的设计 - 4 -
2.3数码显示部分LED的介绍 - 6 -
2.4时钟电路的介绍 - 6 -
2.5复位电路的介绍 - 7 -
2.6按钮电路 - 8 -
2.7显示管的输入信号电路 - 8 -
2.8报警电路 - 9 -
3.软件设计 - 10 -
4 Proteus软件仿真 - 15 -
5心得体会 - 19 -
参考文献 - 19 -
附1:源程序代码 - 20 -
附2:系统原理图 - 24 -
1 概述
使用51系列单片机,编写应用程序来实现智力抢答功能。利用中断系统的基本构成原理编写中断服务程序,使用80C51单片机串行接口P1口、P2口、P3口的输入/输出功能向CPU输入信号,其信号由按键电路提供,由CPU响应中断,并输出响应。
软件设计用到了查询按键模块、定时器模块、显示时间模块、显示组号模块、报警模块等。
硬件设计采通过外部12M的X1提供时钟的脉冲,利用其中断控制程序进行抢答部分的处理,通过多输入与门的控制去申请单片机内部的中断,以达到显示抢答的目的。硬件设计使用的是51系列单片机中的80C51,其他部件有74LS48、八段数码显示管、蜂鸣器、LED闪光灯,按键等。利用硬件电路防止外部在开始及结束的时候出现误操作。
最后在Protues下仿真,并测验结果。
该设计的功能是当有主持人按键时,开始计时一分钟,并显示时间。有人抢答时,报警电路启动,并显示组号,同时计时显示停止。若在计时时间内无人抢答,一分钟到时,无报警,且计时停止,重新开始等待主持人按键,进行下一轮抢答。
2 系统总体方案及硬件设计
2.1系统总体方案
下面图1至图7各个功能元件的介绍,体现了本次设计的主线。即把一个完整的设计划分为不同的模块进行分段设计。首先,以CPU为中心设计了时钟电路和复位电路;然后设计了按钮电路为CPU提供输入信号;再次,为数码管选择输入信号电路;还有就是进一步完善设计而提供了报警电路。最终,完善总括电路,得到总设计原理图。利用单片机内部的时钟中断源,外部中断源,利用P3口进行第二功能进行控制。当外部中断输入时,我们利用锁存,稳定输出剩余时间。利用硬件电路防止外部在开始及结束的时候出现误操作。
2.2控制部分80C51的设计
本设计中用的是80C51单片机,80C51有40条引脚中有2条专用于主电路,2条外接晶振,4条控制或与其它电源的复用引脚,32条I/O引脚。
(1)主电源引脚
Vss:接地。
Vcc:正常操作、对EPROM编程和验证时接+5V电源。
(2)外接晶振引脚
XTAL1:接外部晶振的一个引脚。
XTAL2:接外部晶振的一个引脚。
(3)控制或与其它电源复用引脚
RST/Vpd:当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单机复位。一般在引脚与Vss引脚之间连接一个约8.2KΩ的下拉电阻,本设计使用的下拉电阻为1KΩ。与Vss引脚之间连接一个20uF的电容,以保证可靠复位。复位以后,P0、P3口输出高电平,SP指针重新赋值为07H,其它特殊功能寄存器和程序计数器PC被清0。只要REST保持高电平,80C51就会循环复位。RESET由高电平变为低电平后,80C51初始复位不影响内部RAM的状态,包括工作寄存器R0~R7。
ALE(/PROG):当访问外部数据存储器时,ALE的输出用于锁存地址低字节,
即使不访问外部存储器,ALE仍以不变的频率周期性地出现正脉冲信号,为振荡器频率的1/6,因此可用作对输出的时钟。
|