From 758c4e1cf1440782d741bd3d8bc2a541c77ceccf Mon Sep 17 00:00:00 2001 From: cfif Date: Mon, 23 Mar 2026 17:37:39 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=B0=D1=87=D0=B0=D0=BB=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MainModesArbiter.h | 4 ++++ MainModesArbiter_InitStage.c | 20 +++++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/MainModesArbiter.h b/MainModesArbiter.h index df11aa8..17d8862 100644 --- a/MainModesArbiter.h +++ b/MainModesArbiter.h @@ -39,6 +39,10 @@ typedef struct { tTaskSerial TaskSerialUSB; tTaskSerial TaskSerialUART; + osMessageQueueId_t txDataQueue_Spontany; + osMessageQueueId_t txDataQueue_Cyclic0; + osMessageQueueId_t txDataQueue_Cyclic1; + struct { osThreadId_t id; uint32_t stack[2048 * 1]; diff --git a/MainModesArbiter_InitStage.c b/MainModesArbiter_InitStage.c index bc2e83e..f14d312 100644 --- a/MainModesArbiter_InitStage.c +++ b/MainModesArbiter_InitStage.c @@ -51,23 +51,33 @@ static void Mma_InitSubSystems(tMma *env) { CommandLine_Init(&env->cli, &env->serialPorts->cliVirtualInIo); CommandLine_StartThread(&env->cli); + env->txDataQueue_Cyclic0 = osMessageQueueNew(5, sizeof(can_rx_message_type), NULL); + env->txDataQueue_Cyclic1 = osMessageQueueNew(5, sizeof(can_rx_message_type), NULL); + env->txDataQueue_Spontany = osMessageQueueNew(5, sizeof(can_rx_message_Spontany), NULL); TaskSerialUSB_Init(&env->TaskSerialUSB, - 0, - &env->serialPorts->SerialPortUsbIO, - &env->canPorts->Can1_IO + SPONTANY_FROM_UART, + &env->serialPorts->SerialPortUsbIO, + &env->canPorts->Can1_IO, + env->txDataQueue_Cyclic0, + env->txDataQueue_Cyclic1, + env->txDataQueue_Spontany ); TaskSerialUSB_StartThread(&env->TaskSerialUSB); TaskSerialUART_Init(&env->TaskSerialUART, - 1, + SPONTANY_FROM_UART_USB, &env->serialPorts->Rs232_IO, - &env->canPorts->Can1_IO + &env->canPorts->Can1_IO, + env->txDataQueue_Cyclic0, + env->txDataQueue_Cyclic1, + env->txDataQueue_Spontany ); TaskSerialUART_StartThread(&env->TaskSerialUART); + LoggerInfoStatic(&env->slog.logger, LOG_TASK_MAIN, "Конец инициализации подсистем") }