clock.c

来自「自己初学C51时写的一个时钟小程序」· C语言 代码 · 共 67 行

C
67
字号
#include<reg51.h>

unsigned char code Table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char data Time[2];

unsigned char digit,disp,delay;

void timer(void) interrupt 1 using 1
{
	TH0=-50000/256;
	TL0=-50000%256;
	Time[0]=Time[0]+1;
	if (Time[0]==100)
	{
		Time[0]=0;
		Time[1]=Time[1]+1;
		if (Time[1]==60)
			Time[1]=0;
	}
}

void display(void)
{
unsigned char i;
digit=0x08;
for(i=0;i<2;i++)
{
	P0=digit;
	disp=Time[i]/10;
	P1=Table[disp];
	for(delay=0;delay<200;delay++);
	digit=digit>>1;
	P0=digit;
	disp=Time[i]%10;
	P1=Table[disp];
	for(delay=0;delay<200;delay++);	
	digit=digit>>1;
}
}
void main()
{
	Time[0]=0;
	Time[1]=0;
	TMOD=0x01;
	TH0=-50000/256;
	TL0=-50000%256;
	EA=1;
	ET0=1;
	TR0=1;
	while(1)
	{
		switch (P2)
		{
			case 0xFF:
				TR0=1;
				display();
				break;
			case 0xFE:
				TR0=0;
				display();
				break;
		}
	}
}

⌨️ 快捷键说明

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