记分牌程序设计
记分牌程序设计
要求:
①编写一篮球记分牌程序,能够显示两支球队的当前比赛分数;
②能够实现加1分、加2分、加3分的功能;
③通过按键可切换到60s倒计时功能,显示当前剩余时间;
④其它创新功能。求各位大神给出程序来,是用数码管显示来做的。
直接要程序 你这也太爽了吧
呵呵呵,不懂啊
给程序来看看呗
电路都没有?没电路,没程序.
代码如下,如需要设计的电路图,留下qq给你发过来‘
#include<reg52.h>
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,0x71};
sbit dula=P2^6;
sbit wela=P2^7;
sbit key2=P3^4;
sbit key3=P3^5;
sbit key4=P3^6;
sbit key5=P3^7;
unsigned int i,j,numdis,num,num0,djs,k;
void delay(unsigned int);
void display(unsigned int);
void display1(unsigned int);
void main(void)
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
numdis=0;
while(1)
{
k=60;
EA=1;
ET0=1;
TMOD=0x01;
if(key2==0)
{
numdis++;
while(!key2);
}
if(key3==0)
{
numdis=numdis+2;
while(!key3);
}
if(key4==0)
{
numdis=numdis+3;
while(!key4);
}
display(numdis);
if(key5==0)
{
TR0=1;
while(!key5);
TR0=~TR0;
}
}
}
void display(unsigned int numdis)
{
unsigned char shi,ge;
shi=numdis/10;//用于显示十位
ge=numdis%10;//用于显示个位
dula=1;//段选开
P0=table[shi];//给P0口送数据table[shi]
dula=0;//段选关闭
P0=0xff;//消影
wela=1;//位选开
P0=0xfe;
wela=0;
delay(100);//延时
dula=1;
P0=table[ge];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
delay(100);
}
void display1(unsigned int k)
{
unsigned char ds,dg;
ds=k/10;//用于显示十位
dg=k%10;//用于显示个位
dula=1;//段选开
P0=table[ds];//给P0口送数据table[shi]
dula=0;//段选关闭
P0=0xff;//消影
wela=1;//位选开
P0=0xfe;
wela=0;
delay(100);//延时
dula=1;
P0=table[dg];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
delay(100);
}
void delay(unsigned int xms)
{
for(i=xms;i>0;i--)
{
for(j=110;j>0;j--);
}
}
void inter0() interrupt 0
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
num0++;
if(num0==20)
{
display1(k);
k--;
num0=0;
if(k==0)
{
k=60;
}
}
}
谢谢了,这是我的QQ:294799014,以后有什么不懂的话,请多指教哦
秒表计时器
要 求:
①编写一个能够实现秒表计时功能的程序;
②计时时间通过若干个数码管显示;
③计时开始、暂停、继续、清零都由若干个开关控制;
④其它功能及创新设计。
这个程序又得怎样编写呢,怎样实现开始、暂停、继续这几个功能啊?不是一烧入程序就开始了吗?
为什么我拿单片机试不行的啊?就是按键切换到60秒倒计时不得的