UveosOnNation_VEGA_DataNonV.../DeviceDataNonVolatile.h

99 lines
3.4 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// Created by xemon on 19.10.22.
//
#ifndef UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H
#define UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H
#include <max9860.h>
#include <CarFlipDetection.h>
#include <UveosGostSettings.h>
#include <EraGlonassMsdTable.h>
#include <VariablesTable.h>
#define DEVICE_DATA_NO_VOLATILE_VERSION 0x15
typedef struct {
bool telematicaIsActive;
tString32 EGTS_PROFILE_SIM_ERA;
tString32 EGTS_PROFILE_SIM_INTERNET;
tString32 EGTS_SERVER_ADDRESS; // Адрес:порт сервера №1
tString64 EGTS_GPRS_APN; // APN
uint32_t EGTS_UNIT_ID; // идентификационный номер терминала
uint32_t EGTS_SERVER_CHECK_IN_PERIOD; // Время между попытками установить соединение с сервером (сек)
uint32_t EGTS_SERVER_CHECK_IN_ATTEMPTS; // Количество попыток соединения с сервером
uint32_t EGTS_SERVER_PACKET_TOUT; // Время ожидания ответа от сервера (сек)
uint32_t EGTS_SERVER_PACKET_RETRANSMIT_ATTEMPTS; // Количество попыток отправки неподтвержденного пакета на сервер
uint32_t EGTS_FLEET_IGN_ON_PERIOD; // Таймер передачи данных при включенном зажигании (сек)
uint32_t EGTS_FLEET_IGN_OFF_PERIOD; // Таймер передачи данных при выключенном зажигании (сек)
uint32_t EGTS_FLEET_EM_MON_PERIOD; // Таймер передачи данных при экстренном слежении (сек)
uint32_t EGTS_FLEET_COURSE_THRESHOLD; // Изменение курсового угла после которого нужно послать данные (градусы)
uint32_t EGTS_GNSS_COURSE_SPEED; // Скорость ниже которой не учитывается изменение курсового угла (км/ч)
uint32_t EGTS_FLEET_DIST_THRESHOLD; // Изменение дистанции после которого нужно послать данные (100 метров)
tString32 EGTS_TELE_VERS;
bool EGTS_SERVER_ENABLE_TELEMATICA;
} tDeviceSettingsTelematica;
typedef struct {
tDeviceSettingsTelematica telematica;
} tDeviceTeledataStorageData;
typedef struct {
bool useInternalAnt;
struct {
tString16 value;
uint16_t writeAccess;
} serialNumber;
tString32 smsServiceCenter;
bool useMutePositive;
bool garageMode;
tString64 rawCodecRegisters;
tString32 softVers;
tString32 hardVers;
tString32 ccid;
tString32 cgsmid;
tString32 codecConf;
uint16_t disallowWrite;
} tDeviceSettings;
typedef struct {
uint32_t version;
tUveosGostSettings gost;
MAX9860_ComplexAudioConfig audioCodec;
tCarFlipDetectionSettings flip;
tDeviceSettings device;
#ifdef UVEOS_ADD_TELEMATICA
tDeviceTeledataStorageData deviceTeledataStorageData;
#endif
tEraGlonassMsdTable msdTable;
} tDeviceDataNonVolatile;
void DeviceDataNonVolatile_InitDefaults(tDeviceDataNonVolatile *env);
void DeviceStorageInitTelematicSettings(tDeviceSettingsTelematica *env);
void DeviceDataNonVolatile_AddToVarTab(
tDeviceDataNonVolatile *env,
tVariablesTable *variablesTable,
uint32_t VARIABLES_GROUP
);
#endif //UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H