commit c429da51422e00ba82eeee95d71f880c6a9ddc90 Author: cfif Date: Mon Jun 2 15:22:57 2025 +0300 Init diff --git a/DataNonVolatatile_Private.h b/DataNonVolatatile_Private.h new file mode 100644 index 0000000..db5410e --- /dev/null +++ b/DataNonVolatatile_Private.h @@ -0,0 +1,9 @@ +// +// Created by ilya on 05.04.24. +// + +#ifndef SMART_COMPONENTS_DATANONVOLATATILE_PRIVATE_H +#define SMART_COMPONENTS_DATANONVOLATATILE_PRIVATE_H +#include "DataNonVolatile.h" + +#endif //SMART_COMPONENTS_DATANONVOLATATILE_PRIVATE_H diff --git a/DataNonVolatile.c b/DataNonVolatile.c new file mode 100644 index 0000000..0a2ea68 --- /dev/null +++ b/DataNonVolatile.c @@ -0,0 +1,16 @@ +// +// Created by ilya on 05.04.24. +// +#include "DataNonVolatatile_Private.h" + +void DeviceStorageDefaultInitTelematicaSettings(tDeviceSettingsServerConnection *env); + +void DeviceDataNonVolatile_InitDefaults(tDeviceDataNonVolatile *env) { + DeviceStorageDefaultInitTelematicaSettings(&env->SettingsServerConnection); + + //проверка соответствия версии хранилища + //позволяет принудительно сбросить хранилище + //к значениям по умолчанию вслучае установки + //значения большее чем в придыдущих прошивках + env->version = DEVICE_DATA_NO_VOLATILE_VERSION; +} \ No newline at end of file diff --git a/DataNonVolatile.h b/DataNonVolatile.h new file mode 100644 index 0000000..8f697c1 --- /dev/null +++ b/DataNonVolatile.h @@ -0,0 +1,44 @@ +// +// Created by xemon on 19.10.22. +// + +#ifndef UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H +#define UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H + +#include "BaseTypes.h" +#include "stdbool.h" + + +#define DEVICE_DATA_NO_VOLATILE_VERSION 0x9 + + +typedef struct { + uint32_t REGION_SIZE_UPDATE; // Размер обновления + + tString32 EGTS_SERVER_ADDRESS; // Адрес:порт сервера №1 + bool EGTS_SERVER_SSL_ENABLE; // Включение поддержки SSL + tString32 EGTS_ALT_SERVER_ADDRESS; // // Адрес:порт сервера №2 + tString32 EGTS_GPRS_APN; // APN + uint32_t EGTS_UNIT_ID; // идентификационный номер терминала + uint32_t EGTS_TIME_WAIT_FIRMWARE; // Время ожидания загрузки обновления + + uint32_t EGTS_UNIT_CAN1_BAUD_RATE; // Скорость CAN1 (бит/сек) + uint32_t EGTS_UNIT_CAN2_BAUD_RATE; // Скорость CAN2 (бит/сек) + + bool EGTS_FLEET_ON; // Флаг включения функции мониторинга + + tString64 UPDATE_SERVER_ADDRESS; // Сервер обновления УВЭОС + uint32_t UPDATE_SERVER_CHECK_IN_PERIOD; // Количество попыток соединения с сервером обновления УВЭОС + uint32_t UPDATE_SERVER_CHECK_IN_ATTEMPTS; // Время между попытками установить соединение с сервером обновления УВЭОС (сек) + bool UPDATE_UVEOS_UPDATE; // Признак обновления УВЭОС + +} tDeviceSettingsServerConnection; + +typedef struct { + uint32_t version; + tDeviceSettingsServerConnection SettingsServerConnection; +} tDeviceDataNonVolatile; + +void DeviceDataNonVolatile_InitDefaults(tDeviceDataNonVolatile *env); + +#endif //UVEOS_ON_NATION_DEVICEDATANONVOLATILE_H diff --git a/DataNonVolatile_InitDeviceSetting.c b/DataNonVolatile_InitDeviceSetting.c new file mode 100644 index 0000000..958e677 --- /dev/null +++ b/DataNonVolatile_InitDeviceSetting.c @@ -0,0 +1,16 @@ +// +// Created by ilya on 05.04.24. +// +#include "DataNonVolatatile_Private.h" + +void DeviceStorageDefaultInitTelematicaSettings(tDeviceSettingsServerConnection *env) { + String32CopyStatic(&env->EGTS_SERVER_ADDRESS, ""); // Адрес:порт сервера №1 + env->EGTS_SERVER_SSL_ENABLE = 1; // Включение поддержки SSL + String32CopyStatic(&env->EGTS_ALT_SERVER_ADDRESS, ""); // Адрес:порт сервера №2 + String32CopyStatic(&env->EGTS_GPRS_APN, ""); // APN + env->EGTS_UNIT_ID = 0; // идентификационный номер терминала + env->EGTS_TIME_WAIT_FIRMWARE = 0; // Время ожидания загрузки обновления + env->EGTS_FLEET_ON = 0; // Флаг включения функции мониторинга + +} + diff --git a/modular.json b/modular.json new file mode 100644 index 0000000..0dd1901 --- /dev/null +++ b/modular.json @@ -0,0 +1,10 @@ +{ + "cmake": { + "inc_dirs": [ + "./" + ], + "srcs": [ + "./**.c" + ] + } +} \ No newline at end of file