diff --git a/MainModesArbiter.c b/MainModesArbiter.c index 94d3e19..f97944e 100644 --- a/MainModesArbiter.c +++ b/MainModesArbiter.c @@ -47,14 +47,14 @@ void BTS5180_120(tMma *env, char *desc, uint16_t adc_value) { uint16_t ERROR_THRESHOLD_CODE = (uint16_t) (ERROR_THRESHOLD_V * 4095.0f / 5.0f); if (adc_value >= ERROR_THRESHOLD_CODE) { - LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Ошибка !!!", desc) + LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Error !!!", desc) } else { // Преобразование в напряжение float U = (float) adc_value * 5.0f / 4095.0f; float I = U / 1200; // Ток диагностики R = 1200 float Iout = I * kILIS; // Ток устройства LoggerFormatInfo(LOGGER, LOG_TASK_ARB, - "%s: Напряжение = %f Ток диагностики = %f Выходной = %f", + "%s: U = %f I = %f Iout = %f", desc, U, I, Iout) } @@ -70,7 +70,7 @@ void VN7008AJ(tMma *env, char *desc, uint16_t adc_value) { // 1. Проверка на ошибку if (adc_value >= ERROR_THRESHOLD_CODE) { - LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Ошибка !!!", desc) + LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Error !!!", desc) } else { // 2. Преобразование в напряжение @@ -81,7 +81,7 @@ void VN7008AJ(tMma *env, char *desc, uint16_t adc_value) { float Iout = Isense * K_TYPICAL; LoggerFormatInfo(LOGGER, LOG_TASK_ARB, - "%s: Напряжение = %f Ток диагностики = %f Выходной = %f", + "%s: U = %f I = %f Iout = %f", desc, vsense, Isense, Iout) } @@ -93,12 +93,12 @@ void ANALOG_SENSOR(tMma *env, char *desc, uint16_t adc_value) { // 1. Проверка на ошибку if (adc_value >= ERROR_THRESHOLD_CODE) { - LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Ошибка !!!", desc) + LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Error !!!", desc) } else { // Преобразование в напряжение float U = (float) adc_value * 5.0f / 4095.0f; - LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: Напряжение = %f", desc, U) + LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "%s: U = %f", desc, U) } } @@ -115,14 +115,15 @@ void LoadDataInFromModel(tMma *env) { temp1 = get_temperature_fast(env->adcTask0.ADC0_Data.Sensor_Ambient_Temp); temp2 = get_temperature_from_adc(env->adcTask0.ADC0_Data.Sensor_Ambient_Temp, ALG_STEINHART); - env->rtDW.controllerDataIncarInput.InIncarFL = env->adcTask0.ADC0_Data.Sensor_Ambient_Temp; - LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "Temp1 = %d; Temp2 = %d;", temp1, (int16_t) (temp2 * 10.0f)) + env->rtDW.ADC_Data_Model.Sensor_Incar_Temp_FL = env->adcTask0.ADC0_Data.Sensor_Ambient_Temp; + + LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "Temp1 = %d; Temp2 = %d;", temp1, (int16_t) (temp2 * 10.0f)) +/* // R1 = 91000 R2 = 20000 ((5 * (91000 + 20000)) / 20000 = 27.75 В) float U_IGN_CHECK = ((float) env->adcTask0.ADC0_Data.IGN_ANS * 27.75f) / 4095.0f; LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "U_IGN_CHECK = %f", U_IGN_CHECK) - BTS5180_120(env, "BTS5120_2EKA_ShutoffValvePowerTXV1", env->adcTask0.ADC0_Data.BTS5120_2EKA_ShutoffValvePowerTXV1); BTS5180_120(env, "BTS5120_2EKA_ShutoffValvePowerTXV2", @@ -164,7 +165,7 @@ void LoadDataInFromModel(tMma *env) { ANALOG_SENSOR(env, "Sensor_Front_Duct6", env->adcTask0.ADC0_Data.Sensor_Front_Duct6); ANALOG_SENSOR(env, "Pressure_DIAG", env->adcTask0.ADC0_Data.Pressure_DIAG); ANALOG_SENSOR(env, "Reserve_Sensor_Duct_Temp_2", env->adcTask0.ADC0_Data.Reserve_Sensor_Duct_Temp_2); - +*/ } osMutexRelease(env->adcTask0.access); @@ -175,7 +176,7 @@ void LoadDataInFromModel(tMma *env) { if (env->adcTask1.ADC_isUpdate) { env->adcTask1.ADC_isUpdate = false; - +/* // R1 = 91000 R2 = 16000 ((5 * (91000 + 16000)) / 16000 = 33.4375 В) float U_PBATT_CHECK = ((float) env->adcTask1.ADC1_Data.PBATT_CHECK * 33.4375f) / 4095.0f; LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "U_PBATT_CHECK = %f", U_PBATT_CHECK) @@ -194,7 +195,7 @@ void LoadDataInFromModel(tMma *env) { VN7008AJ(env, "VN7008AJ_FrontLINActuatorPowerDriverAB", env->adcTask1.ADC1_Data.VN7008AJ_FrontLINActuatorPowerDriverAB); VN7008AJ(env, "VN7008AJ_RearLINActuatorPowerDriverC", env->adcTask1.ADC1_Data.VN7008AJ_RearLINActuatorPowerDriverC); - +*/ } //temp2 = get_temperature_fast(env->adcTask1.ADC_Data[0], fast_lookup_KST45, 512); @@ -207,21 +208,11 @@ void LoadDataInFromModel(tMma *env) { if (osMutexAcquire(env->ModelTask.access, 5000) == osOK) { rtDW.t_now = GetSystemTick(); - memcpy(&rtDW.controllerDataIncarInput, &env->rtDW, sizeof(env->rtDW)); + memcpy(&rtDW, &env->rtDW.ADC_Data_Model, sizeof(rtDW.ADC_Data_Model)); if (env->ModelTask.isUpdate) { env->ModelTask.isUpdate = false; - - //bool IncarFLErr; - //bool IncarFRErr; - //bool IncarRLErr; - //bool IncarRRErr; - - - env->CCU_Errors.CCU_IncarTempErrF_Stat = IncarError.CANIncarTempErrF; // CANIncarTempErrF - env->CCU_Errors.CCU_IncarTempErrR_Stat = IncarError.CANIncarTempErrR; // CANIncarTempErrR - set_CCU_Errors(&env->canSpamTransmitter, &env->CCU_Errors); - + set_CCU_Errors(&env->canSpamTransmitter, (CCU_Errors_t *)&CCU_Errors_Model); } osMutexRelease(env->ModelTask.access); @@ -247,7 +238,7 @@ static _Noreturn void Mma_Thread(tMma *env) { LoadDataInFromModel(env); -// ModelTask_StartThread(&env->ModelTask); + ModelTask_StartThread(&env->ModelTask); /* diff --git a/MainModesArbiter.h b/MainModesArbiter.h index 669fe4d..2902f3b 100644 --- a/MainModesArbiter.h +++ b/MainModesArbiter.h @@ -81,7 +81,6 @@ typedef struct { // ExtY rtY_local; DW rtDW; - CCU_Errors_t CCU_Errors; bool isActuatorWorkBusy; diff --git a/PeripheralInterfaces.c b/PeripheralInterfaces.c index fb4eb2c..b9da2d5 100644 --- a/PeripheralInterfaces.c +++ b/PeripheralInterfaces.c @@ -5,7 +5,7 @@ #include "PeripheralInterfaces.h" void InitPeripheralInterfaces(tLoggerInterface *logger) { - Gpios_Init(); + //Gpios_Init(); CanPorts_Init(logger); Adcs_Init(logger);