diff --git a/MainModesArbiter.h b/MainModesArbiter.h index 4c31130..3ecce61 100644 --- a/MainModesArbiter.h +++ b/MainModesArbiter.h @@ -42,6 +42,8 @@ #include #include +#include "CanMain.h" + typedef struct { // Преферийные интерфесы @@ -89,6 +91,8 @@ typedef struct { volatile bool kzModeBloc; // tSignPack signature; + tCanMain canMain; + #ifdef UVEOS_ADD_TELEMATICA tEgtsProcessing egtsProcessing; #endif diff --git a/MainModesArbiter_InitStage.c b/MainModesArbiter_InitStage.c index ae49936..1067c03 100644 --- a/MainModesArbiter_InitStage.c +++ b/MainModesArbiter_InitStage.c @@ -300,6 +300,13 @@ static void Mma_InitSubSystems(tMma *env) { ); */ Mma_InitComInt(env, &env->storage.nvm.device.serialNumber.value, &env->storage.publicVariablesTable); + + CanMain_Init( + &env->canMain, + &env->serialPorts->SerialPortFrameCan2IO, + &env->slog + ); + LoggerInfoStatic(LOGGER, LOG_SIGN, "Инициализация подсистем завершена") } @@ -317,6 +324,8 @@ static void Mma_RunSubThreads(tMma *env) { ComInt_StartThread(&env->comInt); + CanMain_Start(&env->canMain); + LoggerInfoStatic(LOGGER, LOG_SIGN, "Субпотоки запущены") }