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

📄 display.c

📁 完成数据的采集
💻 C
📖 第 1 页 / 共 4 页
字号:
				His->B_DISP=disp_Timer(&Year[0],Ddata->_A_Tembuf,Ddata->_A_RHbuf,&His->B_DISP,0);		;	
				if(His->B_DISP!=0)break;						
			}
				D->FLAG=0;	
			His->B_DISP=0;
		  if(Ddata->_Yorder>=18)Ddata->_Yorder=0;
			disp_line(His->SpaceCount,His->CTemper,Ddata->_Yorder,12);		
			break;		
		case	C_LCM_Mode0_17:
				His+=3;		
			if(D->FLAG==0)
			{ 
				if(His->B_DISP==0)break;
				His->B_DISP=disp_Timer(&Year[0],Ddata->_A_Tembuf,Ddata->_A_RHbuf,&His->B_DISP,0);		;	
				if(His->B_DISP!=0)break;						
			}
				D->FLAG=0;	
			His->B_DISP=0;
		  if(Ddata->_Yorder>=18)Ddata->_Yorder=0;
			disp_line(His->SpaceCount,His->CTemper,Ddata->_Yorder,13);	
			break;
		case	C_LCM_Mode0_18:	
				His+=3;		
			if(D->FLAG==0)
			{ 
				if(His->B_DISP==0)break;
				His->B_DISP=disp_Timer(&Year[0],Ddata->_A_Tembuf,Ddata->_A_RHbuf,&His->B_DISP,0);		;	
				if(His->B_DISP!=0)break;						
			}
				D->FLAG=0;	
			His->B_DISP=0;
		  if(Ddata->_Yorder>=18)Ddata->_Yorder=0;
			disp_line(His->SpaceCount,His->CTemper,Ddata->_Yorder,14);				
			break;
		case C_LCM_SET:
			if(D->FLAG!=0)
		 {
		 	LCMCmd(0x30);
			LCMCmd(1);
			LCMCmd(0x0C);    // display on
      LCMCmd(0x1);
			WriteChar(0x80,5,LCM_D0);
			WriteChar(0x90,5,LCM_D1);
			WriteChar(0x88,5,LCM_D2);
			WriteChar(0x98,5,LCM_D3);
			D->Timer=0;
		}
		  D->FLAG=0;
			++D->Timer;
      a=(Int8U)(Ddata->Sensor[0].Type)*3;
			if((D->Lcd_add==0)&&(D->Timer&4))			
			WriteChar(0x85,3,&LCM_EMPTY[0]);			
			else			WriteChar(0x85,3,&LCM_TYPE_TAB[a]);
	    a=(Int8U)(3*Ddata->Sensor[1].Type);
			if((D->Lcd_add==1)&&(D->Timer&4))
		  WriteChar(0x95,3,&LCM_EMPTY[0]);
			else			WriteChar(0x95,3,&LCM_TYPE_TAB[a]);
			 a=(Int8U)(3*Ddata->Sensor[2].Type); 
			if((D->Lcd_add==2)&&(D->Timer&4))
			WriteChar(0x8D,3,&LCM_EMPTY[0]);
			else			WriteChar(0x8d,3,&LCM_TYPE_TAB[a]);
			 a=(Int8U)(3*Ddata->Sensor[3].Type); 
			if((D->Lcd_add==3)&&(D->Timer&4))
			WriteChar(0x9d,3,&LCM_EMPTY[0]);
			else			WriteChar(0x9d,3,&LCM_TYPE_TAB[a]);
	 	
			break;
		case C_LCM_SET1:
				if(D->FLAG!=0)
		 {
			LCMCmd(1);
		 	WriteOneChar(0x80,'设',0);
			WriteOneChar(0x81,'置',0);
			WriteChar(0x83,4,TAB_OVER);
			WriteChar(0x90,7,SET_OVER1);//预警超温值
			WriteChar(0x88,8,SET_OVER2);//温升''''度每''''分钟
			WriteChar(0x98,7,SET_OVER3);//与室温相差''''度
			D->Timer=0;
		}
			D->FLAG=0,++D->Timer;;
			
		
			if(D->Lcd_add==0&&(D->Timer&4))WriteASCIIChar(0X95,32,32,0);							
			else			
			{      
				a=BCD(Ddata->_TemOver);
				WriteOneChar(0x95,a,1);
			}	
			if(D->Lcd_add==1&&(D->Timer&4)) WriteASCIIChar(0X8a,32,32,0);
			else
			{
				a=BCD(Ddata->_TemFast);
				WriteOneChar(0x8a,a,1);
			}				
			if(D->Lcd_add==2&&(D->Timer&4))WriteASCIIChar(0X8d,32,32,0);		
			else	
			{					
				a=BCD(Ddata->_TemTime);			
				WriteOneChar(0x8d,a,1);	
			}
			if(D->Lcd_add==3&&(D->Timer&4)) WriteASCIIChar(0X9d,32,32,0);
			else		
			{	
				a=BCD(Ddata->_TemRoom);
			  WriteOneChar(0x9d,a,1);
		  } 	
			break; 
		case C_LCM_SET2:
			if(D->FLAG!=0)
		 {
			LCMCmd(1);;
		  WriteChar(0x91,6,TAB_FAU);
			WriteChar(0x88,7,SET_FAU1);//事件超温值''''度
			D->Timer=0;
		}
		  D->Timer++;
			D->FLAG=0;				
			if(D->Timer&4)WriteASCIIChar(0X8d,32,32,0);
			else
			{
				a=BCD(Ddata->_TemFault);
				WriteOneChar(0x8d,a,1); 
			}			
			break; 
		case C_LCM_SET3:
			if(D->FLAG!=0)
		 {
			LCMCmd(1);;
		  WriteOneChar(0x83,'设',0);
			WriteOneChar(0x84,'置',0);
			WriteChar(0x90,8,SET_X);//横座标范围x:''分
			WriteChar(0x88,8,SET_Y);//
			WriteChar(0x98,6,SET_BELL);
		 }
		  D->Timer++;
			D->FLAG=0;		
				
			
			WriteOneChar(0x95,8,1);//(0x95,Ddata->_Xorder,1);
			if(((D->Timer&4)==0)||(D->Lcd_add!=0))
			{
				a=YTAB[Ddata->_Yorder];				
				a=BCD(a);
				if(a>=0x100)WriteASCIIChar(0X8d,':','1',0);
				else				WriteASCIIChar(0X8d,':',32,0);
				WriteOneChar(0x8e,a,1);
		  }else
		  {
                    WriteASCIIChar(0X8d,':',32,0);
		  	WriteASCIIChar(0X8e,32,32,0);
		  }
		  if(((D->Timer&4)==0)&&(D->Lcd_add==1))
		  {		  	
        
		  	WriteASCIIChar(0X9e,32,32,0);
		  }else
		  {
		  	if(Ddata->_Channal&0x1)WriteOneChar(0x9e,'开',0);
		  	else											WriteOneChar(0x9E,'关',0);
		  }
			break; 
		case C_LCM_SET4:
				if(D->FLAG!=0)
		 {
			LCMCmd(1);
			WriteOneChar(0x82,'设',0);
			WriteOneChar(0x83,'置',0);
			WriteOneChar(0x84,'通',0);
			WriteOneChar(0x85,'讯',0);
		 	WriteChar(0x90,5,SET_MESS);//设置通讯 速率:''  地址:''
			WriteChar(0x88,5,&SET_MESS[5]);
			WriteChar(0x98,5,&SET_MESS[10]); 
			 
		 }
			D->FLAG=0;
                        D->Timer++;
			if(D->Lcd_add==0&&(D->Timer&4))
			{
				WriteASCIIChar(0X95,32,32,0);
				WriteASCIIChar(0X96,32,32,0);
				WriteASCIIChar(0X97,32,32,0);
			}else
			{
				if(Ddata->_Rate&0x8)WriteChar(0x95,3,&SET_MESS[15]);
				else                WriteChar(0x95,3,&SET_MESS[18]);
		 }
	 		if(D->Lcd_add==1&&(D->Timer&4))
			{
				WriteASCIIChar(0X8d,32,32,0);
				WriteASCIIChar(0X8e,32,32,0);
				WriteASCIIChar(0X8f,32,32,0);
			}else
			{
				if((Ddata->_Rate&0x8)==0)
				{
					a=Ddata->_Rate&7;
					if(a==0)
					{
					 WriteASCIIChar(0X8d,'1','2',0);
					 WriteASCIIChar(0X8e,'5','k',0);
					}
					if(a==1)
					{
					 WriteASCIIChar(0X8d,32,'5',0);
					 WriteASCIIChar(0X8e,'0','k',0);
					}		
					if(a==2)
					{
					 WriteASCIIChar(0X8d,32,'1',0);
					 WriteASCIIChar(0X8e,'0','k',0);
					}				
		    }else
		    {
		    		a=Ddata->_Rate&7;
					if(a==0)
					{
					 WriteASCIIChar(0X8d,'9','6',0);
					 WriteASCIIChar(0X8e,'0','0',0);
					}
					if(a==1)
					{
					 WriteASCIIChar(0X8d,'4','8',0);
					 WriteASCIIChar(0X8e,'0','0',0);
					}		
					if(a==2)
					{
					 WriteASCIIChar(0X8d,'2','4',0);
					 WriteASCIIChar(0X8e,'0','0',0);
					}				
		    }		
	    }
	   if(D->Lcd_add==2&&(D->Timer&4))
	   {
				WriteASCIIChar(0X9d,32,32,0);
				WriteASCIIChar(0X9e,32,32,0);
				WriteASCIIChar(0X9f,32,32,0);
		}else	
	  {
	  	a=BCD(Ddata->_Address);  	 
	  	WriteOneChar(0x9d,a>>8,1);
	  	WriteOneChar(0x9e,a&0xff,1);
	  }		   	
	break;
 
	case C_LCM_SET5:
				if(D->FLAG!=0)
		 {
			LCMCmd(1);
			WriteOneChar(0x82,'设',0);
			WriteOneChar(0x83,'置',0);
			WriteOneChar(0x84,'时',0);
			WriteOneChar(0x85,'间',0);
		 	WriteChar(0x90,7,TIME_TAB);//设置通讯 速率:''  地址:''
			WriteOneChar(0x9b,'点',0);
			WriteOneChar(0x9d,'分',0);	
			
			WriteOneChar(0x8b,'星',0);
			WriteOneChar(0x8c,'期',0);			 
		 }
			D->FLAG=0;
      D->Timer++;
      if(D->Lcd_add==0&&(D->Timer&4))WriteASCIIChar(0X91,32,32,0);
      else		WriteOneChar(0x91,Year[6],1);
      if(D->Lcd_add==1&&(D->Timer&4))WriteASCIIChar(0X93,32,32,0);
      else		WriteOneChar(0x93,Year[5],1);
      if(D->Lcd_add==2&&(D->Timer&4))WriteASCIIChar(0X95,32,32,0);
      else		WriteOneChar(0x95,Year[4],1);
      a=Year[3]&7;
      a=WEEKCHAR[a];	
      if(D->Lcd_add==3&&(D->Timer&4))WriteASCIIChar(0X8d,32,32,0);
      else		WriteOneChar(0x8d,a,0);
      if(D->Lcd_add==4&&(D->Timer&4))WriteASCIIChar(0X9a,32,32,0);
      else		WriteOneChar(0x9a,Year[2],1);
      if(D->Lcd_add==5&&(D->Timer&4))WriteASCIIChar(0X9c,32,32,0);
      else		WriteOneChar(0x9c,Year[1],1);
      break;
 
 case C_LCM_SET6:
				if(D->FLAG!=0)
		 {
			LCMCmd(1);
			WriteChar(0x80,5,&TAB_CHANNAL[0]);
			WriteChar(0x90,5,&TAB_CHANNAL[5]);
			WriteChar(0x88,5,&TAB_CHANNAL[10]);
			WriteChar(0x98,5,&TAB_CHANNAL[15]);		 
		 }
			D->FLAG=0;
      D->Timer++;
      if(D->Lcd_add!=0||(D->Timer&4))
      {
       if((Ddata->_Channal&0X70)==0x70)WriteOneChar(0x85,'关',0);
       else 								 WriteOneChar(0x85,'开',0);
      }else   WriteOneChar(0x85,0x2020,0);
      
       if(D->Lcd_add!=1||(D->Timer&4))
      {
      	if((Ddata->_Channal&0X380)==0x380)WriteOneChar(0x95,'关',0);
      	else 								 WriteOneChar(0x95,'开',0);
      }else		 WriteOneChar(0x95,0x2020,0);
      	
       if(D->Lcd_add!=2||(D->Timer&4))	
      {
      	if((Ddata->_Channal&0X1C00)==0x1c00)WriteOneChar(0x8d,'关',0);
      	else 								 WriteOneChar(0x8d,'开',0);
      }else    WriteOneChar(0x8d,0x2020,0);
      	
        if(D->Lcd_add!=3||(D->Timer&4))	
      {	
      	if((Ddata->_Channal&0XE000)==0xe000)WriteOneChar(0x9d,'关',0);
      	else 								 WriteOneChar(0x9d,'开',0);
      }else	WriteOneChar(0x9d,0x2020,0);
       break;
   case C_LCM_SET7:
    	 if(D->FLAG!=0)
		 {
			LCMCmd(1);
			WriteChar(0x80,7,&TAB_CHANNAL_NODE[0]);
			WriteChar(0x90,7,&TAB_CHANNAL_NODE[8]);
			WriteChar(0x88,7,&TAB_CHANNAL_NODE[16]);
			WriteChar(0x98,7,&TAB_CHANNAL_NODE[24]);		 
		 }
			D->FLAG=0;
      D->Timer++;  
      if(D->Lcd_add!=0||(D->Timer&4))
      {
       if(Ddata->_Channal&0X10)WriteOneChar(0x81,'关',0);
       else 								 WriteOneChar(0x81,'开',0);
      }else   WriteOneChar(0x81,0x2020,0);
      
       if(D->Lcd_add!=1||(D->Timer&4))
      {
      	if(Ddata->_Channal&0X20)WriteOneChar(0x84,'关',0);
      	else 								 WriteOneChar(0x84,'开',0);
      }else		 WriteOneChar(0x84,0x2020,0);
      	
       if(D->Lcd_add!=2||(D->Timer&4))	
      {
      	if(Ddata->_Channal&0X40)WriteOneChar(0x87,'关',0);
      	else 								 WriteOneChar(0x87,'开',0);
      }else    WriteOneChar(0x87,0x2020,0);
      	
        if(D->Lcd_add!=3||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X80)WriteOneChar(0x91,'关',0);
      	else 								 WriteOneChar(0x91,'开',0);
      }else	WriteOneChar(0x91,0x2020,0);
      	
        if(D->Lcd_add!=4||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X100)WriteOneChar(0x94,'关',0);
      	else 								 WriteOneChar(0x94,'开',0);
      }else	WriteOneChar(0x94,0x2020,0);	
      	
      if(D->Lcd_add!=5||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X200)WriteOneChar(0x97,'关',0);
      	else 								 WriteOneChar(0x97,'开',0);
      }else	WriteOneChar(0x97,0x2020,0);	
      	
     if(D->Lcd_add!=6||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X400)WriteOneChar(0x89,'关',0);
      	else 								 WriteOneChar(0x89,'开',0);
      }else	WriteOneChar(0x89,0x2020,0);	
      	
      if(D->Lcd_add!=7||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X800)WriteOneChar(0x8C,'关',0);
      	else 								 WriteOneChar(0x8C,'开',0);
      }else	WriteOneChar(0x8C,0x2020,0);
      	
     if(D->Lcd_add!=8||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X1000)WriteOneChar(0x8F,'关',0);
      	else 								 WriteOneChar(0x8F,'开',0);
      }else	WriteOneChar(0x8F,0x2020,0);	
      	
     if(D->Lcd_add!=9||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X2000)WriteOneChar(0x99,'关',0);
      	else 								 WriteOneChar(0x99,'开',0);
      }else	WriteOneChar(0x99,0x2020,0);	
      	
     if(D->Lcd_add!=10||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X4000)WriteOneChar(0x9C,'关',0);
      	else 								 WriteOneChar(0x9C,'开',0);
      }else	WriteOneChar(0x9C,0x2020,0);	
      	
     if(D->Lcd_add!=11||(D->Timer&4))	
      {	
      	if(Ddata->_Channal&0X8000)WriteOneChar(0x9F,'关',0);
      	else 								 WriteOneChar(0x9F,'开',0);
      }else	WriteOneChar(0x9F,0x2020,0);	 
      	 		
       break; 
       
    }
}





⌨️ 快捷键说明

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