
有at89c51单片机的四路抢答器的仿真和程序吗?想了解一下 5
#include
#define uint unsigned int
#define uchar unsigned char
sbit D0=P0^0;//指示灯
sbit beep=P0^1;//蜂鸣器
sbit K0=P0^2;//开始抢答按键
sbit S1=P0^3;//答题计时键
sbit S2=P0^4;//开始抢答时间调整键
sbit S3=P0^5;//答题计时时间调整键
sbit K1=P2^0;//1号选手抢答按键
sbit K2=P2^1;//2号选手抢答按键
sbit K3=P2^2;//3号选手抢答按键
sbit K4=P2^3;//4号选手抢答按键
sbit K5=P2^4;//5号选手抢答按键
sbit K6=P2^5;//6号选手抢答按键
sbit K7=P2^6;//7号选手抢答按键
sbit K8=P2^7;//8号选手抢答按键
char s;
uchar num=0;
char time1;//抢答时间
char time2;//答题限时时间
uint m,n;//T0,T1定时器定一秒时
bit flag1,flag2,flag3,flag4; //标志位
bit aa,bb;//时间调整标志位
//延时子函数
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
}
uchar code table1[]={
//共阴数码管段码值
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
};
uchar code table2[]={
//共阴数码管位码值
0xf7,0xfb,
0xfd,0xfe
};
//初始化子函数
void init()
{
TMOD=0x11;
TH0=(65536-2000)/256;
……等 字数有限发不了这么多。