Update canlog.c

This commit is contained in:
2026-06-15 14:06:26 +02:00
parent 47f225a4d3
commit b3c4f6b131
+13 -6
View File
@@ -98,13 +98,20 @@ void HAL_CAN_RxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan)
void vCANLoggerListen(void *argument) void vCANLoggerListen(void *argument)
{ {
/* CODE BEGIN */ /* CODE BEGIN */
LEDContext *context = (LEDContext*)argument; CAN_HandleTypeDef *hcan = (CAN_HandleTypeDef*)argument;
osMessageQueueId_t queue;
CanMessage_t message;
for (;;) queue = (hcan->Instance == CAN1) ? xCAN1RxQueue : xCAN2RxQueue;
{
if (osSemaphoreAcquire(context->semaphore, 25U) == osOK) HAL_GPIO_WritePin(context->led->port, context->led->pin, GPIO_PIN_SET); for (;;)
else HAL_GPIO_WritePin(context->led->port, context->led->pin, GPIO_PIN_RESET); {
/* CODE END */ if (osMessageQueueGet(queue, &message, NULL, osWaitForever) == osOK)
{
osSemaphoreRelease( (hcan->Instance == CAN1) ? xSemaphoreCAN1 : xSemaphoreCAN2 );
}
}
/* CODE END */
} }
/* END vCANLoggerListen */ /* END vCANLoggerListen */