Skip to content

Commit 80e3f44

Browse files
committed
Update Error Callback
1 parent 3d7e3d6 commit 80e3f44

File tree

1 file changed

+21
-5
lines changed

1 file changed

+21
-5
lines changed

bsp/stm32/libraries/HAL_Drivers/drivers/drv_fdcan.c

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -561,21 +561,37 @@ void HAL_FDCAN_TxBufferCompleteCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t Bu
561561
}
562562

563563

564-
void HAL_FDCAN_TxFifoEmptyCallback(FDCAN_HandleTypeDef *hfdcan)
564+
void HAL_FDCAN_TxBufferCompleteCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes)
565565
{
566566
if(hfdcan->Instance == FDCAN1)
567567
{
568-
//can1
568+
#ifdef BSP_USING_FDCAN1
569+
rt_hw_can_isr(&st_DrvCan1.device, RT_CAN_EVENT_TX_DONE | ((BufferIndexes-1) << 8));
570+
#endif
569571
}
570572
else
571573
{
572-
//can2
574+
#ifdef BSP_USING_FDCAN2
575+
rt_hw_can_isr(&st_DrvCan2.device, RT_CAN_EVENT_TX_DONE | ((BufferIndexes-1) << 8));
576+
#endif
573577
}
574578
}
575579

576-
void HAL_FDCAN_TxBufferAbortCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes)
577-
{
578580

581+
void HAL_FDCAN_TxFifoEmptyCallback(FDCAN_HandleTypeDef *hfdcan)
582+
{
583+
if(hfdcan->Instance == FDCAN1)
584+
{
585+
#ifdef BSP_USING_FDCAN1
586+
rt_hw_can_isr(&st_DrvCan1.device, RT_CAN_EVENT_TX_DONE);
587+
#endif
588+
}
589+
else
590+
{
591+
#ifdef BSP_USING_FDCAN2
592+
rt_hw_can_isr(&st_DrvCan2.device, RT_CAN_EVENT_TX_DONE);
593+
#endif
594+
}
579595
}
580596

581597
void HAL_FDCAN_ErrorCallback(FDCAN_HandleTypeDef *hfdcan)

0 commit comments

Comments
 (0)