105 lines
5.5 KiB
C
105 lines
5.5 KiB
C
//
|
|
// Created by xemon on 19.12.22.
|
|
//
|
|
|
|
#include "DataNonVolatatile_Private.h"
|
|
#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)
|
|
|
|
#define ADD_VAR_WITH_ID_SIZE(TYPE, NAME, VALUE, LEN, ID, LIMIT, GROUP) \
|
|
VariablesTableWithIdAdd( \
|
|
variablesTable, \
|
|
#NAME, \
|
|
sizeof (#NAME)-1, \
|
|
VARIABLE_TYPE_##TYPE, \
|
|
(VALUE), \
|
|
(LEN), \
|
|
(ID), \
|
|
(LIMIT), \
|
|
0, \
|
|
GROUP \
|
|
)
|
|
|
|
#define ADD_WITH_ID_VAR(TYPE, NAME, VALUE, ID) ADD_VAR_WITH_ID_SIZE(TYPE, NAME, VALUE, 0, ID, 0, group)
|
|
#define ADD_WITH_ID_VAR_STR_OBJ(TYPE, NAME, VALUE, ID, LIMIT) ADD_VAR_WITH_ID_SIZE(TYPE, NAME, &(VALUE).data, &(VALUE).length, ID, LIMIT, group)
|
|
|
|
// Добавление переменных в таблицу
|
|
void DeviceDataNonVolatile_AddToVarTab(
|
|
tDeviceDataNonVolatile *env,
|
|
tVariablesTable *variablesTable,
|
|
uint32_t group
|
|
) {
|
|
//Uveos Gost Settings
|
|
UveosGostSettings_AddToVarsTab(&env->gost, variablesTable, group);
|
|
|
|
//Flip detection parameters
|
|
/*
|
|
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_X, &env->flip.gravity.x);
|
|
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_Y, &env->flip.gravity.y);
|
|
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_Z, &env->flip.gravity.z);
|
|
|
|
ADD_VAR(BOOL, FLIP_DETECT_ENABLE, &env->flip.enabled);
|
|
ADD_VAR(FLOAT32, FLIP_DETECT_TRESHOLD_ANGLE_COS, &env->flip.thresholds.angleCos);
|
|
ADD_VAR(UINT32, FLIP_DETECT_TRESHOLD_ANTIFLIGHT, &env->flip.thresholds.antiFlightMs);
|
|
*/
|
|
//Devices
|
|
ADD_VAR_STR_OBJ(STRING, DEVICE_ID, env->device.serialNumber.value);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.serialNumber.writeAccess;
|
|
|
|
ADD_VAR(BOOL, USE_INTERNAL_ANT, &env->device.useInternalAnt);
|
|
ADD_VAR(BOOL, USE_MUTE_POSITIVE, &env->device.useMutePositive);
|
|
ADD_VAR(BOOL, FACTORY_MODE, &env->device.factoryMode);
|
|
ADD_VAR(BOOL, TELEMATICA_IS_ACTIVE, &env->device.telematicaIsActive);
|
|
ADD_VAR(FLOAT32, BOARD_VOLTAGE_CALIB_COEF, &env->device.boardCalibCoef);
|
|
ADD_VAR_STR_OBJ(STRING, SMS_CENTER, env->device.smsServiceCenter);
|
|
ADD_VAR_STR_OBJ(STRING, GSM_CGMR, env->device.modemSoftVers);
|
|
ADD_VAR_STR_OBJ(STRING, GSM_SIM_PROFILE, env->device.simProfile);
|
|
ADD_VAR_STR_OBJ(STRING, ECU_SERIAL_NUMBER, env->device.ECUSerialNumber);
|
|
|
|
ADD_VAR_STR_OBJ(STRING, SOFTWARE_VERS, env->device.softVers);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
|
ADD_VAR_STR_OBJ(STRING, HARDWARE_VERS, env->device.hardVers);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
|
|
|
ADD_VAR_STR_OBJ(STRING, GSM_CCID, env->device.ccid);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
|
ADD_VAR_STR_OBJ(STRING, GSM_CCID_COMERS, env->device.ccidComers);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
|
ADD_VAR_STR_OBJ(STRING, GSM_CGSN, env->device.cgsmid);
|
|
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
|
|
|
|
|
// ADD_VAR(UINT32, FLIP_DETECT_TRESHOLD_ANTIFLIGHT, &env->flip.thresholds.antiFlightMs);
|
|
|
|
//--------------------------------------------EGTS Server---------------------------------------------------------------
|
|
|
|
//Flip detection parameters
|
|
ADD_VAR(BOOL, ACCEL_FLIP_DETECT_ENABLE, &env->device.AccelFlipEnable);
|
|
ADD_VAR(INT16, ACCEL_CALLIBRATION_X, &env->device.AccelCalibrationX);
|
|
ADD_VAR(INT16, ACCEL_CALLIBRATION_Y, &env->device.AccelCalibrationY);
|
|
ADD_VAR(INT16, ACCEL_CALLIBRATION_Z, &env->device.AccelCalibrationZ);
|
|
ADD_VAR(UINT8, ROLLOVER_ANGLE, &env->device.RolloverAngle);
|
|
ADD_VAR(UINT8, ROLLOVER_TIME, &env->device.RolloverTime);
|
|
ADD_VAR(UINT8, DIRECTION_ANGLE, &env->device.DirectionAngle);
|
|
|
|
ADD_VAR(UINT8, GNSS_GENERAL_TO_CAN, &env->DataToCan.gnss_general_ToCan);
|
|
ADD_VAR(UINT8, NAV_DATA_TO_CAN, &env->DataToCan.nav_data_ToCan);
|
|
}
|
|
|
|
#undef ADD_VAR_SIZE
|
|
#undef ADD_VAR
|
|
#undef ADD_VAR_STR_OBJ |