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

📄 时间设定.c

📁 运用51单片机编写的99分定时、倒计时程序
💻 C
字号:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit mianbao=P3^0;
sbit hongkao=P3^1;
sbit shaokao=P3^2;
sbit jiedong=P3^3;
sbit inckey=P3^4;
sbit deckey=P3^5;
sbit startkey=P3^6;
sbit welamg=P2^0;
sbit welams=P2^1;
sbit welafg=P2^2;
sbit welafs=P2^3;
uchar miao;
uchar fen;
uchar start;
uchar mb;
uchar hk;
uchar sk;
uchar jd;
uchar tcount;
uchar ss;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(uchar z)
{
  uchar x,y;
  for(x=z;x>0;x--)
   for(y=110;y>0;y--);
}
void display()
{
  welamg=0;
  P1=table[miao%10];
  delay(10);
  welamg=1;
  welams=0;
  P1=table[miao/10];
  delay(10);
  welams=1;
  welafg=0;
  P1=table[fen%10];
  delay(10);
  welafg=1;
  welafs=0;
  P1=table[fen/10];
  delay(10);
  welafs=1;
}
  void set()
  {
    display();
  if(inckey==0)
    {
	 delay(10);
	 if(inckey==0)
	   {
	   fen++;
       display();
	   if(fen>99)
	   fen=99;
	   }
	   while(!inckey);
	 }
		
	    if(deckey==0)
     {
	  delay(10);
	  if(deckey==0)
	  {
	   fen--;
	   display();
	   if(fen<1)
	   fen=1;
	   }
	   while(!deckey);
      }
}

sstart()
  {
  tcount=0;
  ss=1;
        TMOD=0x01; 
        TH0=0x3c; 
        TL0=0xb0; 
        TR0=1; 
		while(ss==1)
		{
   display();
      if(TF0==1) 
        { 
		   tcount++; 
		             if(tcount==20) 
            { 
              tcount=0; 
               if(miao==0) 
                { 
                  miao=60; 
				  fen--;
                } 
				miao--; 
				if((fen==0)&&(miao==0))
				ss=0;
				  } 
          TF0=0; 
          TH0=0x3c; 
          TL0=0xb0;
		} 		  
    } 
}



void main()
{
while(P3==0xff)
{
 miao=0;
 fen=0;
 display();
  }
  while(1)
 {
  
      if(mianbao==0)
    { 
     delay(10);
      if(mianbao==0)
       {	   
	   miao=0;
	   fen=30;
	   mb=1;
	   hk=0;
	   sk=0;
	   jd=0;
       
	}
	}
while(!mianbao);
       delay(10);
       while(!mianbao);
	   
	while(mb==1)
		{
		set();
		break;
		}
    
	  if(hongkao==0)
    { 
     delay(10);
      if(hongkao==0)
       {
	   mb=0;
	   hk=1;
	   sk=0;
	   jd=0;
	   miao=0;
		fen=30;
       }
	   while(!hongkao);
      delay(10);
      while(!hongkao);
	   }
		while(hk==1)
		{
		set();
		break;
		}
     	  if(shaokao==0)
    { 
     delay(10);
      if(shaokao==0)
       {
	   mb=0;
	   hk=0;
	   sk=1;
	   jd=0;
	   miao=0;
		fen=30;
       }
	}
	   while(!shaokao);
       delay(10);
       while(!shaokao);
		while(sk==1)
		{
		set();
		break;
		}
     
	  if(jiedong==0)
    { 
     delay(10);
      if(jiedong==0)
       {
	   miao=0;
		fen=30;
	   mb=0;
	   hk=0;
	   sk=0;
	   jd=1;
       }
	 }
	   while(!jiedong);
      delay(10);
      while(!jiedong);
		while(jd==1)
		{
		set();
		break;
		}
	 if(startkey==0)
	 {
	 delay(10);
	 if(startkey==0)
	 {
	 if(fen!=0)
	    sstart();
	 }
  } 
	 while(!startkey);
      delay(10);
      while(!startkey);
	   }
 } 

⌨️ 快捷键说明

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