⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a.c

📁 led,液晶显示时钟
💻 C
字号:
	# include <at89x51.H>

bit flag;
unsigned char count;
unsigned char s=58,m=59,h=23,j;
unsigned char codes[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char scancode[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

delay(unsigned char x)
{	unsigned int i,j;
	for(i=0;i>x;i++)
	for(j=200;j>0;j--);
}
void time(void) interrupt 1 using 0
{
	unsigned char temp;
while(P3_0==0) 
{
	delay(10);
	if (P3_0==0) flag=1;
}
if(flag==1)
{	
	if(P3!=0xff)
	{
		temp=P3;
		while(P3!=0xff);
		switch(temp)
		{
			case 0xfd:
				s++;break;
			case 0xfb:
				s--;break;
			case 0xf7:
				m++;break;
			case 0xef:
				m--;break;
			case 0xdf:
				h++;break;
			case 0xbf:
				h--;break;
			case 0x7f:
				flag=0;break;
		}
		if(s>=60) s=0;
		else if(s<=0) s=59;
		if(m>=60) m=0;
		else if(m<=0) m=59;
		if(h>=24) h=0;
		else if(h<=0) h=23;

	}
}	
else
{
	count++;
	if (count==200)
	{
		count=0;
		s++;
		if(s>=60) 
		{
			s=0;m++;
			if(m>=60)
			{
				m=0;h++;
				if(h>=24)
				{
					h=0;
				}		 
			}
		}
	}
}
	switch(j)
	{
		case 0:
	 	P2=scancode[0];P1=codes[s%10];break;
		case 1:
	 	P2=scancode[1];P1=codes[s/10];break;
		case 2:
	 	P2=scancode[2];P1=0xbf;break;
		case 3:
	 	P2=scancode[3];P1=codes[m%10];break;
		case 4:
	 	P2=scancode[4];P1=codes[m/10];break;
		case 5:
	 	P2=scancode[5];P1=0xbf;break;	
		case 6:
	 	P2=scancode[6];P1=codes[h%10];break;
		case 7:
	 	P2=scancode[7];P1=codes[h/10];break;
	}
	j++;
	if (j==8)
	{ 
		j=0;
	}
	TH0=(65536-5000)/256;
	TL0=(65536-5000)%256;
}
void init(void)
{
	TMOD=0x01;
	TH0=(65536-5000)/256;
	TL0=(65536-5000)%256;
	EA=1;
	ET0=1;
	TR0=1;
}
void main(void)
{	
	init();
	while(1);
}

⌨️ 快捷键说明

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