Добавлены датчики и IO UDS
This commit is contained in:
parent
7f41f90d47
commit
f510f6eeea
331
CanUds.c
331
CanUds.c
|
|
@ -776,7 +776,6 @@ static uint16_t InputOutputControlByIdentifier_2F(tCanUds *env) {
|
|||
}
|
||||
|
||||
|
||||
|
||||
return 4;
|
||||
}
|
||||
|
||||
|
|
@ -1804,6 +1803,7 @@ static uint16_t RequestTransferExit_37(tCanUds *env) {
|
|||
// конец --------------------------- RequestTransferExit ---------------------------------------------------------
|
||||
// конец --------------------------- RequestTransferExit ---------------------------------------------------------
|
||||
|
||||
// Тут данные должны быть с модели &env->Status_Sensor_For_Model_input и т.д.
|
||||
void CanUdsInput_Set_Model(tCanUds *env) {
|
||||
osStatus_t status = osOK;
|
||||
|
||||
|
|
@ -1829,7 +1829,7 @@ void CanUdsInput_Set_Model(tCanUds *env) {
|
|||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_IO);
|
||||
if (countQueue_space) {
|
||||
if (!countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_IO, &env->Status_IO_For_Model_input, 0, 0);
|
||||
}
|
||||
|
||||
|
|
@ -1869,124 +1869,198 @@ void CanUdsInput_Set_Model(tCanUds *env) {
|
|||
// Это на вход UDS
|
||||
static void CanUdsInput_Get_Model(tCanUds *env) {
|
||||
|
||||
osStatus_t status = osMessageQueueGet(env->queue_input_get_Status_Sensor, &env->Status_Sensor_For_Model_input, 0,
|
||||
0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Actuator_DoorsActuator, &env->Status_Sensor_For_Model_input,
|
||||
0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Duct_Tgt, &env->Status_Duct_Tgt_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Eva_Tgt, &env->Status_Eva_Tgt_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_IO, &env->Status_IO_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Pwm, &env->Status_Pwm_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_eComp, &env->Status_eComp_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_External, &env->Status_External_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_EMS, &env->Status_EMS_For_Model_input, 0, 0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Ionizer_Aroma, &env->Status_Ionizer_Aroma_For_Model_input, 0,
|
||||
0);
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Duct_Select, &env->Status_Duct_Select_For_Model_input, 0, 0);
|
||||
osStatus_t status = osOK;
|
||||
|
||||
//---------------------- tStatus_Sensor Status_Sensor; --------------------------------------------------------------
|
||||
uint32_t countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Sensor);
|
||||
|
||||
statusData.Status_Sensor.Ignition = env->Status_Sensor_For_Model_input.Ignition;
|
||||
statusData.Status_Sensor.Battery = env->Status_Sensor_For_Model_input.Battery;
|
||||
statusData.Status_Sensor.AMB = env->Status_Sensor_For_Model_input.AMB;
|
||||
statusData.Status_Sensor.Incar_FL = env->Status_Sensor_For_Model_input.Incar_FL;
|
||||
statusData.Status_Sensor.Incar_FR = env->Status_Sensor_For_Model_input.Incar_FR;
|
||||
statusData.Status_Sensor.Incar_RL = env->Status_Sensor_For_Model_input.Incar_RL;
|
||||
statusData.Status_Sensor.Incar_RR = env->Status_Sensor_For_Model_input.Incar_RR;
|
||||
statusData.Status_Sensor.Eva_F = env->Status_Sensor_For_Model_input.Eva_F;
|
||||
statusData.Status_Sensor.Eva_R = env->Status_Sensor_For_Model_input.Eva_R;
|
||||
statusData.Status_Sensor.Pressure = env->Status_Sensor_For_Model_input.Pressure;
|
||||
statusData.Status_Sensor.Duct_FL_Upper = env->Status_Sensor_For_Model_input.Duct_FL_Upper;
|
||||
statusData.Status_Sensor.Duct_FL_Lower = env->Status_Sensor_For_Model_input.Duct_FL_Lower;
|
||||
statusData.Status_Sensor.Duct_FR_Upper = env->Status_Sensor_For_Model_input.Duct_FR_Upper;
|
||||
statusData.Status_Sensor.Duct_FR_Lower = env->Status_Sensor_For_Model_input.Duct_FR_Lower;
|
||||
statusData.Status_Sensor.Duct_RL = env->Status_Sensor_For_Model_input.Duct_RL;
|
||||
statusData.Status_Sensor.Duct_RR = env->Status_Sensor_For_Model_input.Duct_RR;
|
||||
statusData.Status_Sensor.Duct_Side_FL = env->Status_Sensor_For_Model_input.Duct_Side_FL;
|
||||
statusData.Status_Sensor.Duct_Side_FR = env->Status_Sensor_For_Model_input.Duct_Side_FR;
|
||||
statusData.Status_Sensor.Duct_Side_RL = env->Status_Sensor_For_Model_input.Duct_Side_RL;
|
||||
statusData.Status_Sensor.Duct_Side_RR = env->Status_Sensor_For_Model_input.Duct_Side_RR;
|
||||
statusData.Status_Sensor.AQS = env->Status_Sensor_For_Model_input.AQS;
|
||||
if (countQueue_space == 0) {
|
||||
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Sensor, &env->Status_Sensor_For_Model_input,
|
||||
0,
|
||||
0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Sensor.Ignition = env->Status_Sensor_For_Model_input.Ignition;
|
||||
statusData.Status_Sensor.Battery = env->Status_Sensor_For_Model_input.Battery;
|
||||
statusData.Status_Sensor.AMB = env->Status_Sensor_For_Model_input.AMB;
|
||||
statusData.Status_Sensor.Incar_FL = env->Status_Sensor_For_Model_input.Incar_FL;
|
||||
statusData.Status_Sensor.Incar_FR = env->Status_Sensor_For_Model_input.Incar_FR;
|
||||
statusData.Status_Sensor.Incar_RL = env->Status_Sensor_For_Model_input.Incar_RL;
|
||||
statusData.Status_Sensor.Incar_RR = env->Status_Sensor_For_Model_input.Incar_RR;
|
||||
statusData.Status_Sensor.Eva_F = env->Status_Sensor_For_Model_input.Eva_F;
|
||||
statusData.Status_Sensor.Eva_R = env->Status_Sensor_For_Model_input.Eva_R;
|
||||
statusData.Status_Sensor.Pressure = env->Status_Sensor_For_Model_input.Pressure;
|
||||
statusData.Status_Sensor.Duct_FL_Upper = env->Status_Sensor_For_Model_input.Duct_FL_Upper;
|
||||
statusData.Status_Sensor.Duct_FL_Lower = env->Status_Sensor_For_Model_input.Duct_FL_Lower;
|
||||
statusData.Status_Sensor.Duct_FR_Upper = env->Status_Sensor_For_Model_input.Duct_FR_Upper;
|
||||
statusData.Status_Sensor.Duct_FR_Lower = env->Status_Sensor_For_Model_input.Duct_FR_Lower;
|
||||
statusData.Status_Sensor.Duct_RL = env->Status_Sensor_For_Model_input.Duct_RL;
|
||||
statusData.Status_Sensor.Duct_RR = env->Status_Sensor_For_Model_input.Duct_RR;
|
||||
statusData.Status_Sensor.Duct_Side_FL = env->Status_Sensor_For_Model_input.Duct_Side_FL;
|
||||
statusData.Status_Sensor.Duct_Side_FR = env->Status_Sensor_For_Model_input.Duct_Side_FR;
|
||||
statusData.Status_Sensor.Duct_Side_RL = env->Status_Sensor_For_Model_input.Duct_Side_RL;
|
||||
statusData.Status_Sensor.Duct_Side_RR = env->Status_Sensor_For_Model_input.Duct_Side_RR;
|
||||
statusData.Status_Sensor.AQS = env->Status_Sensor_For_Model_input.AQS;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------- Status_Actuator_DoorsActuator ---------------------------------------------------------------
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Actuator_DoorsActuator);
|
||||
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Def = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Def;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SFL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SFL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CFL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CFL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_1FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_1FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_2FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_2FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CFR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CFR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SFR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SFR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_1FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_1FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_2FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_2FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SRL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SRL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CRL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CRL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_RL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_RL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CRR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CRR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SRR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SRR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_RR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_RR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp1_FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp1_FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp2_FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp2_FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp1_FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp1_FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp2_FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp2_FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp_RL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp_RL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp_RR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp_RR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_REC = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_REC;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_OSA = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_OSA;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_SealingValve = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_SealingValve;
|
||||
if (countQueue_space == 0) {
|
||||
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Actuator_DoorsActuator,
|
||||
&env->Status_Sensor_For_Model_input,
|
||||
0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Def = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Def;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SFL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SFL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CFL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CFL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_1FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_1FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_2FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_2FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CFR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CFR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SFR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SFR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_1FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_1FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_2FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_2FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SRL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SRL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CRL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CRL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_RL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_RL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_CRR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_CRR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Vent_SRR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Vent_SRR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Foot_RR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Foot_RR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp1_FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp1_FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp2_FL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp2_FL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp1_FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp1_FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp2_FR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp2_FR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp_RL = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp_RL;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_Temp_RR = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_Temp_RR;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_REC = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_REC;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_OSA = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_OSA;
|
||||
statusData.Status_Actuator_DoorsActuator_FB.Motor_SealingValve = env->Status_Actuator_DoorsActuator_For_Model_input.Motor_SealingValve;
|
||||
}
|
||||
}
|
||||
//---------------------- Status_Duct_Tgt -----------------------------------------------------------------------------
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Duct_Tgt);
|
||||
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Vent_FL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Vent_FL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Foot_FL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Foot_FL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Vent_FR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Vent_FR;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Foot_FR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Foot_FR;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_RL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_RL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_RR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_RR;
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Duct_Tgt, &env->Status_Duct_Tgt_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Vent_FL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Vent_FL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Foot_FL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Foot_FL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Vent_FR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Vent_FR;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_Foot_FR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_Foot_FR;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_RL = env->Status_Duct_Tgt_For_Model_input.DuctTgt_RL;
|
||||
statusData.Status_Duct_Tgt_FB.DuctTgt_RR = env->Status_Duct_Tgt_For_Model_input.DuctTgt_RR;
|
||||
}
|
||||
}
|
||||
//---------------------- Status_Eva_Tgt ------------------------------------------------------------------------------
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Eva_Tgt);
|
||||
|
||||
statusData.Status_Eva_Tgt_FB.EvaTgt_F = env->Status_Eva_Tgt_For_Model_input.EvaTgt_F;
|
||||
statusData.Status_Eva_Tgt_FB.EvaTgt_R = env->Status_Eva_Tgt_For_Model_input.EvaTgt_R;
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Eva_Tgt, &env->Status_Eva_Tgt_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Eva_Tgt_FB.EvaTgt_F = env->Status_Eva_Tgt_For_Model_input.EvaTgt_F;
|
||||
statusData.Status_Eva_Tgt_FB.EvaTgt_R = env->Status_Eva_Tgt_For_Model_input.EvaTgt_R;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------- Status_IO -----------------------------------------------------------------------------------
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_IO);
|
||||
|
||||
statusData.Status_IO_FB._2_Way_Valve = env->Status_IO_For_Model_input._2_Way_Valve;
|
||||
statusData.Status_IO_FB.IncarMotor_Front = env->Status_IO_For_Model_input.IncarMotor_Front;
|
||||
statusData.Status_IO_FB.IncarMotor_Rear = env->Status_IO_For_Model_input.IncarMotor_Rear;
|
||||
statusData.Status_IO_FB.ShutOff_Chiller = env->Status_IO_For_Model_input.ShutOff_Chiller;
|
||||
statusData.Status_IO_FB.ShutOff_Front = env->Status_IO_For_Model_input.ShutOff_Front;
|
||||
statusData.Status_IO_FB.ShutOff_Rear = env->Status_IO_For_Model_input.ShutOff_Rear;
|
||||
statusData.Status_IO_FB.PTC_1 = env->Status_IO_For_Model_input.PTC_1;
|
||||
statusData.Status_IO_FB.PTC_2 = env->Status_IO_For_Model_input.PTC_2;
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_IO, &env->Status_IO_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
|
||||
statusData.Status_IO_FB._2_Way_Valve = env->Status_IO_For_Model_input._2_Way_Valve;
|
||||
statusData.Status_IO_FB.IncarMotor_Front = env->Status_IO_For_Model_input.IncarMotor_Front;
|
||||
statusData.Status_IO_FB.IncarMotor_Rear = env->Status_IO_For_Model_input.IncarMotor_Rear;
|
||||
statusData.Status_IO_FB.ShutOff_Chiller = env->Status_IO_For_Model_input.ShutOff_Chiller;
|
||||
statusData.Status_IO_FB.ShutOff_Front = env->Status_IO_For_Model_input.ShutOff_Front;
|
||||
statusData.Status_IO_FB.ShutOff_Rear = env->Status_IO_For_Model_input.ShutOff_Rear;
|
||||
statusData.Status_IO_FB.PTC_1 = env->Status_IO_For_Model_input.PTC_1;
|
||||
statusData.Status_IO_FB.PTC_2 = env->Status_IO_For_Model_input.PTC_2;
|
||||
}
|
||||
}
|
||||
//---------------------- Status_Pwm ----------------------------------------------------------------------------------
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Pwm);
|
||||
|
||||
statusData.Status_Pwm_FB.Pwm_Front = env->Status_Pwm_For_Model_input.Pwm_Front;
|
||||
statusData.Status_Pwm_FB.Pwm_Rear = env->Status_Pwm_For_Model_input.Pwm_Rear;
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Pwm, &env->Status_Pwm_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Pwm_FB.Pwm_Front = env->Status_Pwm_For_Model_input.Pwm_Front;
|
||||
statusData.Status_Pwm_FB.Pwm_Rear = env->Status_Pwm_For_Model_input.Pwm_Rear;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------- Status_eComp---------------------------------------------------------------------------------
|
||||
statusData.Status_eComp_FB.eComp_Statue_Request = env->Status_eComp_For_Model_input.eComp_Statue_Request;
|
||||
statusData.Status_eComp_FB.Pwm_Front = env->Status_eComp_For_Model_input.Pwm_Front;
|
||||
statusData.Status_eComp_FB.LowTempValve = env->Status_eComp_For_Model_input.LowTempValve;
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_eComp);
|
||||
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_eComp, &env->Status_eComp_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
|
||||
statusData.Status_eComp_FB.eComp_Statue_Request = env->Status_eComp_For_Model_input.eComp_Statue_Request;
|
||||
statusData.Status_eComp_FB.Pwm_Front = env->Status_eComp_For_Model_input.Pwm_Front;
|
||||
statusData.Status_eComp_FB.LowTempValve = env->Status_eComp_For_Model_input.LowTempValve;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------- Status_External------------------------------------------------------------------------------
|
||||
statusData.Status_External_FB.CoolingFan = env->Status_External_For_Model_input.CoolingFan;
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_External);
|
||||
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_External, &env->Status_External_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
|
||||
statusData.Status_External_FB.CoolingFan = env->Status_External_For_Model_input.CoolingFan;
|
||||
}
|
||||
}
|
||||
//---------------------- Status_EMS-----------------------------------------------------------------------------------
|
||||
statusData.Status_EMS_FB.EMS_Chiller_Req = env->Status_EMS_For_Model_input.EMS_Chiller_Req;
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_EMS);
|
||||
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_EMS, &env->Status_EMS_For_Model_input, 0, 0);
|
||||
|
||||
if (status == osOK) {
|
||||
|
||||
statusData.Status_EMS_FB.EMS_Chiller_Req = env->Status_EMS_For_Model_input.EMS_Chiller_Req;
|
||||
}
|
||||
}
|
||||
//---------------------- Status_Ionizer_Aroma-------------------------------------------------------------------------
|
||||
statusData.Status_Ionizer_Aroma_FB.Ionizer = env->Status_Ionizer_Aroma_For_Model_input.Ionizer;
|
||||
statusData.Status_Ionizer_Aroma_FB.AromatizationIntensivity = env->Status_Ionizer_Aroma_For_Model_input.AromatizationIntensivity;
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Ionizer_Aroma);
|
||||
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Ionizer_Aroma,
|
||||
&env->Status_Ionizer_Aroma_For_Model_input, 0,
|
||||
0);
|
||||
if (status == osOK) {
|
||||
statusData.Status_Ionizer_Aroma_FB.Ionizer = env->Status_Ionizer_Aroma_For_Model_input.Ionizer;
|
||||
statusData.Status_Ionizer_Aroma_FB.AromatizationIntensivity = env->Status_Ionizer_Aroma_For_Model_input.AromatizationIntensivity;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------- Status_Duct_Select-------------------------------------------------------------------------
|
||||
statusData.Status_Duct_Select_FB.Duct_FL = env->Status_Duct_Select_For_Model_input.Duct_FL;
|
||||
statusData.Status_Duct_Select_FB.Duct_FR = env->Status_Duct_Select_For_Model_input.Duct_FR;
|
||||
statusData.Status_Duct_Select_FB.Duct_RL = env->Status_Duct_Select_For_Model_input.Duct_RL;
|
||||
statusData.Status_Duct_Select_FB.Duct_RR = env->Status_Duct_Select_For_Model_input.Duct_RR;
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Duct_Select);
|
||||
|
||||
if (countQueue_space == 0) {
|
||||
status = osMessageQueueGet(env->queue_input_get_Status_Duct_Select, &env->Status_Duct_Select_For_Model_input, 0,
|
||||
0);
|
||||
|
||||
if (status == osOK) {
|
||||
statusData.Status_Duct_Select_FB.Duct_FL = env->Status_Duct_Select_For_Model_input.Duct_FL;
|
||||
statusData.Status_Duct_Select_FB.Duct_FR = env->Status_Duct_Select_For_Model_input.Duct_FR;
|
||||
statusData.Status_Duct_Select_FB.Duct_RL = env->Status_Duct_Select_For_Model_input.Duct_RL;
|
||||
statusData.Status_Duct_Select_FB.Duct_RR = env->Status_Duct_Select_For_Model_input.Duct_RR;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -2106,20 +2180,69 @@ void CanUdsOutput_Set_Model(tCanUds *env) {
|
|||
env->Status_Duct_Select_For_Model_output.Duct_RR = statusData.Status_Duct_Select.Duct_RR;
|
||||
|
||||
|
||||
osStatus_t status = osMessageQueuePut(env->queue_input_get_Status_Sensor, &env->Status_Set_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Actuator_DoorsActuator,
|
||||
&env->Status_Actuator_DoorsActuator_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Duct_Tgt, &env->Status_Duct_Tgt_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Eva_Tgt, &env->Status_Eva_Tgt_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_IO, &env->Status_IO_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Pwm, &env->Status_Pwm_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_eComp, &env->Status_eComp_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_External, &env->Status_External_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_EMS, &env->Status_EMS_For_Model_output, 0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Ionizer_Aroma, &env->Status_Ionizer_Aroma_For_Model_output,
|
||||
0, 0);
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Duct_Select, &env->Status_Duct_Select_For_Model_output, 0,
|
||||
0);
|
||||
osStatus_t status = osOK;
|
||||
|
||||
uint32_t countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Sensor);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Sensor, &env->Status_Set_For_Model_output, 0,
|
||||
0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Actuator_DoorsActuator);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Actuator_DoorsActuator,
|
||||
&env->Status_Actuator_DoorsActuator_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Duct_Tgt);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Duct_Tgt, &env->Status_Duct_Tgt_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Eva_Tgt);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Eva_Tgt, &env->Status_Eva_Tgt_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_IO);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_IO, &env->Status_IO_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Pwm);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Pwm, &env->Status_Pwm_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_eComp);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_eComp, &env->Status_eComp_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_External);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_External, &env->Status_External_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_EMS);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_EMS, &env->Status_EMS_For_Model_output, 0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Ionizer_Aroma);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Ionizer_Aroma,
|
||||
&env->Status_Ionizer_Aroma_For_Model_output,
|
||||
0, 0);
|
||||
}
|
||||
|
||||
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Duct_Select);
|
||||
if (countQueue_space) {
|
||||
status = osMessageQueuePut(env->queue_input_get_Status_Duct_Select, &env->Status_Duct_Select_For_Model_output,
|
||||
0,
|
||||
0);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue