This commit is contained in:
cfif 2024-12-04 13:10:49 +03:00
commit 5c8e361cfc
5 changed files with 26645 additions and 0 deletions

26394
Doc/4293791388.pdf Normal file

File diff suppressed because one or more lines are too long

105
Inc/UveosGostSettings.h Normal file
View File

@ -0,0 +1,105 @@
/*
* UVEOS_GOST_Settings.h
*
* Created on: Apr 12, 2021
* Author: zemon
*/
#ifndef INC_UVEOS_GOST_SETTINGS_H_
#define INC_UVEOS_GOST_SETTINGS_H_
#include "stdint.h"
#include "stdbool.h"
#include "BaseTypes.h"
#include <UveosGostSettingsTypes.h>
typedef struct {
bool ECALL_TEST_MODE; //совершать все вызовы на тестовый номер
uint8_t FULL_POWER_OFF_TIME;
uint16_t BIP_BACKLIGHT_MODE;
uint16_t BIP_GREEN_LED_POWER_MODE;
uint16_t BIP_RED_LED_POWER_MODE;
tString16 CODEC_CONF;
} tUveosNotGostSettings;
typedef struct {
//Radio settings
uint16_t RADIO_MUTE_DELAY; //*(МС) Задержка между установкой сигнала «радио mute» и началом проигрывания звука
uint16_t RADIO_UNMUTE_DELAY; //*(МС) Задержка между снятием сигнала «радио mute» и окончанием проигрывания звукае
//настройки сробатывания
uint8_t CRASH_SIGNAL_INTERNAL; //* Только транспортные средства категорий М1 и N1 — для определения события аварии используется встроенный измеритель ускорения
uint8_t CRASH_SIGNAL_EXTERNAL; //* Только транспортные средства категорий М1 и N1 — для определения факта ДТП используется внешний датчик в транспортном средстве
float ASI15_TRESHOLD; //* Только транспортные средства категорий М1 и N1 — порог срабатывания датчика автоматической идентификации события ДТП
uint16_t SOS_BUTTON_TIME; //* (МС) Время нажатия на кнопку «Экстренный вызов» для активации режима «Экстренный вызов»
uint8_t ECALL_NO_AUTOMATIC_TRIGGERING; //Параметр используется для отмены функции автоматической инициации экстренного вызова
//Параметры дозвона
tString16 ECALL_TEST_NUMBER; //номер для тестового вызова
uint16_t CCFT; //(МИН) Длительность счетчика автоматического прекращения звонка (60 м)
uint16_t ECALL_DIAL_DURATION; //(МИН) Общая продолжительность дозвона при инициации экстренного вызова
uint64_t MSD_MAX_TRANSMISSION_TIME; //(CEK) Максимальная длительность передачи MSD (20 с)
uint8_t ECALL_MANUAL_CAN_CANCEL; //TRUE — экстренный вызов, инициированный вручную, может быть прекращен со стороны пользователя
//Ожидание
uint64_t CALL_AUTO_ANSWER_TIME; //(МИН)Промежуток времени после завершения экстренного вызова, в течение которого УСВ автоматически отвечает на входящие звонки
//Веремя регестрации в сети
uint64_t NAD_DEREGISTRATION_TIME; //(МИН) Время, после которого коммуникационный модуль GSM и UMTS прекращает регистрацию в сети
uint64_t POST_TEST_REGISTRATION_TIME; //Промежуток времени, в течение которого УСВ остается зарегистрированной в сети после передачи результатов тестирования оператору системы
//Оптравка экстренных ситуаций из памяти
tString16 ECALL_SMS_FALLBACK_NUMBER; //Номер, по которому УСВ посылает SMS с МНД при ошибке передачи МНД посредством in-band модема и по запросу от оператора системы. Определяется оператором национальной системы реагирования на аварии
uint64_t INT_MEM_TRANSMIT_INTERVAL; //интервал времени между повторными попытками отправки мнд из памяти
uint16_t INT_MEM_TRANSMIT_ATTEMPTS; //количество попыток отпкравки мнд из памяти
//Попытки дозвона
uint16_t ECALL_AUTO_DIAL_ATTEMPTS; //Только транспортные средства категорий М1 и N1 — число попыток дозвона при автоматически инициированном экстренном вызове. Не может быть установлено в «0»
uint16_t ECALL_MANUAL_DIAL_ATTEMPTS; //Число попыток дозвона при экстренном вызове, инициированном вручную. Значение не может устанавливаться в «0»
//Testing settings - тестирование и гараж
// Если УСВ была зарегистрирована в сети посредством нажатия на кнопку «Дополнительные функции»,
// то последующая регистрация УСВ в сети при нажатии на кнопку «Дополнительные функции» возможна
// не ранее чем через данный промежуток времени. Если значение установлено в «0»,
// то ограничений на последующую регистрацию УСВ в сети не накладывается
uint16_t TEST_REGISTRATION_PERIOD;
uint16_t TEST_MODE_END_DISTANCE; //(Метры)Дистанция, на которой режим тестирования выключается автоматически
uint16_t GARAGE_MODE_END_DISTANCE; //*(Метры) Дистанция, на которой режим «Автосервис» выключается автоматически
//Emergence acceleration profile - полностью используеться в коплектации доп оборудования
uint16_t IGNITION_OFF_FOLLOW_UP_TIME1; //* Промежуток времени, в течение которого осуществляется запись профиля ускорения при ДТП при выключенном зажигании
uint16_t IGNITION_OFF_FOLLOW_UP_TIME2; //* Промежуток времени, в течение которого осуществляется определение события аварии при выключенном зажигании
uint16_t CRASH_RECORD_TIME; //* Время записи информации о профиле ускорения при ДТП
uint16_t CRASH_RECORD_RESOLUTION; //* Дискретность записи профиля ускорения при ДТП
uint16_t CRASH_PRE_RECORD_TIME; //* Время записи информации о профиле ускорения до того, как событие ДТП наступило
uint16_t CRASH_PRE_RECORD_RESOLUTION; //* Продолжительность одного отсчета при записи профиля ускорения до того, как событие ДТП наступило
//Other settings - параметры навигацонного приемника - используються при инициализации приемника, а так же записываются в него после их изменения (все без участия УВЕОС,платформозависомо)
uint16_t GNSS_POWER_OFF_TIME; //* Промежуток времени, через который отключается питание приемника ГНСС после выключения зажигания
uint16_t GNSS_DATA_RATE; //Темп выдачи данных приемником ГНСС
uint16_t GNSS_MIN_ELEVATION; //* Минимальное значение угла возвышения (угла отсечки) навигационных космических аппаратов
//Vehicle parameters - Параметры транспортного средства, записываються в МНД
tString32 VIN; //18
uint16_t VEHICLE_TYPE; //Категория транспортного средства
uint8_t VEHICLE_PROPULSION_STORAGE_TYPE; //Тип энергоносителя
uint8_t VEHICLE_PASSENGERS_NUMBER; //Количество пасажиров
//неиспользуються, у нас пины определены заранее
uint16_t GARAGE_MODE_PIN; //*номер пина на котором поднимаеться сигнал в случае прехода в режим гараж
uint16_t ECALL_MODE_PIN; //*номер пина на котором поднимаеться сигнал в случае прехода в режим ecall
tUveosNotGostSettings notGost;
} tUveosGostSettings;
// AUTOMATIC REGISTRATION у
void vUveosGostSettingsInitDefaults(tUveosGostSettings *gostSettings);
#endif /* INC_UVEOS_GOST_SETTINGS_H_ */

