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

📄 t.c

📁 ds18b20多点测温,单片机为AT89s52,液晶显示,实时时钟显示.
💻 C
📖 第 1 页 / 共 4 页
字号:
	      display(&number[m2%10][8]);
	      display(&set[32][8]);
	 //*************************************
          while(keycounter==1)

		   { CS1=1;CS2=0;
	         delay1();
		     lcdwrite_cmd(0xbc);lcdwrite_cmd(0x40);	display(&temperw[18][0]);
			 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x40);	display(&temperw[18][8]);
			 lcddispon();
			 delay100ms();
			 lcdwrite_cmd(0xbc);lcdwrite_cmd(0x40);
			 for(j=0;j<8;j++)lcdwrite_dat(0x00);
			 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x40);
			 for(j=0;j<8;j++)lcdwrite_dat(0x00);
			 lcddispon();
			 }

	  	  if(key!=0x5a)
		    {
			  n1=keydec();
			  if(n1==0)
			   { lcdwrite_cmd(0xbc);lcdwrite_cmd(0x40);
			    for(j=0;j<8;j++)lcdwrite_dat(0x00);
			    lcdwrite_cmd(0xbd);lcdwrite_cmd(0x40);
			    for(j=0;j<8;j++)lcdwrite_dat(0x00);
			    }

			   else { lcdwrite_cmd(0xbc);lcdwrite_cmd(0x40);	display(&number[1][0]);
			          lcdwrite_cmd(0xbd);lcdwrite_cmd(0x40);	display(&number[1][8]);
					  n1=1;
					 }

			 while(keycounter==0)
			  {	 lcdwrite_cmd(0xbc);lcdwrite_cmd(0x48);display(&number2[m1/10][0]);
			  	 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x48);display(&number2[m1/10][8]);
	      		 lcddispon();
			     delay100ms();
			     lcdwrite_cmd(0xbc);lcdwrite_cmd(0x48);display(&number[m1/10][0]);
			  	 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x48);display(&number[m1/10][8]);
				 lcddispon();
				}

			   n2=keydec();
			   lcdwrite_cmd(0xbc);lcdwrite_cmd(0x48);display(&number[n2][0]);
			   lcdwrite_cmd(0xbd);lcdwrite_cmd(0x48);display(&number[n2][8]);
			  while(keycounter==1)
			   { lcdwrite_cmd(0xbc);lcdwrite_cmd(0x50);display(&number2[m1%10][0]);
			  	 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x50);display(&number2[m1%10][8]);
	      		 lcddispon();
			     delay100ms();
			     lcdwrite_cmd(0xbc);lcdwrite_cmd(0x50);display(&number[m1%10][0]);
			  	 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x50);display(&number[m1%10][8]);
				 lcddispon();
				}

				 n3=keydec();
			     lcdwrite_cmd(0xbc);lcdwrite_cmd(0x50);display(&number[n3][0]);
			     lcdwrite_cmd(0xbd);lcdwrite_cmd(0x50);display(&number[n3][8]);
				 THL[0][i-1]=n1*100+n2*10+n3;

			   while(keycounter==0)
			   {  lcdwrite_cmd(0xbe);lcdwrite_cmd(0x40);	display(&temperw[18][0]);
			      lcdwrite_cmd(0xbf);lcdwrite_cmd(0x40);	display(&temperw[18][8]);
			      lcddispon();
			      delay100ms();
			      lcdwrite_cmd(0xbe);lcdwrite_cmd(0x40);
			      for(j=0;j<8;j++)lcdwrite_dat(0x00);
			      lcdwrite_cmd(0xbf);lcdwrite_cmd(0x40);
			       for(j=0;j<8;j++)lcdwrite_dat(0x00);
				   lcddispon();
			      }

				n1=keydec();
			  if(n1==0)
			   { lcdwrite_cmd(0xbe);lcdwrite_cmd(0x40);
			    for(j=0;j<8;j++)lcdwrite_dat(0x00);
			    lcdwrite_cmd(0xbf);lcdwrite_cmd(0x40);
			    for(j=0;j<8;j++)lcdwrite_dat(0x00);
			    }

			   else { lcdwrite_cmd(0xbe);lcdwrite_cmd(0x40);	display(&number[1][0]);
			          lcdwrite_cmd(0xbf);lcdwrite_cmd(0x40);	display(&number[1][8]);
					  n1=1;
					 }

			 while(keycounter==1)
			  {	 lcdwrite_cmd(0xbe);lcdwrite_cmd(0x48);display(&number2[m2/10][0]);
			  	 lcdwrite_cmd(0xbf);lcdwrite_cmd(0x48);display(&number2[m2/10][8]);
	      		 lcddispon();
			     delay100ms();
			     lcdwrite_cmd(0xbe);lcdwrite_cmd(0x48);display(&number[m2/10][0]);
			  	 lcdwrite_cmd(0xbf);lcdwrite_cmd(0x48);display(&number[m2/10][8]);
				 lcddispon();
				}

			   n2=keydec();
			   lcdwrite_cmd(0xbe);lcdwrite_cmd(0x48);display(&number[n2][0]);
			   lcdwrite_cmd(0xbf);lcdwrite_cmd(0x48);display(&number[n2][8]);
			  while(keycounter==0)
			   { lcdwrite_cmd(0xbe);lcdwrite_cmd(0x50);display(&number2[m2%10][0]);
			  	 lcdwrite_cmd(0xbf);lcdwrite_cmd(0x50);display(&number2[m2%10][8]);
	      		 lcddispon();
			     delay100ms();
			     lcdwrite_cmd(0xbe);lcdwrite_cmd(0x50);display(&number[m2%10][0]);
			  	 lcdwrite_cmd(0xbf);lcdwrite_cmd(0x50);display(&number[m2%10][8]);
				 lcddispon();
				}

				 n3=keydec();
			     lcdwrite_cmd(0xbe);lcdwrite_cmd(0x50);display(&number[n3][0]);
			     lcdwrite_cmd(0xbf);lcdwrite_cmd(0x50);display(&number[n3][8]);
				 THL[1][i-1]=n1*100+n2*10+n3;

				}
				while(keycounter==1){};
				if(key==0x79)i++;
				keycounter=1;
				if((i<4)&&(key!=0x5a)) goto tp;
				
			}	
		   }
		   lcdclrall();
		  }


 void  lookalarm()
  {	 
  	  uchar i=0;
ts:      lcdclrall();
       CS1=0;CS2=1;
     if(alarmflag[i][8]==alarmflag[i][9])
	  {
	     CS1=0;CS2=1;
	     delay1();
         lcdwrite_cmd(0xba);
         lcdwrite_cmd(0x70);
         display(&NO[0][0]);
         display(&NO[1][0]);
         lcdwrite_cmd(0xbb);
         lcdwrite_cmd(0x70);
         display(&NO[0][8]);
         display(&NO[1][8]);
		 lcddispon();

		CS1=0;CS2=1;
         delay1();
         lcdwrite_cmd(0xbc);lcdwrite_cmd(0x60);
		 display(&alarmw[0][0]);display(&alarmw[0][8]);
		 display(&alarmw[2][0]);display(&alarmw[2][8]);
		 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x60);
		 display(&alarmw[1][0]);display(&alarmw[1][8]);
		 display(&alarmw[3][0]);display(&alarmw[3][8]);
		 lcddispon();
		  CS1=1;CS2=0;
	     delay1();
	     lcdwrite_cmd(0xba);
         lcdwrite_cmd(0x40);
	     display(&NO[2][0]);
	     display(&number[i+1][0]);
	     lcdwrite_cmd(0xbb);
         lcdwrite_cmd(0x40);
	     display(&NO[2][8]);
	     display(&number[i+1][8]);
		 lcddispon();

		 CS1=1;CS2=0;
         delay1();
		 lcdwrite_cmd(0xbc);lcdwrite_cmd(0x40);
		 display(&alarmw[4][0]);display(&alarmw[4][8]);
		 display(&alarmw[6][0]);
		 lcdwrite_cmd(0xbd);lcdwrite_cmd(0x40);
		 display(&alarmw[5][0]);display(&alarmw[5][8]);
		 display(&alarmw[6][8]);
		  lcddispon();
		 }
	  else {
		   
	  CS1=0;CS2=1;
      lcdwrite_cmd(0xb8);
      lcdwrite_cmd(0x40);
	  display(&number[2][0]);
	  display(&number[0][0]);
	  display(&number[time[0]][0]);
	  display(&number[time[1]][0]);
	  display(&set[31][0]);
	  display(&number[time[2]][0]);
	  display(&number[time[3]][0]);
	  display(&set[31][0]);
	  lcdwrite_cmd(0xb9);
      lcdwrite_cmd(0x40);
	  display(&number[2][8]);
	  display(&number[0][8]);
	  display(&number[time[0]][8]);
	  display(&number[time[1]][8]);
	  display(&set[31][8]);
	  display(&number[time[2]][8]);
	  display(&number[time[3]][8]);
	  display(&set[31][8]);
	  lcddispon();

      CS1=1;CS2=0;
	  delay();
      lcdwrite_cmd(0xb8);
      lcdwrite_cmd(0x40);
	  display(&number[alarmflag[i][0]][0]);
	  display(&number[alarmflag[i][1]][0]);
	  display(&set[31][0]);
	  display(&number[alarmflag[i][2]][0]);
	  display(&number[alarmflag[i][3]][0]);
	  display(&set[31][0]);
	  display(&number[alarmflag[i][4]][0]);
	  display(&number[alarmflag[i][5]][0]);
	  lcdwrite_cmd(0xb9);
      lcdwrite_cmd(0x40);
      display(&number[alarmflag[i][0]][8]);
	  display(&number[alarmflag[i][1]][8]);
	  display(&set[31][8]);
	  display(&number[alarmflag[i][2]][8]);
	  display(&number[alarmflag[i][3]][8]);
	  display(&set[31][8]);
	  display(&number[alarmflag[i][4]][8]);
	  display(&number[alarmflag[i][5]][8]);
	  lcddispon();
	 CS1=0;CS2=1;
	     delay1();
         lcdwrite_cmd(0xba);
         lcdwrite_cmd(0x60);
         display(&NO[0][0]);
         display(&NO[1][0]);
		 display(&NO[2][0]);
	     display(&number[i+1][0]);
         lcdwrite_cmd(0xbb);
         lcdwrite_cmd(0x60);
         display(&NO[0][8]);
         display(&NO[1][8]);
		 display(&NO[2][8]);
	     display(&number[i+1][8]);
		 lcddispon();

	   CS1=1;CS2=0;
	     delay1();
        lcdwrite_cmd(0xba);
        lcdwrite_cmd(0x48);
		display(&number[alarmflag[i][10]/10][0]);
		display(&number[alarmflag[i][10]%10][0]);
		display(&set[32][0]);
		 lcdwrite_cmd(0xbb);
        lcdwrite_cmd(0x48);
		display(&number[(alarmflag[i][10]/10)][8]);
		display(&number[(alarmflag[i][10]%10)][8]);
		display(&set[32][8]);
		lcddispon();

		
		 CS1=0;CS2=1;
	     delay1();
	     lcdwrite_cmd(0xbc);
         lcdwrite_cmd(0x60);
	     display(&set[26][0]);
	     display(&set[27][0]);
	     display(&set[33][0]);
	     lcdwrite_cmd(0xbd);
         lcdwrite_cmd(0x60);
	     display(&set[26][8]);
	     display(&set[27][8]);
	     display(&set[33][8]);
	  	 lcddispon();
		 CS1=0;CS2=1;
	     delay1();
	     lcdwrite_cmd(0xbe);
         lcdwrite_cmd(0x60);
	     display(&set[26][0]);
	     display(&set[28][0]);
	     display(&set[33][0]);
	     lcdwrite_cmd(0xbf);
         lcdwrite_cmd(0x60);
	     display(&set[26][8]);
	     display(&set[28][8]);
	     display(&set[33][8]);
		 lcddispon();

		  CS1=1;CS2=0;
	      delay1();
		 lcdwrite_cmd(0xbc);
         lcdwrite_cmd(0x40);
		 display(&number[alarmflag[i][8]/10][0]);
		 display(&number[alarmflag[i][8]%10][0]);
		 display(&set[32][0]);
		 lcdwrite_cmd(0xbd);
         lcdwrite_cmd(0x40);
		 display(&number[alarmflag[i][8]/10][8]);
		 display(&number[alarmflag[i][8]%10][8]);
		 display(&set[32][8]);
		 lcdwrite_cmd(0xbe);
         lcdwrite_cmd(0x40);
		 display(&number[alarmflag[i][9]/10][0]);
		 display(&number[alarmflag[i][9]%10][0]);
		 display(&set[32][0]);
		 lcdwrite_cmd(0xbf);
         lcdwrite_cmd(0x40);
		 display(&number[alarmflag[i][9]/10][8]);
		 display(&number[alarmflag[i][9]%10][8]);
		 display(&set[32][8]);
		 lcddispon();
		}
		keycounter=0;
		while(keycounter==0){};
	   i++;
	   if(i<3)	goto ts;
	}

 void main()
{
   uchar i;
   TMOD=0x20;//定时器1工作模式2
   TL1=0xFD;
   TH1=0xFD;//波特率为9600
   TR1=1;
   SCON=0x50;//工作在模式1
   PCON=0x00;
   ES=0;
   key_clk=1;
   key_data=1;
    EX0=1;
    IT0=0;//电平触发
    EA=0;
	RST=0;
	delay();
	RST=1;
	delay();
	lcdinit();
	 lcddispon();
	 delay();
	lcdclrall();
	 lcddispon();
	 set_1302(settime);
	 liftpage1();
	 lcddispon();
	 liftpage2();
	 rightpage();
	 alarmcontorl();
    searchROM();
    init();
	 EA=1;
	while(1)
  {
   for(i=0;i<3;i++)
   { EA=0;
   get_sec();
   get_min();
   get_hr();
   get_day();
   get_moth();
   get_year();
   //gettemper(i);
   EA=1;
   dectemper(i);
   liftpage2();lcddispon();
   rightpage();lcddispon();
   alarmcontorl();
   delay750ms();
   if(key==0x7c)
   {
   lcdclrall();set_time();
   liftpage1();
   liftpage2();
   rightpage();
   }
    if(key==0x4a)
   {
   lcdclrall();setTHL();
   liftpage1();
   liftpage2();
   rightpage();
   }
    if(key==0x71)
   {
   lookalarm();
   lcdclrall();
   liftpage1();
   liftpage2();
   rightpage();
   }
   }
    TR1=1;
    TI=0;
   SBUF=temper[0][0];
   while(!TI){};
   TI=0;
   SBUF=temper[1][0];
   while(!TI){};
   TI=0;
   SBUF=temper[0][1];
   while(!TI){};
   TI=0;
   SBUF=temper[1][1];
   while(!TI){};
   TI=0;
   SBUF=temper[0][2];
   while(!TI){};
   TI=0;
   SBUF=temper[1][2];
    TR1=0;
  }
 }










⌨️ 快捷键说明

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