diff --git a/Src/CanSerialPortFrame.c b/Src/CanSerialPortFrame.c index c2aafcc..1f35bce 100644 --- a/Src/CanSerialPortFrame.c +++ b/Src/CanSerialPortFrame.c @@ -229,8 +229,28 @@ void CanSerialPortFrameIrqRxProcessing0(tCanSerialPortFrameArtery *env) { can_rx_message_type rx_message_struct; // if (can_flag_get(env->can, CAN_RF0MN_FLAG) != RESET) { + can_message_receive(env->can, CAN_RX_FIFO0, &rx_message_struct); + if ((rx_message_struct.standard_id == 0x58E) || + (rx_message_struct.standard_id == 0x58F) || + (rx_message_struct.standard_id == 0x594)) { + + osMessageQueuePut(env->rxDataQueue1, &rx_message_struct, 0x0, 0U); + + if (env->rxDataSnifferQueue1) { + osMessageQueuePut(env->rxDataSnifferQueue1, &rx_message_struct, 0x0, 0U); + } + + } else { + + osMessageQueuePut(env->rxDataQueue0, &rx_message_struct, 0x0, 0U); + + if (env->rxDataSnifferQueue0) { + osMessageQueuePut(env->rxDataSnifferQueue0, &rx_message_struct, 0x0, 0U); + } + } + osMessageQueuePut(env->rxDataQueue0, &rx_message_struct, 0x0, 0U); if (env->rxDataSnifferQueue0) {