forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-05-16 5ac1d0febb8de5e91ce2463baea68ddac3f66091
Function/VALVE/valve_control.c
@@ -33,13 +33,25 @@
   CloseIO(VALVE_FORCE_OPEN_PORT,VALVE_FORCE_OPEN_PIN);
}
void Valve_CTRL_GPIO_Init(void)
{
   Motor_AB_GPIO_Init();
   Motor_A_LOW;
   Motor_B_LOW;
   Motor_OP_CL_GPIO_Init_sleep_mode();
}
void ValveMotorOpenRun(void)
{
   Motor_AB_GPIO_Init();
   Motor_OP_CL_GPIO_Init();
   Motor_A_HIGH;
   Motor_B_HIGH;
   Motor_B_LOW;
   GPIO_EXTI_Init( Motor_OP_PORT, Motor_OP_PIN, EXTI_FALLING, ENABLE);
   GPIO_EXTI_Init( Motor_CL_PORT, Motor_CL_PIN, EXTI_FALLING, ENABLE);
}
@@ -49,7 +61,7 @@
   Motor_AB_GPIO_Init();
   Motor_OP_CL_GPIO_Init();
   Motor_A_LOW;
   Motor_B_LOW;
   Motor_B_HIGH;
   GPIO_EXTI_Init( Motor_OP_PORT, Motor_OP_PIN, EXTI_FALLING, ENABLE);
   GPIO_EXTI_Init( Motor_CL_PORT, Motor_CL_PIN, EXTI_FALLING, ENABLE);
}
@@ -61,7 +73,7 @@
   GPIO_EXTI_Init( Motor_OP_PORT, Motor_OP_PIN, EXTI_FALLING, DISABLE);
   GPIO_EXTI_Init( Motor_CL_PORT, Motor_CL_PIN, EXTI_FALLING, DISABLE);
   Motor_A_LOW;
   Motor_B_HIGH;
   Motor_B_LOW;
}
@@ -116,20 +128,20 @@
uint16_t GetValveRunMaxTime(CALIBER_TYPE caliber_type_l)
{
   switch (caliber_type_l){         
                  case DN25_TYPE: return VALVE_HADE_RUN_TIME_DN25 ;break;
                  case DN32_TYPE: return VALVE_HADE_RUN_TIME_DN32 ;break;
                  case DN40_TYPE: return VALVE_HADE_RUN_TIME_DN40 ;break;
                  case DN50_TYPE:   return VALVE_HADE_RUN_TIME_DN50 ;break;
                  case DN80_TYPE:   return VALVE_HADE_RUN_TIME_DN80 ;break;
                  case DN100_TYPE:   return VALVE_HADE_RUN_TIME_DN100 ;break;
                  case DN150_TYPE:   return VALVE_HADE_RUN_TIME_DN150 ;break;
                  case DN200_TYPE:   return VALVE_HADE_RUN_TIME_DN200 ;break;
                  default:   return VALVE_HADE_RUN_TIME_DN200 ;break;
                  case DN25_TYPE: return VALVE_HADE_RUN_TIME_DN25 ;
                  case DN32_TYPE: return VALVE_HADE_RUN_TIME_DN32 ;
                  case DN40_TYPE: return VALVE_HADE_RUN_TIME_DN40 ;
                  case DN50_TYPE:   return VALVE_HADE_RUN_TIME_DN50 ;
                  case DN80_TYPE:   return VALVE_HADE_RUN_TIME_DN80 ;
                  case DN100_TYPE:   return VALVE_HADE_RUN_TIME_DN100 ;
                  case DN150_TYPE:   return VALVE_HADE_RUN_TIME_DN150 ;
                  case DN200_TYPE:   return VALVE_HADE_RUN_TIME_DN200 ;
                  default:   return VALVE_HADE_RUN_TIME_DN200 ;
            }
}
void ValveCtrlHade(CALIBER_TYPE caliber_type_l)
void ValveCtrlHade(CALIBER_TYPE caliber_type_l,FUN_START_CTRL_PARA_T * sys_fun_run_ctrl_p)
{
   if(valve_ctrl_para_g.valve_ctrl_order == VC_OPEN){
      if(Read_OP_CL_VALVE_Status(0) == VALVE_OPEN){
@@ -217,10 +229,16 @@
      }
   }
   
   if((save_valve_para_g.valve_status==VALVE_OPENING)||(save_valve_para_g.valve_status==VALVE_CLOSING))
      sys_fun_run_ctrl_p->valve_ctrl_flag.running_flag = SET;
   else
      sys_fun_run_ctrl_p->valve_ctrl_flag.running_flag = RESET;
}
//·§ÃŲÙ×÷º¯Êý
//·§ÃŲÙ×÷º¯Êý£¬Èç¹û·§ÃÅÕý¿ª¹ý³ÌÖУ¬´¥·¢¹Ø·§£¬ÔòÐèҪֹͣ¿ª·§£¬×ª¶ø½øÐйط§
ErrorStatus ValveCtrlOrder(VALVE_CTEL_TYPE_T valve_ctrl_order_l) 
{
   switch(valve_ctrl_order_l){
@@ -288,12 +306,12 @@
   
}
void   valveCtrlPro(void) //?  Èç¹ûÒª²Ù×÷·§ÃÅÔòµ÷Óú¯ÊýValveCtrlOrder£¨VC_OPEN£©;Èë²Î´ú±í²Ù×÷ÄÚÈÝ
void   valveCtrlPro(FUN_START_CTRL_PARA_T * sys_fun_run_ctrl_p) //?  Èç¹ûÒª²Ù×÷·§ÃÅÔòµ÷Óú¯ÊýValveCtrlOrder£¨VC_OPEN£©;Èë²Î´ú±í²Ù×÷ÄÚÈÝ
{
   
   ValveForceOpenSignalCheck();//?Ç¿¿ªÅжϴ¦Àí
   
   ValveCtrlHade(equipment_basic_inf_g.caliber_type);//¹þµÂ·§ÃŲÙ×÷´¦Àíº¯Êý
   ValveCtrlHade(equipment_basic_inf_g.caliber_type,sys_fun_run_ctrl_p);//¹þµÂ·§ÃŲÙ×÷´¦Àíº¯Êý
   
   
}