Обновление

This commit is contained in:
cfif 2026-04-15 12:09:44 +03:00
parent f11d19da0f
commit 6041caf0d7
2 changed files with 13 additions and 13 deletions

View File

@ -75,8 +75,12 @@ void LinActuatorWork(tMma *env, tLinTaskActuator *linTaskActuator,
// Если команда выполнена
if (linTaskActuator->linCommandActuator[i].COM == LIN_ACT_CFR_SUCCESSFUL) {
#if (LOG_LIN_ACTUATOR == 1)
// LoggerInfoStatic(LOGGER, LOG_SIGN, "SUCCESSFUL COMMAND")
LoggerFormatInfo(LOGGER, LOG_SIGN, "BUS_ADR: %d - SUCCESSFUL COMMAND (UNSET BUSY)", i + 1)
#endif
actuator_Output_Model_local->Busy = 0;
// Разрешение обработки новой команды
env->isActuatorNoGetNextCommand = false;
// Установка входной команды в LIN_ACT_CFR_NONE
actuator_Command_Model_local->COM[i] = LIN_ACT_CFR_NONE;
}
@ -100,11 +104,8 @@ void LinActuatorWork(tMma *env, tLinTaskActuator *linTaskActuator,
actuator_Output_Model_local->in_Act_Reset[i] = linTaskActuator->linStateActuator[i].Reset_Slave;
}
env->isActuatorWorkBusy = setBusy(linTaskActuator);
// Заполнение данных ВХОДЫ МОДЕЛИ
actuator_Output_Model_local->Error_Connect = linTaskActuator->error_connect;
actuator_Output_Model_local->Busy = linTaskActuator->busy;
// LoggerFormatInfo(LOGGER, LOG_SIGN, "Busy = %d Error_Connect = %d", actuator_Output_Model_local->Busy, actuator_Output_Model_local->Error_Connect)
@ -116,8 +117,11 @@ void LinActuatorWork(tMma *env, tLinTaskActuator *linTaskActuator,
if (osMutexAcquire(env->ModelTask.access, 5000) == osOK) {
// Если принята команда
if (*triggerCommand == true) {
// Если прията команда и актуатор не занят (может принимать команды)
if ((*triggerCommand == true) && (env->isActuatorNoGetNextCommand == false)) {
*triggerCommand = false;
#if (LOG_LIN_ACTUATOR == 1)
if (isBroadCastTriggered(linTaskActuator, actuator_Command_Model_trigger_local)) {
LoggerInfoStatic(LOGGER, LOG_SIGN, "DETECT COMMAND (BROADCAST):")
@ -131,13 +135,9 @@ void LinActuatorWork(tMma *env, tLinTaskActuator *linTaskActuator,
#endif
//
actuator_Output_Model_local->Busy = 1;
}
// Если прията команда и актуатор не занят
if ((*triggerCommand == true) && (env->isActuatorWorkBusy == false)) {
*triggerCommand = false;
env->isActuatorWorkBusy = true;
// Запрещение обработки новой команды
env->isActuatorNoGetNextCommand = true;
// начало --- ВЫХОД МОДЕЛИ ----------

View File

@ -96,7 +96,7 @@ typedef struct {
ActuatorCmdBusInput actuator_Ch2_Input_Model_local_3;
bool isActuatorWorkBusy;
bool isActuatorNoGetNextCommand;
} tMma;