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

📄 b11_v3.3.3(f72).c

📁 基于pic16f72单片机的直流伺服电机控制
💻 C
📖 第 1 页 / 共 2 页
字号:
               else if(mad_Fevapo>1751-Dfe)
                  Temp_FEvapo=105;  
               else if(mad_Fevapo>1739-Dfe)
                  Temp_FEvapo=110;  
               else if(mad_Fevapo>1727-Dfe)
                  Temp_FEvapo=115;  
               else if(mad_Fevapo>1714-Dfe)
                  Temp_FEvapo=120;  
               else if(mad_Fevapo>1702-Dfe)
                  Temp_FEvapo=125;  
               else if(mad_Fevapo>1689-Dfe)
                  Temp_FEvapo=130;  
               else if(mad_Fevapo>1677-Dfe)
                  Temp_FEvapo=135;  
               else if(mad_Fevapo>1665-Dfe)
                  Temp_FEvapo=140;  
               else if(mad_Fevapo>1653-Dfe)
                  Temp_FEvapo=145;  
               else if(mad_Fevapo>1641-Dfe)
                  Temp_FEvapo=150;  
               else if(mad_Fevapo>1628-Dfe)
                  Temp_FEvapo=155;  
               else if(mad_Fevapo>1616-Dfe)
                  Temp_FEvapo=160;  
               else if(mad_Fevapo>1604-Dfe)
                  Temp_FEvapo=165;  
               else if(mad_Fevapo>1592-Dfe)
                  Temp_FEvapo=170;  
               else if(mad_Fevapo>1581-Dfe)
                  Temp_FEvapo=175;  
               else if(mad_Fevapo>1569-Dfe)
                  Temp_FEvapo=180;  
               else if(mad_Fevapo>1557-Dfe)
                  Temp_FEvapo=185;  
               else if(mad_Fevapo>1545-Dfe)
                  Temp_FEvapo=190;  
               else if(mad_Fevapo>1534-Dfe)
                  Temp_FEvapo=195;  
               else 
                  Temp_FEvapo=200;  
            }  
      }
   return(Temp_FEvapo);
} 
/**************************************************************
***************************************************************/ 
#define Fan_Offset	0
#define Mode_Offset	0
#define Temp_Offset	0
void main()
{
	char i;
	char T_val;
    char add=0;
    TRISA=0X3f;
    TRISB=0Xfd;
    TRISC=0X00;
	bitclr(PORTA,4);		//关闭a/c(压缩机)
    OPTION=0x07;
    AD_Init();
//    Time1_Init();
	

    U4_595=0x1f;
    U5_595=0;
 
    add=0;  
                         
    bitset(ADCON0,2);               //启动A/D转换
	bitset(T1CON,0);				//启动定时器1
    act_blwr=31;
	Fan=OFF;
	Fan_Old=OFF;
    PORTC=0;

	Set4094();
	for(i=0;i<100;i++)
	{
    	Delayms(8);
		asm("CLRWDT");
	}
    while(1)
    {	
		asm("CLRWDT");
		if(Flag_Tr==1)
		{
			Flag_Tr=0;
			Tin_N++;
			TTin+=AD_TR;
			if(Tin_N>=16)
			{
				 evap_front_flt=Cal_T_evap(TTin);
				 Tin_N=0;
				 TTin=0;
			}
		}	
    	if(Intake==1)			//内气模式
       	{
			REC_Mode; 
//			Intake_LED_ON;
    	}
		else			//外气模式
		{
    		FRS_Mode;
//			Intake_LED_OFF;
		}	
    	if((PORTB&0x30)!=0x30)
		{
			Delayms(8);
            asm("CLRWDT");
			if((PORTB&0x30)!=0x30)
			{
				Delayms(8);
                asm("CLRWDT");
				if((PORTB&0x30)==0x20)	//rdef key
				{
					
	                      if(Rear_State==ON)
    				{
    					Rear_State=OFF;
        				Rear_Time=0;
                           	bitset(U5_595,5);//modif 2006.9.19,RDEF=PLUS
                                  Set4094();    //2006.9.20
                                Delayms(50);   //2006.9.19wy_xie(5ms)06.1104(50MS)
        				bitclr(U5_595,5);
                           Delayms(30);       //06.11.04wy_xie(30ms)
                                   Set4094();
     				}
     				else
     				{
        				Rear_State=ON;
        				bitset(U5_595,5);   //modif 2006.9.19,RDEF=PLUS
                                       Set4094();
                           Delayms(50);                //2006.9.19wy_xie
                                      
				bitclr(U5_595,5);  //modif 2006.9.19,RDEF=PLUS
				  Delayms(30);     //2006.11.04wy_xie
                                  Set4094();        //2006.9.20
     				}	
				}
				else if((PORTB&0x30)==0x10)	//AC key
				{
					if(Compress_State==ON)
     				{
     					Compress_State=OFF;
						Compress_Old=OFF;
        				AC_LED_OFF;
     				}
     				else 
     				{
     					if(Fan>0)
						{
        					Compress_State=ON;
							Compress_Old=ON;
            				AC_LED_ON;
         				}
					}     
				}
				while((PORTB&0x30)!=0x30)
				{
					asm("CLRWDT");
					Delayms(5);
				}
			}
		}
        if(F_Mode==Face)
        {
			U5_595&=0xe0;
			bitset(U5_595,0);
		}
        else if(F_Mode==BL)
        {
			U5_595&=0xe0;
			bitset(U5_595,1);
		}
        else if(F_Mode==Foot)
        {
			U5_595&=0xe0;
			bitset(U5_595,2);
		}		
        else if(F_Mode==DF)
        {
			U5_595&=0xe0;
			bitset(U5_595,3);
			Intake=0;
		}
        else if(F_Mode==Def)
        {
			U5_595&=0xe0;
			bitset(U5_595,4);
			Intake=0;
        }
        if(Fan==OFF)
        {
			if(Fan_Old!=OFF)
			{
				Compress_Old=Compress_State;
				Fan_Old=OFF;
			}
        	act_blwr=31;
			Compress_State=OFF;
        }
        else 
        {
        	if(Fan==Low)
            {
				act_blwr=20;
            }
            else if(Fan==Mid)
            {
            	act_blwr=12;
            }
            else if(Fan==HI_M)
            {
            	act_blwr=6;
            }
            else
            {
                act_blwr=0;
            }
			if(Fan_Old==OFF)
			{
				Compress_State=Compress_Old;
				Fan_Old=Fan;
			}
       	}
		U4_595&=0xc0;
	   	U4_595|=act_blwr;
	
	
       	if(Compress_State==ON)
		{
			AC_LED_ON;
			if(evap_front_flt>45)
	   			bitset(PORTB,1);
			else if(evap_front_flt<25)
				bitclr(PORTB,1);
		}
		else
		{
			bitclr(PORTB,1);
			AC_LED_OFF;
		}
		asm("CLRWDT");
		//确定风量(06年8月18日第一次修改风量取值)
		if(AD_Fan==0)		//0.3
		{
			Fan=Hi;

		}
		else if(AD_Fan>3&&AD_Fan<26) //(0.07~~0.5,3~26)
		{
			Fan=HI_M;

		}
		else if(AD_Fan>33&&AD_Fan<62)//(0.647~1.2,31~62 06.11.04wy_xie)
		{
			Fan=Mid;

		}
		else if(AD_Fan>66&&AD_Fan<100)//(1.3~1.9,66~100)
		{
			Fan=Low;
		}
		else if(AD_Fan>105&&AD_Fan<135)  //(2.0~2.65,105~135)
		{
			Fan=OFF;
			Intake_LED_OFF;
		}
		else if(AD_Fan>143&&AD_Fan<164)  //(2.8~3.2,143~164)
		{
			Fan=Low;
			Intake=0;
			Intake_LED_OFF;
		}
		else if(AD_Fan>171&&AD_Fan<200)   //(3.37~3.9,171~200)
		{
			Fan=Mid;
			Intake=0;
			Intake_LED_OFF;
		}
		else if(AD_Fan>205&&AD_Fan<235)			//(4.03~4.6,205~235)
		{
			Fan=HI_M;
			Intake=0;
			Intake_LED_OFF;
		}
		else if(AD_Fan>244 )									//>4.6
		{
			Fan=Hi;
			Intake=0;
			Intake_LED_OFF;
		}

        if(AD_Fan<105)//
		{
			if(F_Mode==DF)
			{
				Intake_LED_ON;
				Intake=0;
			}
			else if(F_Mode==Def)
			{
				Intake=0;
				Intake_LED_ON;
			}
			else
			{
				Intake=1;
				Intake_LED_OFF;
			}
		}
//		确定模式
		if( AD_Mode==0)
		{
			F_Mode=Face;	
		}
		else if(AD_Mode>23 && AD_Mode<75)
		{
			F_Mode=BL;	
		}
		else if(AD_Mode>94 && AD_Mode<143)
		{
			F_Mode=Foot;	
		}
		else if(AD_Mode>164&& AD_Mode<214)
		{
			F_Mode=DF;	
		}
		else if(AD_Mode>224)
		{
			F_Mode=Def;	
		}

//		确定混合风门
		if( AD_Temp<34-Temp_Offset)
		{
			T_position=0;
			des_mix_pos=199+8;	//50;
		}
		else if(AD_Temp>33-Temp_Offset && AD_Temp<44-Temp_Offset)
		{
			T_position=1;
			des_mix_pos=192;	//62;
		}
		else if(AD_Temp>43-Temp_Offset && AD_Temp<59-Temp_Offset)
		{
			T_position=2;
			des_mix_pos=185;	//70;
		}
		else if(AD_Temp>58-Temp_Offset && AD_Temp<69-Temp_Offset)
		{
			T_position=3;
			des_mix_pos=175;	//77;
		}
		else if(AD_Temp>68-Temp_Offset && AD_Temp<85-Temp_Offset)
		{
			T_position=4;
			des_mix_pos=165;	//85;
		}
		else if(AD_Temp>84-Temp_Offset && AD_Temp<95-Temp_Offset)
		{
			T_position=5;
			des_mix_pos=152;	//95;
		}
		else if(AD_Temp>94-Temp_Offset && AD_Temp<110-Temp_Offset)
		{
			T_position=6;
			des_mix_pos=140;	//105;
		}
		else if(AD_Temp>109-Temp_Offset && AD_Temp<121-Temp_Offset)
		{
			T_position=7;
			des_mix_pos=130;	//112;
		}
		else if(AD_Temp>120-Temp_Offset && AD_Temp<136-Temp_Offset)
		{
			T_position=8;
			des_mix_pos=120;
		}
		else if(AD_Temp>135-Temp_Offset && AD_Temp<146-Temp_Offset)
		{
			T_position=9;
			des_mix_pos=112;	//130;
		}
		else if(AD_Temp>145-Temp_Offset && AD_Temp<161-Temp_Offset)
		{
			T_position=10;
			des_mix_pos=105;	//140;
		}
		else if(AD_Temp>160-Temp_Offset && AD_Temp<171-Temp_Offset)
		{
			T_position=11;
			des_mix_pos=95;		//152;
		}
		else if(AD_Temp>170-Temp_Offset && AD_Temp<187-Temp_Offset)
		{
			T_position=12;
			des_mix_pos=85;		//165;
		}
		else if(AD_Temp>186-Temp_Offset && AD_Temp<197-Temp_Offset)
		{
			T_position=13;
			des_mix_pos=77;		//175;
		}
		else if(AD_Temp>196-Temp_Offset && AD_Temp<212-Temp_Offset)
		{
			T_position=14;
			des_mix_pos=70;		//185;
		}
		else if(AD_Temp>211-Temp_Offset && AD_Temp<222-Temp_Offset)
		{
			T_position=15;
			des_mix_pos=62;		//192;
		}
		else 
		{
			T_position=16;
			des_mix_pos=50-4;		//199;
		}
		Set4094();
   }
}

⌨️ 快捷键说明

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