From 989a8346f07d2eeda7fba9329c9010d5631c00d6 Mon Sep 17 00:00:00 2001 From: cfif Date: Mon, 2 Jun 2025 13:26:39 +0300 Subject: [PATCH] Init --- UveosGostSettings_AddToVarsTab.c | 106 +++++++++++++++++++++++++++++++ UveosGostSettings_AddToVarsTab.h | 17 +++++ modular.json | 22 +++++++ 3 files changed, 145 insertions(+) create mode 100644 UveosGostSettings_AddToVarsTab.c create mode 100644 UveosGostSettings_AddToVarsTab.h create mode 100644 modular.json diff --git a/UveosGostSettings_AddToVarsTab.c b/UveosGostSettings_AddToVarsTab.c new file mode 100644 index 0000000..2b85608 --- /dev/null +++ b/UveosGostSettings_AddToVarsTab.c @@ -0,0 +1,106 @@ +// +// Created by xemon on 19.12.22. +// + +#include "UveosGostSettings_AddToVarsTab.h" + +#define ADD_VAR_SIZE(TYPE, NAME, VALUE, LEN, GROUP) \ + VariablesTableAdd( \ + variablesTable, \ + #NAME, \ + sizeof (#NAME)-1, \ + VARIABLE_TYPE_##TYPE, \ + (VALUE), \ + (LEN), \ + 0, \ + GROUP \ + ) + +#define ADD_VAR(TYPE, NAME, VALUE) ADD_VAR_SIZE(TYPE, NAME, VALUE, 0, group) +#define ADD_VAR_STR_OBJ(TYPE, NAME, VALUE) ADD_VAR_SIZE(TYPE, NAME, &(VALUE).data, &(VALUE).length,group) + +// Добавление переменных в таблицу +void UveosGostSettings_AddToVarsTab( + tUveosGostSettings *env, + tVariablesTable *variablesTable, + uint32_t group +) { + +//Radio settings + ADD_VAR(UINT16, RADIO_MUTE_DELAY, &env->RADIO_MUTE_DELAY); + ADD_VAR(UINT16, RADIO_UNMUTE_DELAY, &env->RADIO_UNMUTE_DELAY); + +//Common settings + ADD_VAR(UINT16, CALL_AUTO_ANSWER_TIME, &env->CALL_AUTO_ANSWER_TIME); + ADD_VAR(UINT16, POST_TEST_REGISTRATION_TIME, &env->POST_TEST_REGISTRATION_TIME); + ADD_VAR(UINT16, TEST_MODE_END_DISTANCE, &env->TEST_MODE_END_DISTANCE); + ADD_VAR(UINT16, GARAGE_MODE_END_DISTANCE, &env->GARAGE_MODE_END_DISTANCE); + + ADD_VAR_STR_OBJ(STRING, ECALL_TEST_NUMBER, env->ECALL_TEST_NUMBER); + + ADD_VAR(UINT16, GARAGE_MODE_PIN, &env->GARAGE_MODE_PIN); + ADD_VAR(UINT16, INT_MEM_TRANSMIT_INTERVAL, &env->INT_MEM_TRANSMIT_INTERVAL); + ADD_VAR(UINT16, INT_MEM_TRANSMIT_ATTEMPTS, &env->INT_MEM_TRANSMIT_ATTEMPTS); + +//Service configuration + ADD_VAR(BOOL, CRASH_SIGNAL_INTERNAL, &env->CRASH_SIGNAL_INTERNAL); + ADD_VAR(BOOL, CRASH_SIGNAL_EXTERNAL, &env->CRASH_SIGNAL_EXTERNAL); + ADD_VAR(FLOAT32, ASI15_TRESHOLD, &env->ASI15_TRESHOLD); + ADD_VAR(UINT16, ECALL_MODE_PIN, &env->ECALL_MODE_PIN); + + ADD_VAR(UINT16, SOS_BUTTON_TIME, &env->SOS_BUTTON_TIME); + ADD_VAR(UINT16, CCFT, &env->CCFT); + ADD_VAR(UINT16, MSD_MAX_TRANSMISSION_TIME, &env->MSD_MAX_TRANSMISSION_TIME); + ADD_VAR(UINT16, NAD_DEREGISTRATION_TIME, &env->NAD_DEREGISTRATION_TIME); + ADD_VAR(BOOL, ECALL_NO_AUTOMATIC_TRIGGERING, &env->ECALL_NO_AUTOMATIC_TRIGGERING); + ADD_VAR(UINT16, ECALL_DIAL_DURATION, &env->ECALL_DIAL_DURATION); + ADD_VAR(UINT16, ECALL_AUTO_DIAL_ATTEMPTS, &env->ECALL_AUTO_DIAL_ATTEMPTS); + ADD_VAR(UINT16, ECALL_MANUAL_DIAL_ATTEMPTS, &env->ECALL_MANUAL_DIAL_ATTEMPTS); + ADD_VAR(BOOL, ECALL_MANUAL_CAN_CANCEL, &env->ECALL_MANUAL_CAN_CANCEL); + + ADD_VAR_STR_OBJ(STRING, ECALL_SMS_FALLBACK_NUMBER, env->ECALL_SMS_FALLBACK_NUMBER); + +//Testing settings + ADD_VAR(UINT16, TEST_REGISTRATION_PERIOD, &env->TEST_REGISTRATION_PERIOD); + +//Emergence acceleration profile + ADD_VAR(UINT16, IGNITION_OFF_FOLLOW_UP_TIME1, &env->IGNITION_OFF_FOLLOW_UP_TIME1); + ADD_VAR(UINT16, IGNITION_OFF_FOLLOW_UP_TIME2, &env->IGNITION_OFF_FOLLOW_UP_TIME2); + + ADD_VAR(UINT16, CRASH_RECORD_TIME, &env->CRASH_RECORD_TIME); + ADD_VAR(UINT16, CRASH_RECORD_RESOLUTION, &env->CRASH_RECORD_RESOLUTION); + ADD_VAR(UINT16, CRASH_PRE_RECORD_TIME, &env->CRASH_PRE_RECORD_TIME); + ADD_VAR(UINT16, CRASH_PRE_RECORD_RESOLUTION, &env->CRASH_PRE_RECORD_RESOLUTION); + +//Other settings + ADD_VAR(UINT16, GNSS_POWER_OFF_TIME, &env->GNSS_POWER_OFF_TIME); + ADD_VAR(UINT16, GNSS_DATA_RATE, &env->GNSS_DATA_RATE); + ADD_VAR(UINT16, GNSS_MIN_ELEVATION, &env->GNSS_MIN_ELEVATION); + +//Vehicle parameters + ADD_VAR_STR_OBJ(STRING, VIN, env->VIN); + + ADD_VAR(UINT16, VEHICLE_TYPE, &env->VEHICLE_TYPE); + ADD_VAR(UINT8, VEHICLE_PROPULSION_STORAGE_TYPE, &env->VEHICLE_PROPULSION_STORAGE_TYPE); + ADD_VAR(UINT8, VEHICLE_PASSENGERS_NUMBER, &env->VEHICLE_PASSENGERS_NUMBER); + + ADD_VAR(BOOL, ECALL_TEST_MODE, &env->notGost.ECALL_TEST_MODE); + ADD_VAR(BOOL, ECALL_DEBUG_MODE, &env->notGost.ECALL_DEBUG_MODE); + + ADD_VAR(UINT8, FULL_POWER_OFF_TIME, &env->notGost.FULL_POWER_OFF_TIME); + + ADD_VAR(BOOL, BIP_POWER_MODE, &env->notGost.BIP_POWER_MODE); + ADD_VAR(UINT16, BIP_RED_LED_POWER_MODE, &env->notGost.BIP_RED_LED_POWER_MODE); + ADD_VAR(UINT16, TEST_BUTTON_TIME, &env->notGost.TEST_BUTTON_TIME); +// ADD_VAR_STR_OBJ(STRING, AMPL_CONF, env->notGost.AMPL_CONF); + + ADD_VAR(BOOL, MANUAL_SET_MODEM_POWER, &env->notGost.MANUAL_SET_MODEM_POWER); + ADD_VAR(UINT16, MODEM_POWER_FOR_LTE_MODE, &env->notGost.MODEM_POWER_FOR_LTE_MODE); + ADD_VAR(UINT16, MODEM_POWER_FOR_WCDMA_MODE, &env->notGost.MODEM_POWER_FOR_WCDMA_MODE); + ADD_VAR(UINT16, MODEM_POWER_FOR_GSM_MODE, &env->notGost.MODEM_POWER_FOR_GSM_MODE); + ADD_VAR(UINT16, CODEC_VOLUE_LEVEL, &env->notGost.CODEC_VOLUE_LEVEL); +} + +#undef ADD_VAR_SIZE +#undef ADD_VAR +#undef ADD_VAR_STR_OBJ diff --git a/UveosGostSettings_AddToVarsTab.h b/UveosGostSettings_AddToVarsTab.h new file mode 100644 index 0000000..81692f8 --- /dev/null +++ b/UveosGostSettings_AddToVarsTab.h @@ -0,0 +1,17 @@ +// +// Created by xemon on 19.12.22. +// + +#ifndef UVEOS_ON_NATION_UVEOSGOSTSETTINGS_ADDTOVARSTAB_H +#define UVEOS_ON_NATION_UVEOSGOSTSETTINGS_ADDTOVARSTAB_H + +#include "UveosGostSettings.h" +#include "VariablesTable.h" + +void UveosGostSettings_AddToVarsTab( + tUveosGostSettings *env, + tVariablesTable *variablesTable, + uint32_t VARIABLES_GROUP +); + +#endif //UVEOS_ON_NATION_UVEOSGOSTSETTINGS_ADDTOVARSTAB_H diff --git a/modular.json b/modular.json new file mode 100644 index 0000000..df66e53 --- /dev/null +++ b/modular.json @@ -0,0 +1,22 @@ +{ + "dep": [ + { + "type": "git", + "provider": "Smart_Components_Aurus", + "repo": "UveosGostSettings" + }, + { + "type": "git", + "provider": "Smart_Components_Aurus", + "repo": "VariablesTable" + } + ], + "cmake": { + "inc_dirs": [ + "./" + ], + "srcs": [ + "./**.c" + ] + } +} \ No newline at end of file