View File

@ -0,0 +1,50 @@
/*
* UVEOS_GOST_SettingsEnums.h
*
* Created on: Apr 12, 2021
* Author: zemon
*/
#ifndef INC_UVEOS_GOST_SETTINGSENUMS_H_
#define INC_UVEOS_GOST_SETTINGSENUMS_H_
typedef enum {
UVEOS_GOST_NONE,
UVEOS_GOST_PIN_1,
UVEOS_GOST_PIN_2,
UVEOS_GOST_PIN_3,
UVEOS_GOST_PIN_4,
UVEOS_GOST_PIN_5,
UVEOS_GOST_PIN_6,
UVEOS_GOST_PIN_7,
UVEOS_GOST_PIN_8
} eUveosGostPin;
typedef enum {
UVEOS_GOST_PASSENGER_VEHICLE_CLASS_M1 = 1,
UVEOS_GOST_BUSES_AND_COACHES_CLASS_M2 = 2,
UVEOS_GOST_BUSES_AND_COACHES_CLASS_M3 = 3,
UVEOS_GOST_LIGHT_COMMERCIAL_VEHICLES_CLASS_N1 = 4,
UVEOS_GOST_HEAVY_DUTY_VEHICLES_CLASS_N2 = 5,
UVEOS_GOST_HEAVY_DUTY_VEHICLES_CLASS_N3 = 6,
UVEOS_GOST_MOTORCYCLE_CLASS_L1E = 7,
UVEOS_GOST_MOTORCYCLE_CLASS_L2E = 8,
UVEOS_GOST_MOTORCYCLE_CLASS_L3E = 9,
UVEOS_GOST_MOTORCYCLE_CLASS_L4E = 10,
UVEOS_GOST_MOTORCYCLE_CLASS_L5E = 11,
UVEOS_GOST_MOTORCYCLE_CLASS_L6E = 12,
UVEOS_GOST_MOTORCYCLE_CLASS_L7E = 13
} eUveosGostVehicleType;
typedef enum {
UVEOS_GOST_GASOLINE_TANK_PRESENT = 32,
UVEOS_GOST_DIESEL_TANK_PRESENT = 16,
UVEOS_GOST_COMPRESSED_NATURAL_GAS = 8,
UVEOS_GOST_LIQUID_PROPANE_GAS = 4,
UVEOS_GOST_ELECTRIC_ENERGY_STORAGE = 2,
UVEOS_GOST_HYDROGEN_STORAGE = 1
} eUveosGostVehiclePropulsionStorageType;
#endif /* INC_UVEOS_GOST_SETTINGSENUMS_H_ */

