60秒.c

来自「简单的60秒显示」· C语言 代码 · 共 81 行

C
81
字号
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uchar t0,shu,shi,ge;
sbit beep=P2^1;
sbit  shwei=P3^0;
void init()
{
 P3=0xff;
shu=0;
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void delay(uint z)	
{
	uint x,y;
	for(x=z;x>0;x--)
	for(y=110;y>0;y--);

}
void display1(uchar aa)
{	

	P0=table[aa];
	P3=0xfe;

	delay(5);
    
}
void display2(uchar bb)
{
  
	P0=table[bb];
	P3=0xfd;

	delay(5);
}
void timer() interrupt  1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
t0++;
    if(t0==20)
   { t0=0;
	shu++;
	shi=shu/10;
	ge=shu%10;
	   if(shu==60)
	   {
		TR0=0;
		beep=0;
		delay(500);
		beep=1;
	    }


    }	
}

void main()
{
	init();
	while(1) {
	    display1(shi);
	delay(5);
	display2(ge);
	delay(5);

	}




	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?