// // Created by xemon on 19.10.22. // #ifndef UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H #define UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H #include #include #include #include #include "DataRuntime.h" #define DEVICE_DATA_NO_VOLATILE_VERSION 0x77 typedef struct { bool useInternalAnt; struct { tString16 value; uint16_t writeAccess; } serialNumber; tString16 smsServiceCenter; bool useMutePositive; bool serviseMode; bool factoryMode; bool telematicaIsActive; float boardCalibCoef; tString64 rawCodecRegisters; tString32 softVers; tString32 hardVers; tString32 modemSoftVers; tString32 ccid; tString32 ccidComers; tString32 simProfile; tString32 ECUSerialNumber; tString32 cgsmid; uint16_t disallowWrite; int16_t AccelCalibrationX; int16_t AccelCalibrationY; int16_t AccelCalibrationZ; uint8_t RolloverAngle; uint8_t RolloverTime; uint8_t DirectionAngle; bool AccelFlipEnable; } tDeviceSettings; typedef struct { uint32_t REGION_SIZE_UPDATE; // Размер обновления } tDeviceAdditionalSettings; typedef struct { bool gnss_general_ToCan; bool nav_data_ToCan; } tDataToCan; typedef struct { uint32_t version; tDeviceAdditionalSettings AdditionalSettings; uint8_t dataTeledata[1024]; tUveosGostSettings gost; tDeviceSettings device; tEraGlonassMsdTable msdTable; tDataToCan DataToCan; tString32 modemSaveDeviceSoftVers; } tDeviceDataNonVolatile; void DeviceDataNonVolatile_InitDefaults(tDeviceDataNonVolatile *env); void DeviceDataNonVolatile_AddToVarTab( tDeviceDataNonVolatile *env, tVariablesTable *variablesTable, uint32_t VARIABLES_GROUP ); #endif //UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H