79
Src/UveosGostSettings.c Normal file
View File

@ -0,0 +1,79 @@
/*
* UVEOS_GOST_Settings.c
*
* Created on: Apr 14, 2021
* Author: zemon
*/
#include <UveosGostSettings.h>
void vUveosNotGostSettingsInitDefaults(tUveosNotGostSettings *env) {
env->ECALL_TEST_MODE = 0;
env->FULL_POWER_OFF_TIME = 10;
env->BIP_BACKLIGHT_MODE = 1;
env->BIP_GREEN_LED_POWER_MODE = 1;
env->BIP_RED_LED_POWER_MODE = 1;
String16CopyStatic(&env->CODEC_CONF, "00109000040033060f20320000008a");
}
void vUveosGostSettingsInitDefaults(tUveosGostSettings *gostSettings) {
//Radio settings
gostSettings->RADIO_MUTE_DELAY = 0; //Задержка между установкой сигнала «радио mute» и началом проигрывания звука
gostSettings->RADIO_UNMUTE_DELAY = 0; //Задержка между снятием сигнала «радио mute» и окончанием проигрывания звука
//Common settings
gostSettings->CALL_AUTO_ANSWER_TIME = 20; //Промежуток времени после завершения экстренного вызова, в течение которого УСВ автоматически отвечает на входящие звонки
gostSettings->POST_TEST_REGISTRATION_TIME = 120; //Промежуток времени, в течение которого УСВ остается зарегистрированной в сети после передачирезультатов тестирования оператору системы
gostSettings->TEST_MODE_END_DISTANCE = 300; //Дистанция, на которой режим тестирования выключается автоматически
gostSettings->GARAGE_MODE_END_DISTANCE = 300; //Дистанция, на которой режим «Автосервис» выключается автоматически
String16CopyStatic(&gostSettings->ECALL_TEST_NUMBER, "+79418100029");
gostSettings->GARAGE_MODE_PIN = 0;
gostSettings->INT_MEM_TRANSMIT_INTERVAL = 60;
gostSettings->INT_MEM_TRANSMIT_ATTEMPTS = 10;
//Service configuration
gostSettings->CRASH_SIGNAL_INTERNAL = 1;
gostSettings->CRASH_SIGNAL_EXTERNAL = 0;
gostSettings->ASI15_TRESHOLD = 0.7f;
gostSettings->ECALL_MODE_PIN = UVEOS_GOST_NONE;
gostSettings->SOS_BUTTON_TIME = 200;
gostSettings->CCFT = 60;
gostSettings->MSD_MAX_TRANSMISSION_TIME = 20;
gostSettings->NAD_DEREGISTRATION_TIME = 120;
gostSettings->ECALL_NO_AUTOMATIC_TRIGGERING = 0;
gostSettings->ECALL_DIAL_DURATION = 5;
gostSettings->ECALL_AUTO_DIAL_ATTEMPTS = 10;
gostSettings->ECALL_MANUAL_DIAL_ATTEMPTS = 10;
gostSettings->ECALL_MANUAL_CAN_CANCEL = 1;
String16CopyStatic(&gostSettings->ECALL_SMS_FALLBACK_NUMBER, "2233");
//Testing settings
gostSettings->TEST_REGISTRATION_PERIOD = 5;
//Emergence acceleration profile
gostSettings->IGNITION_OFF_FOLLOW_UP_TIME1 = 120;
gostSettings->IGNITION_OFF_FOLLOW_UP_TIME2 = 240;
gostSettings->CRASH_RECORD_TIME = 250;
gostSettings->CRASH_RECORD_RESOLUTION = 1;
gostSettings->CRASH_PRE_RECORD_TIME = 3500;
gostSettings->CRASH_PRE_RECORD_RESOLUTION = 5;
//Other settings
gostSettings->GNSS_POWER_OFF_TIME = 500;
gostSettings->GNSS_DATA_RATE = 1;
gostSettings->GNSS_MIN_ELEVATION = 5;
//Vehicle parameters
String32CopyStatic(&gostSettings->VIN, "0");
gostSettings->VEHICLE_TYPE = 0;
gostSettings->VEHICLE_PROPULSION_STORAGE_TYPE = 0;
gostSettings->VEHICLE_PASSENGERS_NUMBER = 0;
vUveosNotGostSettingsInitDefaults(&gostSettings->notGost);
}

17
modular.json Normal file
View File

@ -0,0 +1,17 @@
{
"dep": [
{
"type": "git",
"provider": "NAVIGATOR_UVEOS_NATION_TELIT",
"repo": "BaseTypes"
}
],
"cmake": {
"inc_dirs": [
"Inc"
],
"srcs": [
"Src/**.c"
]
}
}