基于51单片机的篮球24秒倒计时器
#include
#define uchar unsigned char
sbit wei0=P1^0;
sbit wei1=P1^1;
sbit wei2=P1^2;
sbit gnd=P2^5;
sbit key2=P2^0;
uchar count;//用于记录发生了多少次中断的计数器
uchar sec=240;
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
//注:用code是把后面的数据存在程序存贮器中,如果不用code,数据就会存在随机存贮器中。
void delayms(int x)
{
int y,z;
for(y=x;y>0;y--)
for(z=110;z>0;z--);
}
void display(int dat)
{
uchar bai,shi,ge;
bai=dat/100;
shi=dat%100/10;
ge=dat%10;
wei0=0;
P0=table[bai];
delayms(1);
wei0=1;
wei1=0;
P0=table[shi]&0x7f;
delayms(1);
wei1=1;
wei2=0;
P0=table[ge];
delayms(1);
wei2=1;
P0=0xff; //这一句和下一句是为了降低数码管亮度,同学们不必写。
delayms(20);