Обновление платы на V2

This commit is contained in:
cfif 2026-05-18 10:43:58 +03:00
parent e6720ca65e
commit bbfb9292fa
1 changed files with 20 additions and 4 deletions

View File

@ -478,7 +478,7 @@ static _Noreturn void Adc0_Thread(tAdc0Task *env) {
++env->step; ++env->step;
if (env->step > MAX_ADC_FILTER_SIZE) { if (env->step > MAX_ADC_FILTER_SIZE * 2) {
SystemDelayMs(50); SystemDelayMs(50);
} }
} }
@ -517,6 +517,13 @@ void Adc_1_Init(tAdc1Task *env,
env->access = osMutexNew(NULL); env->access = osMutexNew(NULL);
env->gpios = gpios; env->gpios = gpios;
ADC_Filter_Init(&env->ADC1_Filter_data.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB, MAX_ADC_FILTER_SIZE);
ADC_Filter_Init(&env->ADC1_Filter_data.VN7008AJ_DIAG_RearLINActuatorPowerDriverC, MAX_ADC_FILTER_SIZE);
ADC_Filter_Init(&env->ADC1_Filter_data.PBATT_CHECK, MAX_ADC_FILTER_SIZE);
ADC_Filter_Init(&env->ADC1_Filter_data.VN7008AJ_FrontLINActuatorPowerDriverAB, MAX_ADC_FILTER_SIZE);
ADC_Filter_Init(&env->ADC1_Filter_data.VN7008AJ_RearLINActuatorPowerDriverC, MAX_ADC_FILTER_SIZE);
InitThreadAtrStatic(&env->thread.attr, "Adc1", env->thread.controlBlock, env->thread.stack, InitThreadAtrStatic(&env->thread.attr, "Adc1", env->thread.controlBlock, env->thread.stack,
osPriorityNormal); osPriorityNormal);
} }
@ -529,16 +536,25 @@ static _Noreturn void Adc1_Thread(tAdc1Task *env) {
for (;;) { for (;;) {
env->ADC_ChannelCount = env->adcIO->get(env->adcIO->env, &ADC_Pointer_Data, 5000); env->ADC_ChannelCount = env->adcIO->get(env->adcIO->env, &ADC_Pointer_Data, 5000);
uint32_t *pData = (uint32_t *) ADC_Pointer_Data;
if (osMutexAcquire(env->modelTaskAccess, 5000) == osOK) { if (osMutexAcquire(env->modelTaskAccess, 5000) == osOK) {
uint32_t *pData = (uint32_t *) ADC_Pointer_Data; tADC1_data *ADC1_data = (tADC1_data *) ADC_Pointer_Data;
rtDW.ADC_Data_Model.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB = ADC_Filter_Update(&env->ADC1_Filter_data.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB,ADC1_data->VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB);
rtDW.ADC_Data_Model.VN7008AJ_DIAG_RearLINActuatorPowerDriverC = ADC_Filter_Update(&env->ADC1_Filter_data.VN7008AJ_DIAG_RearLINActuatorPowerDriverC,ADC1_data->VN7008AJ_DIAG_RearLINActuatorPowerDriverC);
rtDW.ADC_Data_Model.PBATT_CHECK = ADC_Filter_Update(&env->ADC1_Filter_data.PBATT_CHECK,ADC1_data->PBATT_CHECK);
rtDW.ADC_Data_Model.VN7008AJ_FrontLINActuatorPowerDriverAB = ADC_Filter_Update(&env->ADC1_Filter_data.VN7008AJ_FrontLINActuatorPowerDriverAB,ADC1_data->VN7008AJ_FrontLINActuatorPowerDriverAB);
rtDW.ADC_Data_Model.VN7008AJ_RearLINActuatorPowerDriverC = ADC_Filter_Update(&env->ADC1_Filter_data.VN7008AJ_RearLINActuatorPowerDriverC,ADC1_data->VN7008AJ_RearLINActuatorPowerDriverC);
/*
rtDW.ADC_Data_Model.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB = pData[0]; rtDW.ADC_Data_Model.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB = pData[0];
rtDW.ADC_Data_Model.VN7008AJ_DIAG_RearLINActuatorPowerDriverC = pData[1]; rtDW.ADC_Data_Model.VN7008AJ_DIAG_RearLINActuatorPowerDriverC = pData[1];
rtDW.ADC_Data_Model.PBATT_CHECK = pData[2]; rtDW.ADC_Data_Model.PBATT_CHECK = pData[2];
rtDW.ADC_Data_Model.VN7008AJ_FrontLINActuatorPowerDriverAB = pData[3]; rtDW.ADC_Data_Model.VN7008AJ_FrontLINActuatorPowerDriverAB = pData[3];
rtDW.ADC_Data_Model.VN7008AJ_RearLINActuatorPowerDriverC = pData[4]; rtDW.ADC_Data_Model.VN7008AJ_RearLINActuatorPowerDriverC = pData[4];
*/
/* /*
rtDW.ADC_Data_Model.PT_F_HVAC_VCC_DIAG = pData[5]; // PT_F_HVAC_VCC_DIAG rtDW.ADC_Data_Model.PT_F_HVAC_VCC_DIAG = pData[5]; // PT_F_HVAC_VCC_DIAG
rtDW.ADC_Data_Model.PT_HVBchiller_VCC_DIAG = pData[6]; // PT_HVBchiller_VCC_DIAG rtDW.ADC_Data_Model.PT_HVBchiller_VCC_DIAG = pData[6]; // PT_HVBchiller_VCC_DIAG
@ -591,7 +607,7 @@ static _Noreturn void Adc1_Thread(tAdc1Task *env) {
++env->step; ++env->step;
if (env->step > MAX_ADC_FILTER_SIZE) { if (env->step > MAX_ADC_FILTER_SIZE * 2) {
SystemDelayMs(50); SystemDelayMs(50);
} }
} }