控制器是由可控硅和IC1的控制端构成。当任意按下一个按键时,可控硅都会被触发导通,使IC1的控制端始终保持有一个高电平的输入。因此所按的数字得以锁存。这样,后按下的按键就不能起作用,数码管就只显示先按下的键号。
这里的可控硅另一端与音乐片的正极相连,当可控硅导通时,使音乐片得以通电发声,从而完成整个抢答功能。该音乐片上电即能触发,也能自动停止,因此无需设暂停键。当按下复位键时,可控硅被切断电源而截止,IC1的控制端则由高电平转变为低电平而清零,为下一次抢答做准备。
扩展资料
功能
1、题目编辑:对现有格式的题目导入。
2、题目删除:删除已经导入且不要的题目。
3、显示、隐藏面板
4、抢答模式
5、显示主界面
6、硬件设置
7、软件设置
8、扫描台号
9、抢答组设置
10、奖项设置
11、进入抢答
12、赛后统计:抢答比赛所得到结果进行导出。。
参考资料来源:百度百科-抢答器
八路抢单器,一般而言需要的功能有:抢答按钮(八个),指示灯(至少八个),显示(至少一位数码管),警报提示(蜂鸣器),复位按钮(或开始按钮,由主持人控制)。
扩展功能,倒计时数码显示。
#include<reg52h>
#define uchar unsigned char
#define uint unsigned int
sbit kai=P2^2;
sbit ting=P2^3;
sbit hao1=P1^0;
sbit hao2=P1^1;
sbit hao3=P1^2;
sbit hao4=P1^3;
sbit hao5=P1^4;
sbit hao6=P1^5;
sbit hao7=P1^6;
sbit hao8=P1^7;
sbit wela=P2^1;
sbit dela=P2^0;
sbit P2_6=P2^6;
sbit P2_7=P2^7;
uchar code table[]=
{0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x40};
uchar a,a1,num,shi,ge,hao,
aa,num1,flag1,flag2,flag3,flag4,
flag5,flag6,flag7,flag8,flag9,flag10;
void display(uchar hao,uchar aa,uchar shi,uchar ge);
void init();
void delay(uint z);
void keyscan();
void main()
{
init();
while(1)
{
keyscan();
if(flag1==1)
{
display(hao,10,shi,ge);
}
else
{
display(hao,10,0,0);
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void keyscan()
{
if(kai==0)
{
delay(5);
if(kai==0)
{
while(!kai);
hao=0;
num=30;
shi=3;
ge=0;
TR0=1;
flag1=1;
P2_7=0;
P2_6=1;
}
}
if(ting==0)
{
delay(5);
if(ting==0)
{
while(!ting)
{
a=0;
num=30;
num1=0;
hao=0;
shi=3;
ge=0;
TR0=0;
TR1=0;
flag1=0;
P2_6=0;
P2_7=1;
P3=0xff;
}
}
}
if(flag1==1)
{
if(hao==0&&hao1==0)
{
delay(5);
if(hao1==0)
{
while(!hao1);
P2_6=1;
P2_7=1;
P3=0xfe;
flag2=1;
shi=0;
ge=0;
hao=1;
TR1=1;
TR0=0;
}
}
if(hao==0&&hao2==0)
{
delay(5);
if(hao2==0)
{
flag3=1;
while(!hao2);
P2_6=1;
P2_7=1;
P3=0xfd;
shi=0;
ge=0;
hao=2;
TR0=0;
TR1=1;
}
}
if(hao==0&&hao3==0)
{
delay(5);
if(hao3==0)
{
flag4=1;
while(!hao3);
P2_6=1;
P2_7=1;
P3=0xfb;
shi=0;
ge=0;
TR0=0;
TR1=1;
hao=3;
}
}
if(hao==0&&hao4==0)
{
delay(5);
if(hao4==0)
{
flag5=1;
while(!hao4);
P2_6=1;
P2_7=1;
P3=0xf7;
shi=0;
ge=0;
TR0=0;
TR1=1;
hao=4;
}
}
if(hao==0&&hao5==0)
{
delay(5);
if(hao5==0)
{
flag6=1;
while(!hao5);
P2_6=1;
P2_7=1;
P3=0xef;
shi=0;
ge=0;
TR0=0;
TR1=1;
hao=5;
}
}
if(hao==0&&hao6==0)
{
delay(5);
if(hao6==0)
{
flag7=1;
while(!hao6);
P2_6=1;
P2_7=1;
P3=0xdf;
shi=0;
ge=0;
hao=6;
TR0=0;
TR1=1;
}
}
if(hao==0&&hao7==0)
{
delay(5);
if(hao7==0)
{
flag8=1;
while(!hao7);
P2_6=1;
P2_7=1;
P3=0xbf;
shi=0;
ge=0;
hao=7;
TR0=0;
TR1=1;
}
}
if(hao==0&&hao8==0)
{
delay(5);
if(hao8==0)
{
flag9=1;
while(!hao8);
P2_6=1;
P2_7=1;
P3=0x7f;
shi=0;
ge=0;
hao=8;
TR0=0;
TR1=1;
}
}
if(!hao==0)
{
if(flag2==1)
{
if(hao1==0)
{
delay(5);
if(hao1==0)
{
TR1=0;
}
}
}
if(flag3==1)
{
if(hao2==0)
{
delay(5);
if(hao2==0)
{
TR1=0;
}
}
}
if(flag4==1)
{
if(hao3==0)
{
delay(5);
if(hao3==0)
{
TR1=0;
}
}
}
if(flag5==1)
{
if(hao4==0)
{
delay(5);
if(hao4==0)
{
TR1=0;
}
}
}
if(flag6==1)
{
if(hao5==0)
{
delay(5);
if(hao5==0)
{
TR1=0;
}
}
}
if(flag7==1)
{
if(hao6==0)
{
delay(5);
if(hao6==0)
{
TR1=0;
}
}
}
if(flag8==1)
{
if(hao7==0)
{
delay(5);
if(hao7==0)
{
TR1=0;
}
}
}
if(flag9==1)
{
if(hao8==0)
{
delay(5);
if(hao8==0)
{
TR1=0;
}
}
}
}
}
}
void display(uchar hao,uchar aa,uchar shi,uchar ge)
{
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
P0=0;
dela=1;
P0=table[hao];
dela=0;
delay(5);
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
P0=0;
dela=1;
P0=table[aa];
dela=0;
delay(5);
P0=0xff;
wela=1;
P0=0xfb;
wela=0;
P0=0;
dela=1;
P0=table[shi];
dela=0;
delay(5);
P0=0xff;
wela=1;
P0=0xf7;
wela=0;
P0=0;
dela=1;
P0=table[ge];
dela=0;
delay(5);
}
void init()
{
TMOD=0X11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
ET1=1;
num=30;
num1=0;
a1=0;
a=0;
shi=3;
ge=0;
flag1=0;
P2_6=0;
}
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
a++;
if(a==18)
{
a=0;
num--;
if(num==0)
{
num=0;
TR0=0;
}
shi=num/10;
ge=num%10;
}
}
void timer1() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
a1++;
if(a1==18)
{
a1=0;
num1++;
if(num1==60)
{
P3=0xff;
P2_6=0;
P2_7=1;
TR1=0;
}
shi=num1/10;
ge=num1%10;
}
}
《基于74系列八路抢答器的设计》
>
以上就是关于八路数显抢答器工作原理全部的内容,包括:八路数显抢答器工作原理、八路抢答器怎么用单片机去实现,它需要哪些功能希望能给我一些实现八路抢答器的清晰思路,我不甚感激!!、求基于单片机的八路抢答器设计,要用到74LS47N和共阳led,求电路图和程序(最好是C),加急!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)