diff --git a/src/devices/stm32/can.cpp b/src/devices/stm32/can.cpp index c396625..2f2cac6 100644 --- a/src/devices/stm32/can.cpp +++ b/src/devices/stm32/can.cpp @@ -225,6 +225,15 @@ namespace sta STA_WEAK void CanBus_RxPendingCallbackSecondary(uint32_t fifo) {} + + STA_WEAK + void CanBus_TxMailboxCompleteCallback() + {} + + STA_WEAK + void CanBus_TxMailboxCompleteCallbackSecondary() + {} + } // namespace sta @@ -252,6 +261,39 @@ extern "C" sta::CanBus_RxPendingCallbackSecondary(CAN_RX_FIFO1); } } + + void HAL_CAN_TxMailbox0CompleteCallback(CAN_HandleTypeDef *hcan) + { + if (hcan == &STA_STM32_CAN_HANDLE) + { + sta::CanBus_TxMailboxCompleteCallback(); + } + else{ + sta::CanBus_TxMailboxCompleteCallbackSecondary(); + } + } + + void HAL_CAN_TxMailbox1CompleteCallback(CAN_HandleTypeDef *hcan) + { + if (hcan == &STA_STM32_CAN_HANDLE) + { + sta::CanBus_TxMailboxCompleteCallback(); + } + else{ + sta::CanBus_TxMailboxCompleteCallbackSecondary(); + } + } + + void HAL_CAN_TxMailbox2CompleteCallback(CAN_HandleTypeDef *hcan) + { + if (hcan == &STA_STM32_CAN_HANDLE) + { + sta::CanBus_TxMailboxCompleteCallback(); + } + else{ + sta::CanBus_TxMailboxCompleteCallbackSecondary(); + } + } } #endif // STA_STM32_CAN_GLOBAL