Исправлена инициализация и основной цикл задачи
This commit is contained in:
parent
1f74f2206c
commit
6c947a0476
|
|
@ -544,7 +544,7 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
Pwm_AudioDisable(&env->power);
|
Pwm_AudioDisable(&env->power);
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Звуковой усилитель отключён")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Звуковой усилитель отключён")
|
||||||
AtGsm_OperatorSelectionDeregister(&env->gsmWithGnss.gsmAt);
|
AtGsm_OperatorSelectionDeregister(&env->gsmWithGnss.gsmAt);
|
||||||
|
|
@ -553,6 +553,9 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
SystemDelayMs(2000);
|
SystemDelayMs(2000);
|
||||||
GsmWithGnss_SelectStandartNetwork(&env->gsmWithGnss.gsmAt, 25);
|
GsmWithGnss_SelectStandartNetwork(&env->gsmWithGnss.gsmAt, 25);
|
||||||
// Mma_StartTestThreadStart(env);
|
// Mma_StartTestThreadStart(env);
|
||||||
|
*/
|
||||||
|
SystemDelayMs(100);
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
|
||||||
Mma_ColorBip(env);
|
Mma_ColorBip(env);
|
||||||
|
|
@ -561,6 +564,11 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
if (env->storage.runtime.EGTS_FLEET_ON == false) {
|
if (env->storage.runtime.EGTS_FLEET_ON == false) {
|
||||||
Mma_gnssUpdate(env, &indicationState);
|
Mma_gnssUpdate(env, &indicationState);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
indicationState = GsmWithGnss_IsGnssReady(&env->gsmWithGnss) ?
|
||||||
|
DEVICE_MODE_UVEOS_ERA_GNSS_READY :
|
||||||
|
DEVICE_MODE_UVEOS_ERA_WAIT_GNSS;
|
||||||
|
|
||||||
if (osMutexAcquire(env->gsmWithGnss.gsmAt.access, 1000) == osOK) {
|
if (osMutexAcquire(env->gsmWithGnss.gsmAt.access, 1000) == osOK) {
|
||||||
AtGsm_Gsnss_GetNMEA_Pack(&env->gsmWithGnss, 400);
|
AtGsm_Gsnss_GetNMEA_Pack(&env->gsmWithGnss, 400);
|
||||||
osMutexRelease(env->gsmWithGnss.gsmAt.access);
|
osMutexRelease(env->gsmWithGnss.gsmAt.access);
|
||||||
|
|
@ -575,8 +583,12 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
Mma_gnssUpdate(env, &indicationState);
|
Mma_gnssUpdate(env, &indicationState);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef UVEOS_ADD_TELEMATICA
|
||||||
|
if (env->storage.runtime.EGTS_FLEET_ON == false) {
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Начало итерации главного цикла")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Начало итерации главного цикла")
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Проверяем нужна ли сеть...")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Проверяем нужна ли сеть...")
|
||||||
|
|
||||||
if (EraGlonassUveos_IsRequireNetwork(&env->uveos)) {
|
if (EraGlonassUveos_IsRequireNetwork(&env->uveos)) {
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Нужна, подключаемся")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Нужна, подключаемся")
|
||||||
Mma_SetNetworkRegistration(env, true);
|
Mma_SetNetworkRegistration(env, true);
|
||||||
|
|
@ -584,6 +596,21 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Ненужна, отключаемся")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Ненужна, отключаемся")
|
||||||
Mma_SetNetworkRegistration(env, false);
|
Mma_SetNetworkRegistration(env, false);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef UVEOS_ADD_TELEMATICA
|
||||||
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Начало итерации главного цикла")
|
||||||
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Проверяем нужна ли сеть...")
|
||||||
|
|
||||||
|
if (EraGlonassUveos_IsRequireNetwork(&env->uveos)) {
|
||||||
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Нужна, подключаемся")
|
||||||
|
Mma_SetNetworkRegistration(env, true);
|
||||||
|
} else {
|
||||||
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Ненужна, отключаемся")
|
||||||
|
Mma_SetNetworkRegistration(env, false);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Выполняем постоянный тест")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Выполняем постоянный тест")
|
||||||
if (DeviceTesting_Always(&env->testing)) {
|
if (DeviceTesting_Always(&env->testing)) {
|
||||||
|
|
@ -596,8 +623,10 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
LoggerTraceStatic(LOGGER, LOG_SIGN, "Обновляем статус индикации")
|
LoggerTraceStatic(LOGGER, LOG_SIGN, "Обновляем статус индикации")
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Mma_SetMode(env, indicationState);
|
Mma_SetMode(env, indicationState);
|
||||||
|
|
||||||
|
|
||||||
// if(env->uveos.timings.lastInMemTransmit < SystemGetMs()){
|
// if(env->uveos.timings.lastInMemTransmit < SystemGetMs()){
|
||||||
// LoggerInfoStatic(LOGGER, LOG_SIGN, "Периодическая проверка необходимости повторной отправки МНД");
|
// LoggerInfoStatic(LOGGER, LOG_SIGN, "Периодическая проверка необходимости повторной отправки МНД");
|
||||||
// tEraGlonassMsdTableItem *item = NULL;
|
// tEraGlonassMsdTableItem *item = NULL;
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,7 @@ typedef struct {
|
||||||
tUserInput userInput;
|
tUserInput userInput;
|
||||||
tUserIndication indication;
|
tUserIndication indication;
|
||||||
tComInt comInt;
|
tComInt comInt;
|
||||||
tCli cli;
|
// tCli cli;
|
||||||
tCli cliVrt;
|
tCli cliVrt;
|
||||||
|
|
||||||
tDeviceTesting testing;
|
tDeviceTesting testing;
|
||||||
|
|
@ -78,7 +78,7 @@ typedef struct {
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
osThreadId_t id;
|
osThreadId_t id;
|
||||||
uint32_t stack[4048]; //4048 6072
|
uint32_t stack[2048]; //4048 6072
|
||||||
StaticTask_t controlBlock;
|
StaticTask_t controlBlock;
|
||||||
osThreadAttr_t attr;
|
osThreadAttr_t attr;
|
||||||
} thread;
|
} thread;
|
||||||
|
|
|
||||||
|
|
@ -276,7 +276,7 @@ static void Mma_InitSubSystems(tMma *env) {
|
||||||
&env->power, &env->gsmWithGnss,
|
&env->power, &env->gsmWithGnss,
|
||||||
&env->uveos
|
&env->uveos
|
||||||
);
|
);
|
||||||
|
/*
|
||||||
Cli_Init(
|
Cli_Init(
|
||||||
&env->cli,
|
&env->cli,
|
||||||
&env->serialPorts->DebugIO,
|
&env->serialPorts->DebugIO,
|
||||||
|
|
@ -293,7 +293,7 @@ static void Mma_InitSubSystems(tMma *env) {
|
||||||
&env->gsmWithGnss,
|
&env->gsmWithGnss,
|
||||||
&env->uveos
|
&env->uveos
|
||||||
);
|
);
|
||||||
|
*/
|
||||||
Mma_InitComInt(env, &env->storage.nvm.device.serialNumber.value, &env->storage.publicVariablesTable);
|
Mma_InitComInt(env, &env->storage.nvm.device.serialNumber.value, &env->storage.publicVariablesTable);
|
||||||
LoggerInfoStatic(LOGGER, LOG_SIGN, "Инициализация подсистем завершена")
|
LoggerInfoStatic(LOGGER, LOG_SIGN, "Инициализация подсистем завершена")
|
||||||
}
|
}
|
||||||
|
|
@ -305,7 +305,7 @@ static void Mma_RunSubThreads(tMma *env) {
|
||||||
Accel_StartThread(&env->accel);
|
Accel_StartThread(&env->accel);
|
||||||
CrashDetection_StartThread(&env->crashDetect);
|
CrashDetection_StartThread(&env->crashDetect);
|
||||||
|
|
||||||
Cli_StartThread(&env->cli);
|
//++ Cli_StartThread(&env->cli);
|
||||||
Cli_StartThread(&env->cliVrt);
|
Cli_StartThread(&env->cliVrt);
|
||||||
|
|
||||||
UserInput_StartThread(&env->userInput);
|
UserInput_StartThread(&env->userInput);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue