科技> 正文

世界热资讯!八路抢答器程序是怎样的?性能指标要求有哪些?

时间: 2022-10-09 15:41:31 来源: IT专家网

随着社会越来越发达,大家都选择在网络上汲取相关知识内容,比如八路抢答器程序和仿真,为了更好的解答大家的问题,小编也是翻阅整理了相应内容,下面就一起来看一下吧!

一 性能指标要求:

1、 需要自己设计电路并焊接电路板。

2、基本要求:有一个主持人控制开关和6路抢答按扭,当主持人允许抢答时才能进行抢答操作,并用一个数码管显示抢答选手的号码,同时其他选手不能再抢答。


(资料图)

3、当主持人允许抢答后倒计时5秒时间,在这5秒内抢答有效,过后就不能进行抢答了。

4、 电路上要加个蜂鸣器的电路,当有选手抢答时蜂鸣器响一下。

5、当有选手抢答后,进行倒计时20秒作为选手回答问题时间,用两个数码管显示,倒计时时间到时有声光提示。

6、 画电路板时要增加下载接口,方便调试程序。

#include

#define uchar unsigned char

uchar code table[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

uchar code wei[4]={0xef,0xf7,0xfb,0xfd};

uchar fen=0,miao=0,qd=0;

uchar flag=0,temp=0,flag2=0,tt=0,b=31,bb=31;

sbit d0=P1^0;

sbit d1=P1^1;

sbit feng=P1^3;

sbit deng=P1^4;

void delay(uchar z)

{

uchar i,j;

for(i=z;i>0;i--)

for(j=110;j>0;j--);

}

void delay2(uchar z)

{

uchar i,j;

for(i=z;i>0;i--)

for(j=30;j>0;j--);

}

fengming()

{

feng=1;

delay2(1);

feng=0;

delay2(1);

feng=1;

delay2(1);

feng=0;

delay2(1);

}

void time01()//定时器相关

{

EA=1;

TR0=1;//启动定时器0

ET0=0;//开定时器0中断

TMOD=1;

TH0=(65536-50000)/256;

TL0=(65536-50000)%6;//声明:定时50毫秒

}

display(void)

{

P2=wei[0];

P0=table[fen];

delay(8);

P2=wei[1];

P0=table[miao];

delay(8);

P2=wei[3];

P0=table[qd];

delay(8);

}

qiangda(void)

{

P3=0xff;

delay(15);

if(P3!=0xff)

{

delay(5);

if(P3!=0xff)

{

switch(P3)

{

case 0xfe: temp=1;break;

case 0xfd: temp=2;break;

case 0xfb: temp=3;break;

case 0xf7: temp=4;break;

case 0xef: temp=5;break;

case 0xdf: temp=6;break;

case 0xbf: temp=7;break;

case 0x7f: temp=8;break;

}

}

}

return(temp);

}

daojishi()//30 miao

{

bb--;

miao=bb;

fen=bb/10;

fengming();

if(bb==0){ ET0=0;bb=31;feng=1;deng=1;delay(80);feng=0;}

}

inition()//初始化

{

fen=0,miao=0,qd=0;

flag=1,temp=0,flag2=0,tt=0;deng=1;

}

d1pand()

{

if(d1==0)

{

delay(20);

if(d1==0) b--;while(!d1)

{

bb=b;

P2=wei[0];

P0=table[bb/10];

delay(5);

P2=wei[1];

P0=table[bb];

delay(5);

if(b<5) b=31;

}

}

}

d0pand()

{

if(d0==0)

{

delay(20);

if(d0==0)

{

inition();

while(!d0);

}

}

}

void main()

{

time01();

while(1)

{//fengming();

feng=0;

display();

d1pand();

d0pand();

if(flag==1)

{

if(flag2==1){flag=0;}

else//flag2=0

{

ET0=1;

qd=qiangda();

if(qd!=0)

{ flag2=1;tt=1;

deng=0;feng=1;delay(80);feng=0;

}

}

}

}

}

void time0() interrupt 1

{

uchar a;

TH0=(65536-50000)/256;

TL0=(65536-50000)%6;

a++;

if(a ==0)

{

miao++;

if(miao==6&&flag2==0){feng=1;;miao=0;flag2=1;delay(80);feng=0;ET0=0;}

if(tt==1){

daojishi();

}

}

}

关键词: 控制开关 调试程序 性能指标

责任编辑:QL0009

为你推荐

关于我们| 联系我们| 投稿合作| 法律声明| 广告投放

版权所有 © 2020 跑酷财经网

所载文章、数据仅供参考,使用前务请仔细阅读网站声明。本站不作任何非法律允许范围内服务!

联系我们:315 541 185@qq.com