Обновление платы на V2
This commit is contained in:
parent
16a16e6a23
commit
1e01e12273
20
AdcTasks.c
20
AdcTasks.c
|
|
@ -177,18 +177,20 @@ float calculate_ntc_resistance(uint16_t adc_value,
|
||||||
return Rntc;
|
return Rntc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void ANALOG_SENSOR(tAdc0Task *env, char *desc, uint16_t adc_value, eNtcTable NtcTable, float R) {
|
void ANALOG_SENSOR(tAdc0Task *env, char *desc, uint16_t adc_value, eNtcTable NtcTable, float R) {
|
||||||
float ERROR_THRESHOLD_HIGH_V = 4.9f;
|
float ERROR_THRESHOLD_HIGH_V = 4.9f;
|
||||||
float ERROR_THRESHOLD_LOW_V = 0.1f;
|
float ERROR_THRESHOLD_LOW_V = 0.1f;
|
||||||
uint16_t ERROR_THRESHOLD_HIGH_CODE = (uint16_t) (ERROR_THRESHOLD_HIGH_V * 4095.0f / 5.0f);
|
uint16_t ERROR_THRESHOLD_HIGH_CODE = (uint16_t) (ERROR_THRESHOLD_HIGH_V * 4095.0f / 4.96f);
|
||||||
uint16_t ERROR_THRESHOLD_LOW_CODE = (uint16_t) (ERROR_THRESHOLD_LOW_V * 4095.0f / 5.0f);
|
uint16_t ERROR_THRESHOLD_LOW_CODE = (uint16_t) (ERROR_THRESHOLD_LOW_V * 4095.0f / 4.96f);
|
||||||
|
|
||||||
// 1. Проверка на ошибку
|
// 1. Проверка на ошибку
|
||||||
if (adc_value >= ERROR_THRESHOLD_HIGH_CODE || adc_value <= ERROR_THRESHOLD_LOW_CODE) {
|
if (adc_value >= ERROR_THRESHOLD_HIGH_CODE || adc_value <= ERROR_THRESHOLD_LOW_CODE) {
|
||||||
LoggerFormatInfo(LOGGER, LOG_SIGN, "%s: Error !!! (adc = %d)", desc, adc_value)
|
LoggerFormatInfo(LOGGER, LOG_SIGN, "%s: Error !!! (adc = %d)", desc, adc_value)
|
||||||
} else {
|
} else {
|
||||||
// Преобразование в напряжение
|
// Преобразование в напряжение
|
||||||
float U = (float) adc_value * 5.0f / 4095.0f;
|
float U = (float) adc_value * 4.96f / 4095.0f;
|
||||||
|
|
||||||
float temp = 0;
|
float temp = 0;
|
||||||
float Rntc = 0;
|
float Rntc = 0;
|
||||||
|
|
@ -275,6 +277,10 @@ static _Noreturn void Adc0_Thread(tAdc0Task *env) {
|
||||||
ADC0_data->Sensor_Incar_Temp_RL);
|
ADC0_data->Sensor_Incar_Temp_RL);
|
||||||
rtDW.ADC_Data_Model.Sensor_Rear_Evap_Temp = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Evap_Temp,
|
rtDW.ADC_Data_Model.Sensor_Rear_Evap_Temp = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Evap_Temp,
|
||||||
ADC0_data->Sensor_Rear_Evap_Temp);
|
ADC0_data->Sensor_Rear_Evap_Temp);
|
||||||
|
|
||||||
|
rtDW.ADC_Data_Model.Sensor_Evap_Temp = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Evap_Temp,
|
||||||
|
ADC0_data->Sensor_Evap_Temp);
|
||||||
|
|
||||||
rtDW.ADC_Data_Model.Sensor_Rear_Duct1 = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Duct1,
|
rtDW.ADC_Data_Model.Sensor_Rear_Duct1 = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Duct1,
|
||||||
ADC0_data->Sensor_Rear_Duct1);
|
ADC0_data->Sensor_Rear_Duct1);
|
||||||
rtDW.ADC_Data_Model.Sensor_Rear_Duct2 = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Duct2,
|
rtDW.ADC_Data_Model.Sensor_Rear_Duct2 = ADC_Filter_Update(&env->ADC0_Filter_data.Sensor_Rear_Duct2,
|
||||||
|
|
@ -488,7 +494,7 @@ static _Noreturn void Adc0_Thread(tAdc0Task *env) {
|
||||||
ANALOG_SENSOR(env, "Sensor_Front_Duct5 (dbg_Sen_Duct_FL_Side_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct5, TABLE_DUCT, 3000);
|
ANALOG_SENSOR(env, "Sensor_Front_Duct5 (dbg_Sen_Duct_FL_Side_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct5, TABLE_DUCT, 3000);
|
||||||
ANALOG_SENSOR(env, "Sensor_Front_Duct6 (dbg_Sen_Duct_FR_Side_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct6, TABLE_DUCT, 3000);
|
ANALOG_SENSOR(env, "Sensor_Front_Duct6 (dbg_Sen_Duct_FR_Side_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct6, TABLE_DUCT, 3000);
|
||||||
*/
|
*/
|
||||||
|
/*
|
||||||
LoggerErrorStatic(LOGGER, LOG_SIGN, "======================================================================");
|
LoggerErrorStatic(LOGGER, LOG_SIGN, "======================================================================");
|
||||||
|
|
||||||
ANALOG_SENSOR(env, "Sensor_Front_Duct1 (dbg_Sen_Duct_FL_Upper_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct1, TABLE_DUCT, 3000);
|
ANALOG_SENSOR(env, "Sensor_Front_Duct1 (dbg_Sen_Duct_FL_Upper_Fb)", rtDW.ADC_Data_Model.Sensor_Front_Duct1, TABLE_DUCT, 3000);
|
||||||
|
|
@ -511,7 +517,7 @@ static _Noreturn void Adc0_Thread(tAdc0Task *env) {
|
||||||
ANALOG_SENSOR(env, "Sensor_Incar_Temp_FR", rtDW.ADC_Data_Model.Sensor_Incar_Temp_FR, TABLE_INCAR, 20000);
|
ANALOG_SENSOR(env, "Sensor_Incar_Temp_FR", rtDW.ADC_Data_Model.Sensor_Incar_Temp_FR, TABLE_INCAR, 20000);
|
||||||
ANALOG_SENSOR(env, "Sensor_Incar_Temp_RR", rtDW.ADC_Data_Model.Sensor_Incar_Temp_RR, TABLE_INCAR, 20000);
|
ANALOG_SENSOR(env, "Sensor_Incar_Temp_RR", rtDW.ADC_Data_Model.Sensor_Incar_Temp_RR, TABLE_INCAR, 20000);
|
||||||
LoggerErrorStatic(LOGGER, LOG_SIGN, "======================================================================");
|
LoggerErrorStatic(LOGGER, LOG_SIGN, "======================================================================");
|
||||||
|
*/
|
||||||
|
|
||||||
// ANALOG_SENSOR(env, "Sensor_Rear_Duct3", rtDW.ADC_Data_Model.Sensor_Rear_Duct3, TABLE_DUCT, 3000);
|
// ANALOG_SENSOR(env, "Sensor_Rear_Duct3", rtDW.ADC_Data_Model.Sensor_Rear_Duct3, TABLE_DUCT, 3000);
|
||||||
|
|
||||||
|
|
@ -552,7 +558,7 @@ static _Noreturn void Adc0_Thread(tAdc0Task *env) {
|
||||||
++env->step;
|
++env->step;
|
||||||
|
|
||||||
if (env->step > MAX_ADC_FILTER_SIZE * 2) {
|
if (env->step > MAX_ADC_FILTER_SIZE * 2) {
|
||||||
SystemDelayMs(25);
|
SystemDelayMs(10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -690,7 +696,7 @@ static _Noreturn void Adc1_Thread(tAdc1Task *env) {
|
||||||
++env->step;
|
++env->step;
|
||||||
|
|
||||||
if (env->step > MAX_ADC_FILTER_SIZE * 2) {
|
if (env->step > MAX_ADC_FILTER_SIZE * 2) {
|
||||||
SystemDelayMs(25);
|
SystemDelayMs(10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue