Wait until CAN1 or CAN2 save anything to FIFO buffer
- Moving CAN event flag to vCANLoggerListen to avoid possible race condition and to make ISR leaner
This commit is contained in:
+1
-2
@@ -99,7 +99,6 @@ void HAL_CAN_RxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan)
|
|||||||
|
|
||||||
if (osMessageQueuePut(queue, &message, 0U, 0U) == osOK)
|
if (osMessageQueuePut(queue, &message, 0U, 0U) == osOK)
|
||||||
{
|
{
|
||||||
osEventFlagsSet(xCanEventFlags, flag);
|
|
||||||
osThreadFlagsSet(led_task, 0x01);
|
osThreadFlagsSet(led_task, 0x01);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -130,7 +129,7 @@ void vCANLoggerListen(void *argument)
|
|||||||
{
|
{
|
||||||
if (osMessageQueueGet(queue, &message, NULL, osWaitForever) == osOK)
|
if (osMessageQueueGet(queue, &message, NULL, osWaitForever) == osOK)
|
||||||
{
|
{
|
||||||
|
osEventFlagsSet(xCanEventFlags, flag);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* CODE END */
|
/* CODE END */
|
||||||
|
|||||||
@@ -94,6 +94,14 @@ void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
|
|||||||
*/
|
*/
|
||||||
void vUARTLogger(void *argument)
|
void vUARTLogger(void *argument)
|
||||||
{
|
{
|
||||||
|
CanMessage_t msg;
|
||||||
|
char tx_buffer[45]; // converted extended frame
|
||||||
|
bool queues_empty;
|
||||||
|
|
||||||
|
for (;;)
|
||||||
|
{
|
||||||
|
osEventFlagsWait(xCanEventFlags, 0x03, osFlagsWaitAny, osWaitForever);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/* END vUARTLoggerListen */
|
/* END vUARTLoggerListen */
|
||||||
|
|||||||
Reference in New Issue
Block a user