资源简介
包括完整proteus仿真。。。。。。。。

代码片段和文件信息
#include
#define uchar unsigned char
#define uint unsigned int
char s;
uchar num=0;
char time=20; //抢答时间
char datitime=30; //答题限时时间
uint ttt1; //T0T1定时器定一秒时
bit flags_flag=1b_flagfall_flag; //标志位
bit K_startcountflagK_timecountflag; //时间调整标志位
sbit K0=P3^0;
sbit beep=P3^7; //蜂鸣器
sbit rled=P3^1; //指示灯
sbit K1=P1^0;
sbit K2=P1^1;
sbit K3=P1^2;
sbit K4=P1^3;
sbit K5=P1^4;
sbit K6=P1^5;
sbit K7=P1^6;
sbit K8=P1^7;
sbit K_Time=P3^2; //答题计时键
sbit K_startcount=P3^3; //开始抢答时间调整键
sbit K_timecount=P3^4; //答题计时时间调整键
void delay(uchar ms)
{
uchar y;
for(;ms>0;ms--)
for(y=120;y>0;y--);
}
uchar code tabledu[]={0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71
};
uchar code tablewe[]={0XFE0XFD0XFB0XF7};
void T0_Init(void)
{
TMOD=0X01;
TH0=(65536-2000)/256;
TL0=(65536-2000)%256;
TH1=(65536-2000)/256;
TL1=(65536-2000)%256;
ET0=1;
ET1=1;
EA=1;
P0=0;
}
void Key_Scan(void) //开始键扫描
{
if(K0==0)
{
delay(10);
if(K0==0)
{
while(!K0);
TR0=1;
s=time;
tt=0;
flag=1;
s_flag=1;
b_flag=1;
num=0;
beep=1;
rled=1;
fall_flag=0; //清除违规标志位
K_startcountflag=0;
K_timecountflag=0;
}
}
}
void Scan(void) //八路热键扫描(哪个键先按下哪个优先级最高)
{
if(K1==0)
{
delay(10);
if(K1==0)
{
while(!K1);
num=1; //数码管显示1号“1“
TR0=0; //关闭定时器0时间停止
TR1=1; //打开定时器1使扬声器响一声
s_flag=0; //关闭开始键标志位使再按其他七个键不会响应
}
}
if(K2==0) //下面七个键的处理同上
{
delay(10);
if(K2==0)
{
while(!K2);
num=2;
TR0=0;
TR1=1;
s_flag=0; //重要
}
}
if(K3==0)
{
delay(10);
if(K3==0)
{
while(!K3);
num=3;
TR0=0;
TR1=1;
s_flag=0;
}
}
if(K4==0)
{
delay(10);
if(K4==0)
{
while(!K4);
num=4;
TR0=0;
TR1=1;
s_flag=0;
}
}
if(K5==0)
{
delay(10);
if(K5==0)
{
while(!K5);
num=5;
TR0=0;
TR1=1;
s_flag=0;
}
}
if(K6==0)
{
delay(10);
if(K6==0)
{
while(!K6);
num=6;
TR0=0;
TR1=1;
s_flag=0;
}
}
if(K7==0)
{
delay(10);
if(K7==0)
{
while(!K7);
num=7;
TR0=0;
TR1=1;
s_flag=0;
}
}
if(K8==0)
{
delay(10);
if(K8==0)
{
while(!K8);
num=8;
TR0=0;
TR1=1;
s_flag=0;
}
}
}
void display(void)
{
if(flag==1) //开始键按下开始计时抢答
{
if(num!=0) //如果有人抢答则显示相应的几号
{
P0=tabledu[num]; //显示几号抢到了
P2=tablewe[0];
delay(2);
P0=0;
P2=0XFF;
}
else //否则没人抢答则前面不显示几号
{
P0=0;
P2=0XFF;
}
P0=tabledu[s/10]; //下面为显示抢答倒计时
P2=tablewe[2];
delay(2);
P0=0;
P2=0XFF;
P0=tabledu[s%10];
P2=tablewe[3];
delay(2);
P2=0XFF;
P0=0;
}
else //如果开始键没有按下则显示F FF(若有违规者则显示违规号码及 FF)或时间调整
{
if(fall_flag==1) //违规显示
{
if(num!=0)
{
P0=tabledu[num]; //显示几号违规了
P2=tablewe[0];
delay(2);
P0=0;
P2=0XFF;
P0=tabledu[15
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1846 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器
文件 3575 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.hex
文件 99 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.lnp
文件 4543 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.M51
文件 1073 2009-03-25 00:09 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.Opt
文件 507 2009-03-25 00:09 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.plg
文件 2082 2009-03-25 00:09 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器.Uv2
文件 0 2009-03-25 00:07 项目24 带时间及声光提示单片机抢答器的设计\带时间限制及声光提示的抢答器_Uv2.Bak
文件 6638 2009-03-06 19:29 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.c
文件 107548 2009-03-17 13:10 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.DSN
文件 3575 2009-03-17 13:08 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.hex
文件 21127 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.LST
文件 3953 2009-03-25 00:08 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.OBJ
文件 742 2011-03-08 15:49 项目24 带时间及声光提示单片机抢答器的设计\项目24 带时间限制及声光提示的抢答器设计.PWI
目录 0 2011-06-23 19:28 项目24 带时间及声光提示单片机抢答器的设计
----------- --------- ---------- ----- ----
157308 15
相关资源
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
- 51单片机频率计(很简单)
- 基于51单片机的智能温控器
- 基于51单片机的16*16点阵动态显示
- 基于51单片机的模数转换与数模转换
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 8051单片机教程第二十七课:单片机几
- 8051单片机教程第二十六课:矩阵式键
- 适用于STC单片机和51单片机的SX1262驱动
- 基于51单片机的计算器(C51编写,有
- 51单片机大量源码
- 基于51单片机的交通信号灯程序
- GSM监控系统51单片机设计
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
评论
共有 条评论