В UDS добавлен IGN_ANS и PBATT_CHECK

This commit is contained in:
cfif 2026-08-25 14:38:40 +03:00
parent 1a16f95152
commit e574f5446e
3 changed files with 30 additions and 2 deletions

View File

@ -1 +0,0 @@
#define VERSION_RANDOM_BUILD_IDENTIFIER "hK3WI"

View File

@ -71,13 +71,40 @@ static uint16_t getActProc(uint16_t maxPos, uint16_t pos) {
return proc;
}
// Тут данные должны быть с модели &env->Status_Sensor_For_Model_input и т.д.
void CanUdsInput_Set_Model(tCanUds *env) {
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, &rtY.Status_Sensort_model_IO, 0, 0);
memcpy(&env->Status_Sensort_model_IO_local, &rtY.Status_Sensort_model_IO, sizeof(Status_Sensor_Bus));
uint16_t IGN_ANS_16 = (uint16_t)((rtDW.ADC_Data_Model.IGN_ANS * 27.75f / 4095.0f) * 10.0f);
uint16_t PBATT_CHECK_16 = (uint16_t)((rtDW.ADC_Data_Model.PBATT_CHECK * 33.4375f / 4095.0f) * 10.0f);
uint8_t IGN_ANS;
uint8_t PBATT_CHECK;
if (IGN_ANS_16 > 255) {
IGN_ANS = 255;
} else {
IGN_ANS = IGN_ANS_16;
}
if (PBATT_CHECK_16 > 255) {
PBATT_CHECK = 255;
} else {
PBATT_CHECK = PBATT_CHECK_16;
}
env->Status_Sensort_model_IO_local.Ignition = IGN_ANS;
env->Status_Sensort_model_IO_local.Battery = PBATT_CHECK;
status = osMessageQueuePut(env->queue_input_get_Status_Sensor, &env->Status_Sensort_model_IO_local, 0, 0);
}
countQueue_space = osMessageQueueGetSpace(env->queue_input_get_Status_Actuator_DoorsActuator);

View File

@ -287,6 +287,8 @@ typedef struct {
osMessageQueueId_t queue_output_set_Status_Ionizer_Aroma;
osMessageQueueId_t queue_output_set_Status_Duct_Select;
Status_Sensor_Bus Status_Sensort_model_IO_local;
struct {
osThreadId_t id;
//uint32_t stack[384];