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

📄 yt_key.c.bak

📁 完成数据的采集
💻 BAK
📖 第 1 页 / 共 2 页
字号:
	  	if(LCM->Lcd_add==0)
	  	{	
	  		--Data->_TemOver;
	  		if(Data->_TemOver>=200)
	  		{
	  			if(Data->_TemFault>5)
	  			Data->_TemOver=Data->_TemFault-5;
	  			else Data->_TemOver=Data->_TemFault;
	  		}
	  	}
	  	if(LCM->Lcd_add==1)
	  	{	
	  		--Data->_TemFast;
	  		if(Data->_TemFast<1)Data->_TemFast=20;
	  	}
	  	if(LCM->Lcd_add==2)
	  	{	
	  		--Data->_TemTime;
	  		if(Data->_TemTime<1)Data->_TemTime=99;
	  	}
	  	if(LCM->Lcd_add==3)
	  	{	
	  		--Data->_TemRoom;
	  		if(Data->_TemRoom<1)Data->_TemRoom=50;
	  	}	  	
	  	break;
	 case C_LCM_SET2:
	 	  if(--Data->_TemFault<=Data->_TemOver)Data->_TemFault=99;
			break;
	 case C_LCM_SET3:
	 	if(LCM->Lcd_add==0)
	 	{
		  if(--Data->_Yorder>=17)Data->_Yorder=17;
		} 
		else
		{
			Data->_Channal^=0x1;
		}
		  break;
	 case C_LCM_SET4:
	 	  if(LCM->Lcd_add==0)
	 	  Data->_Rate^=8;
                  if(LCM->Lcd_add==1)
                  {
                    a=Data->_Rate&7;
                    if(--a>=3)a=2;
                    Data->_Rate&=0xfff8;
                    Data->_Rate|=a;
                    Uart1Init();
                    Init2515(Data->_Rate&3);    
                  }
                  if(LCM->Lcd_add==2)
                  {
                    --Data->_Address;
                    if(Data->_Address==0)Data->_Address=255;
                  }
	 	  break;
	 case	C_LCM_SET5:
	 	if(LCM->Lcd_add==0)
	 		{
	 			if(Year[6]>0x99)Year[6]=0x99;
	 			--Year[6];
	 			a=Year[6];
	 			if((a&0x0f)>=10)Year[6]&=0xf0,Year[6]|=0x9;
	 			if(Year[6]>0x99)Year[6]=0x99;

	 			 a=Year[5]>>4;
         a=a*10+Year[5]&0x0f;
         a=Year_TAB[a];
	 			if(Year[4]>a)
                                Year[4]=a;
	 		}
	 		if(LCM->Lcd_add==1)
	 		{
	 			if(Year[5]>0x12)Year[6]=0x12;
	 			--Year[5];
	 			a=Year[5];
	 			if((a&0x0f)>=10)Year[5]=0x9;
	 			
	 			if(Year[5]==0)Year[5]=0x12;
	 			if(Year[5]==2)
	 			{
                                        a=Year[5]>>4;
                                        a=a*10+Year[5]&0x0f;
	 				if((a&0x3)==0)
	 				{
	 					if(Year[4]>0x29)Year[4]=0x29;
	 				}else
	 				{
	 					if(Year[4]>0x28)Year[4]=0x28;
	 				}	 					
	 			} 			
	 		}
	 	if(LCM->Lcd_add==2)
	 		{
                          a=Year[6]>>4;
                          a=a*10+Year[6]&0x0f;
                           b=Year[5]>>4;
                          b=b*10+Year[5]&0x0f;
	 			if(--Year[4]>0x31)
	 			Year[4]=Year_TAB[b]; 	  			 			
	 			if((Year[4]&0x0f)>=10)Year[4]&=0xf0,Year[4]|=9;
	 			if(Year[4]==0)
                                {
                                	
                                  Year[4]=Year_TAB[b];
                                  if((Year[5]==2)&&((a&3)==0))
                                  Year[4]=0x29;
                                
                                }
	 			
	 		}
	 	if(LCM->Lcd_add==3)
	 		{
	 			if(Year[3]>6)Year[3]=6;
	 			if(--Year[3]>=7)Year[3]=6;	
	 			 			
	 		}
	 	if(LCM->Lcd_add==4)
	 		{
	 			if(Year[2]>0x24)Year[3]=0x24;
	 			--Year[2];	 			
	 			if((Year[2]&0x0f)>=10)Year[2]&=0xf0,Year[2]|=0x9;	
	 			if(Year[2]>=0x24)Year[2]=0x23;				
	 		}	
	 		if(LCM->Lcd_add==5)
	 		{
	 			if(Year[1]>0x59)Year[3]=0x59;
	 			--Year[1];	 			
	 			if((Year[1]&0x0f)>=10)Year[1]&=0xf0,Year[1]|=0x9;
	 			if(Year[1]>=0x59)Year[1]=0x59;				
	 		}	
	 		WriteYear(&Year);
	 	  break;
	 	case C_LCM_SET6:
	   if(LCM->Lcd_add==0)
	   {
	   	if(Data->_Channal&0x70)Data->_Channal&=0xff8f;
	   	else									 Data->_Channal|=0x70;
	   }	
	    if(LCM->Lcd_add==1)
	   {
	   	if(Data->_Channal&0x380)Data->_Channal&=0xfc7f;
	   	else									  Data->_Channal|=0x380;
	   }	
	    if(LCM->Lcd_add==2)
	   {
	   	if(Data->_Channal&0x1c00)Data->_Channal&=0xe3ff;
	   	else									  Data->_Channal|=0x1c00;
	   }	
	    if(LCM->Lcd_add==3)
	   {
	   	if(Data->_Channal&0xe000)Data->_Channal&=0x1fff;
	   	else									  Data->_Channal|=0xe000;
	   }		
	  break;
	  case C_LCM_SET7:
	  if(LCM->Lcd_add==0)Data->_Channal^=0x10;
	  if(LCM->Lcd_add==1)Data->_Channal^=0x20;
	  if(LCM->Lcd_add==2)Data->_Channal^=0x40;		
	  if(LCM->Lcd_add==3)Data->_Channal^=0x80;
	  if(LCM->Lcd_add==4)Data->_Channal^=0x100;
	  if(LCM->Lcd_add==5)Data->_Channal^=0x200;
	  if(LCM->Lcd_add==6)Data->_Channal^=0x400;		
	  if(LCM->Lcd_add==7)Data->_Channal^=0x800;
	  if(LCM->Lcd_add==8)Data->_Channal^=0x1000;
	  if(LCM->Lcd_add==9)Data->_Channal^=0x2000;
	  if(LCM->Lcd_add==10)Data->_Channal^=0x4000;		
	  if(LCM->Lcd_add==11)Data->_Channal^=0x8000;		
	   break;	
	  		
	}
      return  0;
} 
Int16U	key_add(KEY *KEYA,_LCD *LCM)
{
	Int16U	a;
	switch(LCM->Mode)
	{
		case C_LCM_ALA_REG0:
		case C_LCM_ALA_REG1:
		case C_LCM_ALA_REG2:	
		case C_LCM_ALA_REG3:
		case C_LCM_ALA_REG4:
		case C_LCM_ALA_REG5:
		case C_LCM_ALA_REG6:	
			LCM->FLAG=1;
                        
			CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
			 
			if(--LCM->Mode>C_LCM_ALA_REG6)
			{
				  a=(ALAMCREG_History.Unit-1)/3;			  		
					LCM->Mode=a;
			}
			break;	
			
			
		case C_LCM_ALAMC:	
		case	C_LCM_TEMRH: 		
		case C_LCM_Mode0:
		case C_LCM_Mode1:
		case C_LCM_Mode2:
		case C_LCM_Mode3:	
		case C_LCM_Mode4:
		case C_LCM_Mode5:
		case C_LCM_Mode6:		
		case C_LCM_Mode0_1:	
		case C_LCM_Mode7:
		case C_LCM_Mode8:
		case C_LCM_Mode9:	
		case C_LCM_Mode10:
		case C_LCM_Mode11:
		case C_LCM_Mode12:
		case C_LCM_Mode13:
		case C_LCM_Mode14:
		case C_LCM_Mode15:
			LCM->FLAG=1;                      
			CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
			
			LCM->Mode=C_LCM_ALA_REG0;	
		break;
	  case C_LCM_SET:
	  case C_LCM_SET1:
	  case C_LCM_SET2:
	  	if(++LCM->Lcd_add>=4)LCM->Lcd_add=0;
	  break;
	 case C_LCM_SET3:
	   	if(LCM->Lcd_add==0)LCM->Lcd_add=1;
	   	else LCM->Lcd_add=0;
	  break;
	  case C_LCM_SET4:
	  if(++LCM->Lcd_add>=3)LCM->Lcd_add=0;
	  break;
	  
	  case C_LCM_SET5:
	  if(++LCM->Lcd_add>=6)LCM->Lcd_add=0;
	  break;
	   case C_LCM_SET6:
	  if(++LCM->Lcd_add>=4)LCM->Lcd_add=0;
	  	break;
	  case C_LCM_SET7:
	  if(++LCM->Lcd_add>=12)LCM->Lcd_add=0;
	  break;
	}
		return 0;
}
Int16U key_dec(KEY *KEYA,_LCD *LCM)
{
	Int16U	a;
	switch(LCM->Mode)
	{
		case C_LCM_ALA_REG0:
		case C_LCM_ALA_REG1:
		case C_LCM_ALA_REG2:	
		case C_LCM_ALA_REG3:
		case C_LCM_ALA_REG4:
		case C_LCM_ALA_REG5:
		case C_LCM_ALA_REG6:	
			
			LCM->FLAG=1;
                       
			if(++LCM->Mode>C_LCM_ALA_REG6)LCM->Mode=C_LCM_ALA_REG0;
			CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
			a=ALAMC_mode_setion(LCM->Mode,ALAMCREG_History.Unit);
			if(a==C_LCM_TEMRH)LCM->Mode=C_LCM_ALA_REG0;
			break;	
		
		
		case C_LCM_ALAMC:	
		case	C_LCM_TEMRH: 		
		case C_LCM_Mode0:
		case C_LCM_Mode1:
		case C_LCM_Mode2:
		case C_LCM_Mode3:	
		case C_LCM_Mode4:
		case C_LCM_Mode5:
		case C_LCM_Mode6:		
		case C_LCM_Mode0_1:		
		case C_LCM_Mode7:
		case C_LCM_Mode8:
		case C_LCM_Mode9:	
		case C_LCM_Mode10:
		case C_LCM_Mode11:
		case C_LCM_Mode12:
		case C_LCM_Mode13:
		case C_LCM_Mode14:
		case C_LCM_Mode15:
				
			LCM->FLAG=1;                      
     
			CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
			
			LCM->Mode=C_LCM_ALA_REG0;	
		break;
		case C_LCM_SET:
		case C_LCM_SET1:
	  	if(--LCM->Lcd_add>4)LCM->Lcd_add=3;
	        case C_LCM_SET2:
	  break;
	  case C_LCM_SET4:
	  if(--LCM->Lcd_add>=3)LCM->Lcd_add=2;
	  break;
	   case C_LCM_SET5:
	  if(--LCM->Lcd_add>=6)LCM->Lcd_add=5;
	  break;
	   case C_LCM_SET6:
	  if(--LCM->Lcd_add>=6)LCM->Lcd_add=3;
	  break;
	   case C_LCM_SET3:
	   	if(LCM->Lcd_add==0)LCM->Lcd_add=1;
	   	else LCM->Lcd_add=0;
	  break;
	   case C_LCM_SET7:
	  if(--LCM->Lcd_add>=12)LCM->Lcd_add=11;
	}
	return 0;
}
//***********************************************
void  Set_HISTORY(Int8U *p)
{
  Int16U  a;

  *p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  
  *++p=22;
   *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  
   *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=22;
  
   *++p=22;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  
   *++p=23;
  *++p=23;
  *++p=23;
  *++p=24;
  *++p=24;
  *++p=25;
  *++p=25;
  *++p=26;
  *++p=26;
  
  *++p=26;
  *++p=27;
  *++p=27;
  *++p=27;
  *++p=28;
  *++p=28;
  *++p=29;
  *++p=28;
  *++p=28;
  
     *++p=27;
  *++p=27;
  *++p=27;
  *++p=26;
  *++p=26;
  *++p=25;
  *++p=25;
  *++p=24;
  *++p=24;
  
     *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=23;
  *++p=22;
  
     *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  *++p=22;
  
  
    
  *++p=22;
   *++p=22;
  *++p=22;
  *++p=22;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
  *++p=21;
   *++p=22;
   *++p=22;
  *++p=22;
  *++p=22;
  *++p=21;
  *++p=21;
  *++p=21;
}
//***********************************************
//
//***********************************************
Int16U		keyserver(KEY *KEYA,_LCD *LCM,_yt *Data)
{
	 
	static		Int16U	BLKCounter=0;
  if(KEYA->execute!=0)BLKCounter=0;
  else
  {
  	if(BLKCounter<2000)BLKCounter++,GPIOB->ODR&=0Xdf;
  	else							GPIOB->ODR|=0X20;
  }  	
	if(KEYA->execute==0)return 0;	 
	 
	switch(KEYA->ID)
	{
		case C_keyID1:
			KEYA->ID=key_setion(KEYA,LCM);
			if(KEYA->ID==C_FM24C04)WriteFM24C04(0X64,Data);
			return 0;
			break;
		case C_keyID2:
			KEYA->ID=key_up(KEYA,LCM,Data);
			break;
		case C_keyID3:
			KEYA->ID=key_down(KEYA,LCM,Data);
			break;
		case C_keyID4:
			KEYA->ID=key_add(KEYA,LCM);
			break;
		case C_keyID5:
			KEYA->ID=key_dec(KEYA,LCM);
			break;
                 
			
	}
          
	return 0;
}

//////////////////////////////////////////////////









⌨️ 快捷键说明

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