Lines Matching refs:hcan

275 HAL_StatusTypeDef HAL_CAN_Init(CAN_HandleTypeDef *hcan)  in HAL_CAN_Init()  argument
280 if (hcan == NULL) in HAL_CAN_Init()
286 assert_param(IS_CAN_ALL_INSTANCE(hcan->Instance)); in HAL_CAN_Init()
287 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.TimeTriggeredMode)); in HAL_CAN_Init()
288 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.AutoBusOff)); in HAL_CAN_Init()
289 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.AutoWakeUp)); in HAL_CAN_Init()
290 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.AutoRetransmission)); in HAL_CAN_Init()
291 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.ReceiveFifoLocked)); in HAL_CAN_Init()
292 assert_param(IS_FUNCTIONAL_STATE(hcan->Init.TransmitFifoPriority)); in HAL_CAN_Init()
293 assert_param(IS_CAN_MODE(hcan->Init.Mode)); in HAL_CAN_Init()
294 assert_param(IS_CAN_SJW(hcan->Init.SyncJumpWidth)); in HAL_CAN_Init()
295 assert_param(IS_CAN_BS1(hcan->Init.TimeSeg1)); in HAL_CAN_Init()
296 assert_param(IS_CAN_BS2(hcan->Init.TimeSeg2)); in HAL_CAN_Init()
297 assert_param(IS_CAN_PRESCALER(hcan->Init.Prescaler)); in HAL_CAN_Init()
300 if (hcan->State == HAL_CAN_STATE_RESET) in HAL_CAN_Init()
303hcan->RxFifo0MsgPendingCallback = HAL_CAN_RxFifo0MsgPendingCallback; /* Legacy weak RxFifo0MsgP… in HAL_CAN_Init()
304hcan->RxFifo0FullCallback = HAL_CAN_RxFifo0FullCallback; /* Legacy weak RxFifo0Full… in HAL_CAN_Init()
305hcan->RxFifo1MsgPendingCallback = HAL_CAN_RxFifo1MsgPendingCallback; /* Legacy weak RxFifo1MsgP… in HAL_CAN_Init()
306hcan->RxFifo1FullCallback = HAL_CAN_RxFifo1FullCallback; /* Legacy weak RxFifo1Full… in HAL_CAN_Init()
307hcan->TxMailbox0CompleteCallback = HAL_CAN_TxMailbox0CompleteCallback; /* Legacy weak TxMailbox0C… in HAL_CAN_Init()
308hcan->TxMailbox1CompleteCallback = HAL_CAN_TxMailbox1CompleteCallback; /* Legacy weak TxMailbox1C… in HAL_CAN_Init()
309hcan->TxMailbox2CompleteCallback = HAL_CAN_TxMailbox2CompleteCallback; /* Legacy weak TxMailbox2C… in HAL_CAN_Init()
310hcan->TxMailbox0AbortCallback = HAL_CAN_TxMailbox0AbortCallback; /* Legacy weak TxMailbox0A… in HAL_CAN_Init()
311hcan->TxMailbox1AbortCallback = HAL_CAN_TxMailbox1AbortCallback; /* Legacy weak TxMailbox1A… in HAL_CAN_Init()
312hcan->TxMailbox2AbortCallback = HAL_CAN_TxMailbox2AbortCallback; /* Legacy weak TxMailbox2A… in HAL_CAN_Init()
313hcan->SleepCallback = HAL_CAN_SleepCallback; /* Legacy weak SleepCallba… in HAL_CAN_Init()
314hcan->WakeUpFromRxMsgCallback = HAL_CAN_WakeUpFromRxMsgCallback; /* Legacy weak WakeUpFromR… in HAL_CAN_Init()
315hcan->ErrorCallback = HAL_CAN_ErrorCallback; /* Legacy weak ErrorCallba… in HAL_CAN_Init()
317 if (hcan->MspInitCallback == NULL) in HAL_CAN_Init()
319 hcan->MspInitCallback = HAL_CAN_MspInit; /* Legacy weak MspInit */ in HAL_CAN_Init()
323 hcan->MspInitCallback(hcan); in HAL_CAN_Init()
327 if (hcan->State == HAL_CAN_STATE_RESET) in HAL_CAN_Init()
330 HAL_CAN_MspInit(hcan); in HAL_CAN_Init()
335 SET_BIT(hcan->Instance->MCR, CAN_MCR_INRQ); in HAL_CAN_Init()
341 while ((hcan->Instance->MSR & CAN_MSR_INAK) == 0U) in HAL_CAN_Init()
346 hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; in HAL_CAN_Init()
349 hcan->State = HAL_CAN_STATE_ERROR; in HAL_CAN_Init()
356 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_SLEEP); in HAL_CAN_Init()
362 while ((hcan->Instance->MSR & CAN_MSR_SLAK) != 0U) in HAL_CAN_Init()
367 hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; in HAL_CAN_Init()
370 hcan->State = HAL_CAN_STATE_ERROR; in HAL_CAN_Init()
377 if (hcan->Init.TimeTriggeredMode == ENABLE) in HAL_CAN_Init()
379 SET_BIT(hcan->Instance->MCR, CAN_MCR_TTCM); in HAL_CAN_Init()
383 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_TTCM); in HAL_CAN_Init()
387 if (hcan->Init.AutoBusOff == ENABLE) in HAL_CAN_Init()
389 SET_BIT(hcan->Instance->MCR, CAN_MCR_ABOM); in HAL_CAN_Init()
393 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_ABOM); in HAL_CAN_Init()
397 if (hcan->Init.AutoWakeUp == ENABLE) in HAL_CAN_Init()
399 SET_BIT(hcan->Instance->MCR, CAN_MCR_AWUM); in HAL_CAN_Init()
403 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_AWUM); in HAL_CAN_Init()
407 if (hcan->Init.AutoRetransmission == ENABLE) in HAL_CAN_Init()
409 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_NART); in HAL_CAN_Init()
413 SET_BIT(hcan->Instance->MCR, CAN_MCR_NART); in HAL_CAN_Init()
417 if (hcan->Init.ReceiveFifoLocked == ENABLE) in HAL_CAN_Init()
419 SET_BIT(hcan->Instance->MCR, CAN_MCR_RFLM); in HAL_CAN_Init()
423 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_RFLM); in HAL_CAN_Init()
427 if (hcan->Init.TransmitFifoPriority == ENABLE) in HAL_CAN_Init()
429 SET_BIT(hcan->Instance->MCR, CAN_MCR_TXFP); in HAL_CAN_Init()
433 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_TXFP); in HAL_CAN_Init()
437 WRITE_REG(hcan->Instance->BTR, (uint32_t)(hcan->Init.Mode | in HAL_CAN_Init()
438 hcan->Init.SyncJumpWidth | in HAL_CAN_Init()
439 hcan->Init.TimeSeg1 | in HAL_CAN_Init()
440 hcan->Init.TimeSeg2 | in HAL_CAN_Init()
441 (hcan->Init.Prescaler - 1U))); in HAL_CAN_Init()
444 hcan->ErrorCode = HAL_CAN_ERROR_NONE; in HAL_CAN_Init()
447 hcan->State = HAL_CAN_STATE_READY; in HAL_CAN_Init()
460 HAL_StatusTypeDef HAL_CAN_DeInit(CAN_HandleTypeDef *hcan) in HAL_CAN_DeInit() argument
463 if (hcan == NULL) in HAL_CAN_DeInit()
469 assert_param(IS_CAN_ALL_INSTANCE(hcan->Instance)); in HAL_CAN_DeInit()
472 (void)HAL_CAN_Stop(hcan); in HAL_CAN_DeInit()
475 if (hcan->MspDeInitCallback == NULL) in HAL_CAN_DeInit()
477 hcan->MspDeInitCallback = HAL_CAN_MspDeInit; /* Legacy weak MspDeInit */ in HAL_CAN_DeInit()
481 hcan->MspDeInitCallback(hcan); in HAL_CAN_DeInit()
485 HAL_CAN_MspDeInit(hcan); in HAL_CAN_DeInit()
489 SET_BIT(hcan->Instance->MCR, CAN_MCR_RESET); in HAL_CAN_DeInit()
492 hcan->ErrorCode = HAL_CAN_ERROR_NONE; in HAL_CAN_DeInit()
495 hcan->State = HAL_CAN_STATE_RESET; in HAL_CAN_DeInit()
507 __weak void HAL_CAN_MspInit(CAN_HandleTypeDef *hcan) in HAL_CAN_MspInit() argument
510 UNUSED(hcan); in HAL_CAN_MspInit()
523 __weak void HAL_CAN_MspDeInit(CAN_HandleTypeDef *hcan) in HAL_CAN_MspDeInit() argument
526 UNUSED(hcan); in HAL_CAN_MspDeInit()
559 HAL_StatusTypeDef HAL_CAN_RegisterCallback(CAN_HandleTypeDef *hcan, HAL_CAN_CallbackIDTypeDef Callb… in HAL_CAN_RegisterCallback() argument
567 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_RegisterCallback()
572 if (hcan->State == HAL_CAN_STATE_READY) in HAL_CAN_RegisterCallback()
577 hcan->TxMailbox0CompleteCallback = pCallback; in HAL_CAN_RegisterCallback()
581 hcan->TxMailbox1CompleteCallback = pCallback; in HAL_CAN_RegisterCallback()
585 hcan->TxMailbox2CompleteCallback = pCallback; in HAL_CAN_RegisterCallback()
589 hcan->TxMailbox0AbortCallback = pCallback; in HAL_CAN_RegisterCallback()
593 hcan->TxMailbox1AbortCallback = pCallback; in HAL_CAN_RegisterCallback()
597 hcan->TxMailbox2AbortCallback = pCallback; in HAL_CAN_RegisterCallback()
601 hcan->RxFifo0MsgPendingCallback = pCallback; in HAL_CAN_RegisterCallback()
605 hcan->RxFifo0FullCallback = pCallback; in HAL_CAN_RegisterCallback()
609 hcan->RxFifo1MsgPendingCallback = pCallback; in HAL_CAN_RegisterCallback()
613 hcan->RxFifo1FullCallback = pCallback; in HAL_CAN_RegisterCallback()
617 hcan->SleepCallback = pCallback; in HAL_CAN_RegisterCallback()
621 hcan->WakeUpFromRxMsgCallback = pCallback; in HAL_CAN_RegisterCallback()
625 hcan->ErrorCallback = pCallback; in HAL_CAN_RegisterCallback()
629 hcan->MspInitCallback = pCallback; in HAL_CAN_RegisterCallback()
633 hcan->MspDeInitCallback = pCallback; in HAL_CAN_RegisterCallback()
638 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_RegisterCallback()
645 else if (hcan->State == HAL_CAN_STATE_RESET) in HAL_CAN_RegisterCallback()
650 hcan->MspInitCallback = pCallback; in HAL_CAN_RegisterCallback()
654 hcan->MspDeInitCallback = pCallback; in HAL_CAN_RegisterCallback()
659 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_RegisterCallback()
669 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_RegisterCallback()
702 HAL_StatusTypeDef HAL_CAN_UnRegisterCallback(CAN_HandleTypeDef *hcan, HAL_CAN_CallbackIDTypeDef Cal… in HAL_CAN_UnRegisterCallback() argument
706 if (hcan->State == HAL_CAN_STATE_READY) in HAL_CAN_UnRegisterCallback()
711 hcan->TxMailbox0CompleteCallback = HAL_CAN_TxMailbox0CompleteCallback; in HAL_CAN_UnRegisterCallback()
715 hcan->TxMailbox1CompleteCallback = HAL_CAN_TxMailbox1CompleteCallback; in HAL_CAN_UnRegisterCallback()
719 hcan->TxMailbox2CompleteCallback = HAL_CAN_TxMailbox2CompleteCallback; in HAL_CAN_UnRegisterCallback()
723 hcan->TxMailbox0AbortCallback = HAL_CAN_TxMailbox0AbortCallback; in HAL_CAN_UnRegisterCallback()
727 hcan->TxMailbox1AbortCallback = HAL_CAN_TxMailbox1AbortCallback; in HAL_CAN_UnRegisterCallback()
731 hcan->TxMailbox2AbortCallback = HAL_CAN_TxMailbox2AbortCallback; in HAL_CAN_UnRegisterCallback()
735 hcan->RxFifo0MsgPendingCallback = HAL_CAN_RxFifo0MsgPendingCallback; in HAL_CAN_UnRegisterCallback()
739 hcan->RxFifo0FullCallback = HAL_CAN_RxFifo0FullCallback; in HAL_CAN_UnRegisterCallback()
743 hcan->RxFifo1MsgPendingCallback = HAL_CAN_RxFifo1MsgPendingCallback; in HAL_CAN_UnRegisterCallback()
747 hcan->RxFifo1FullCallback = HAL_CAN_RxFifo1FullCallback; in HAL_CAN_UnRegisterCallback()
751 hcan->SleepCallback = HAL_CAN_SleepCallback; in HAL_CAN_UnRegisterCallback()
755 hcan->WakeUpFromRxMsgCallback = HAL_CAN_WakeUpFromRxMsgCallback; in HAL_CAN_UnRegisterCallback()
759 hcan->ErrorCallback = HAL_CAN_ErrorCallback; in HAL_CAN_UnRegisterCallback()
763 hcan->MspInitCallback = HAL_CAN_MspInit; in HAL_CAN_UnRegisterCallback()
767 hcan->MspDeInitCallback = HAL_CAN_MspDeInit; in HAL_CAN_UnRegisterCallback()
772 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_UnRegisterCallback()
779 else if (hcan->State == HAL_CAN_STATE_RESET) in HAL_CAN_UnRegisterCallback()
784 hcan->MspInitCallback = HAL_CAN_MspInit; in HAL_CAN_UnRegisterCallback()
788 hcan->MspDeInitCallback = HAL_CAN_MspDeInit; in HAL_CAN_UnRegisterCallback()
793 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_UnRegisterCallback()
803 hcan->ErrorCode |= HAL_CAN_ERROR_INVALID_CALLBACK; in HAL_CAN_UnRegisterCallback()
840 HAL_StatusTypeDef HAL_CAN_ConfigFilter(CAN_HandleTypeDef *hcan, const CAN_FilterTypeDef *sFilterCon… in HAL_CAN_ConfigFilter() argument
843 CAN_TypeDef *can_ip = hcan->Instance; in HAL_CAN_ConfigFilter()
844 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_ConfigFilter()
963 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_ConfigFilter()
1006 HAL_StatusTypeDef HAL_CAN_Start(CAN_HandleTypeDef *hcan) in HAL_CAN_Start() argument
1010 if (hcan->State == HAL_CAN_STATE_READY) in HAL_CAN_Start()
1013 hcan->State = HAL_CAN_STATE_LISTENING; in HAL_CAN_Start()
1016 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_INRQ); in HAL_CAN_Start()
1022 while ((hcan->Instance->MSR & CAN_MSR_INAK) != 0U) in HAL_CAN_Start()
1028 hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; in HAL_CAN_Start()
1031 hcan->State = HAL_CAN_STATE_ERROR; in HAL_CAN_Start()
1038 hcan->ErrorCode = HAL_CAN_ERROR_NONE; in HAL_CAN_Start()
1046 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_READY; in HAL_CAN_Start()
1058 HAL_StatusTypeDef HAL_CAN_Stop(CAN_HandleTypeDef *hcan) in HAL_CAN_Stop() argument
1062 if (hcan->State == HAL_CAN_STATE_LISTENING) in HAL_CAN_Stop()
1065 SET_BIT(hcan->Instance->MCR, CAN_MCR_INRQ); in HAL_CAN_Stop()
1071 while ((hcan->Instance->MSR & CAN_MSR_INAK) == 0U) in HAL_CAN_Stop()
1077 hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; in HAL_CAN_Stop()
1080 hcan->State = HAL_CAN_STATE_ERROR; in HAL_CAN_Stop()
1087 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_SLEEP); in HAL_CAN_Stop()
1090 hcan->State = HAL_CAN_STATE_READY; in HAL_CAN_Stop()
1098 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_STARTED; in HAL_CAN_Stop()
1113 HAL_StatusTypeDef HAL_CAN_RequestSleep(CAN_HandleTypeDef *hcan) in HAL_CAN_RequestSleep() argument
1115 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_RequestSleep()
1121 SET_BIT(hcan->Instance->MCR, CAN_MCR_SLEEP); in HAL_CAN_RequestSleep()
1129 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_RequestSleep()
1144 HAL_StatusTypeDef HAL_CAN_WakeUp(CAN_HandleTypeDef *hcan) in HAL_CAN_WakeUp() argument
1147 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_WakeUp()
1153 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_SLEEP); in HAL_CAN_WakeUp()
1165 hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; in HAL_CAN_WakeUp()
1169 } while ((hcan->Instance->MSR & CAN_MSR_SLAK) != 0U); in HAL_CAN_WakeUp()
1177 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_WakeUp()
1191 uint32_t HAL_CAN_IsSleepActive(const CAN_HandleTypeDef *hcan) in HAL_CAN_IsSleepActive() argument
1194 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_IsSleepActive()
1200 if ((hcan->Instance->MSR & CAN_MSR_SLAK) != 0U) in HAL_CAN_IsSleepActive()
1222 HAL_StatusTypeDef HAL_CAN_AddTxMessage(CAN_HandleTypeDef *hcan, const CAN_TxHeaderTypeDef *pHeader, in HAL_CAN_AddTxMessage() argument
1226 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_AddTxMessage()
1227 uint32_t tsr = READ_REG(hcan->Instance->TSR); in HAL_CAN_AddTxMessage()
1260 hcan->Instance->sTxMailBox[transmitmailbox].TIR = ((pHeader->StdId << CAN_TI0R_STID_Pos) | in HAL_CAN_AddTxMessage()
1265 hcan->Instance->sTxMailBox[transmitmailbox].TIR = ((pHeader->ExtId << CAN_TI0R_EXID_Pos) | in HAL_CAN_AddTxMessage()
1271 hcan->Instance->sTxMailBox[transmitmailbox].TDTR = (pHeader->DLC); in HAL_CAN_AddTxMessage()
1276 SET_BIT(hcan->Instance->sTxMailBox[transmitmailbox].TDTR, CAN_TDT0R_TGT); in HAL_CAN_AddTxMessage()
1280 WRITE_REG(hcan->Instance->sTxMailBox[transmitmailbox].TDHR, in HAL_CAN_AddTxMessage()
1285 WRITE_REG(hcan->Instance->sTxMailBox[transmitmailbox].TDLR, in HAL_CAN_AddTxMessage()
1292 SET_BIT(hcan->Instance->sTxMailBox[transmitmailbox].TIR, CAN_TI0R_TXRQ); in HAL_CAN_AddTxMessage()
1300 hcan->ErrorCode |= HAL_CAN_ERROR_PARAM; in HAL_CAN_AddTxMessage()
1308 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_AddTxMessage()
1322 HAL_StatusTypeDef HAL_CAN_AbortTxRequest(CAN_HandleTypeDef *hcan, uint32_t TxMailboxes) in HAL_CAN_AbortTxRequest() argument
1324 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_AbortTxRequest()
1336 SET_BIT(hcan->Instance->TSR, CAN_TSR_ABRQ0); in HAL_CAN_AbortTxRequest()
1343 SET_BIT(hcan->Instance->TSR, CAN_TSR_ABRQ1); in HAL_CAN_AbortTxRequest()
1350 SET_BIT(hcan->Instance->TSR, CAN_TSR_ABRQ2); in HAL_CAN_AbortTxRequest()
1359 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_AbortTxRequest()
1371 uint32_t HAL_CAN_GetTxMailboxesFreeLevel(const CAN_HandleTypeDef *hcan) in HAL_CAN_GetTxMailboxesFreeLevel() argument
1374 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_GetTxMailboxesFreeLevel()
1380 if ((hcan->Instance->TSR & CAN_TSR_TME0) != 0U) in HAL_CAN_GetTxMailboxesFreeLevel()
1386 if ((hcan->Instance->TSR & CAN_TSR_TME1) != 0U) in HAL_CAN_GetTxMailboxesFreeLevel()
1392 if ((hcan->Instance->TSR & CAN_TSR_TME2) != 0U) in HAL_CAN_GetTxMailboxesFreeLevel()
1414 uint32_t HAL_CAN_IsTxMessagePending(const CAN_HandleTypeDef *hcan, uint32_t TxMailboxes) in HAL_CAN_IsTxMessagePending() argument
1417 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_IsTxMessagePending()
1426 …if ((hcan->Instance->TSR & (TxMailboxes << CAN_TSR_TME0_Pos)) != (TxMailboxes << CAN_TSR_TME0_Pos)) in HAL_CAN_IsTxMessagePending()
1446 uint32_t HAL_CAN_GetTxTimestamp(const CAN_HandleTypeDef *hcan, uint32_t TxMailbox) in HAL_CAN_GetTxTimestamp() argument
1450 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_GetTxTimestamp()
1462 …timestamp = (hcan->Instance->sTxMailBox[transmitmailbox].TDTR & CAN_TDT0R_TIME) >> CAN_TDT0R_TIME_… in HAL_CAN_GetTxTimestamp()
1480 HAL_StatusTypeDef HAL_CAN_GetRxMessage(CAN_HandleTypeDef *hcan, uint32_t RxFifo, in HAL_CAN_GetRxMessage() argument
1483 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_GetRxMessage()
1494 if ((hcan->Instance->RF0R & CAN_RF0R_FMP0) == 0U) in HAL_CAN_GetRxMessage()
1497 hcan->ErrorCode |= HAL_CAN_ERROR_PARAM; in HAL_CAN_GetRxMessage()
1505 if ((hcan->Instance->RF1R & CAN_RF1R_FMP1) == 0U) in HAL_CAN_GetRxMessage()
1508 hcan->ErrorCode |= HAL_CAN_ERROR_PARAM; in HAL_CAN_GetRxMessage()
1515 pHeader->IDE = CAN_RI0R_IDE & hcan->Instance->sFIFOMailBox[RxFifo].RIR; in HAL_CAN_GetRxMessage()
1518 … pHeader->StdId = (CAN_RI0R_STID & hcan->Instance->sFIFOMailBox[RxFifo].RIR) >> CAN_TI0R_STID_Pos; in HAL_CAN_GetRxMessage()
1523 hcan->Instance->sFIFOMailBox[RxFifo].RIR) >> CAN_RI0R_EXID_Pos; in HAL_CAN_GetRxMessage()
1525 pHeader->RTR = (CAN_RI0R_RTR & hcan->Instance->sFIFOMailBox[RxFifo].RIR); in HAL_CAN_GetRxMessage()
1526 if (((CAN_RDT0R_DLC & hcan->Instance->sFIFOMailBox[RxFifo].RDTR) >> CAN_RDT0R_DLC_Pos) >= 8U) in HAL_CAN_GetRxMessage()
1533 … pHeader->DLC = (CAN_RDT0R_DLC & hcan->Instance->sFIFOMailBox[RxFifo].RDTR) >> CAN_RDT0R_DLC_Pos; in HAL_CAN_GetRxMessage()
1535 …pHeader->FilterMatchIndex = (CAN_RDT0R_FMI & hcan->Instance->sFIFOMailBox[RxFifo].RDTR) >> CAN_RDT… in HAL_CAN_GetRxMessage()
1536 …pHeader->Timestamp = (CAN_RDT0R_TIME & hcan->Instance->sFIFOMailBox[RxFifo].RDTR) >> CAN_RDT0R_TIM… in HAL_CAN_GetRxMessage()
1539 …aData[0] = (uint8_t)((CAN_RDL0R_DATA0 & hcan->Instance->sFIFOMailBox[RxFifo].RDLR) >> CAN_RDL0R_DA… in HAL_CAN_GetRxMessage()
1540 …aData[1] = (uint8_t)((CAN_RDL0R_DATA1 & hcan->Instance->sFIFOMailBox[RxFifo].RDLR) >> CAN_RDL0R_DA… in HAL_CAN_GetRxMessage()
1541 …aData[2] = (uint8_t)((CAN_RDL0R_DATA2 & hcan->Instance->sFIFOMailBox[RxFifo].RDLR) >> CAN_RDL0R_DA… in HAL_CAN_GetRxMessage()
1542 …aData[3] = (uint8_t)((CAN_RDL0R_DATA3 & hcan->Instance->sFIFOMailBox[RxFifo].RDLR) >> CAN_RDL0R_DA… in HAL_CAN_GetRxMessage()
1543 …aData[4] = (uint8_t)((CAN_RDH0R_DATA4 & hcan->Instance->sFIFOMailBox[RxFifo].RDHR) >> CAN_RDH0R_DA… in HAL_CAN_GetRxMessage()
1544 …aData[5] = (uint8_t)((CAN_RDH0R_DATA5 & hcan->Instance->sFIFOMailBox[RxFifo].RDHR) >> CAN_RDH0R_DA… in HAL_CAN_GetRxMessage()
1545 …aData[6] = (uint8_t)((CAN_RDH0R_DATA6 & hcan->Instance->sFIFOMailBox[RxFifo].RDHR) >> CAN_RDH0R_DA… in HAL_CAN_GetRxMessage()
1546 …aData[7] = (uint8_t)((CAN_RDH0R_DATA7 & hcan->Instance->sFIFOMailBox[RxFifo].RDHR) >> CAN_RDH0R_DA… in HAL_CAN_GetRxMessage()
1552 SET_BIT(hcan->Instance->RF0R, CAN_RF0R_RFOM0); in HAL_CAN_GetRxMessage()
1557 SET_BIT(hcan->Instance->RF1R, CAN_RF1R_RFOM1); in HAL_CAN_GetRxMessage()
1566 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_GetRxMessage()
1580 uint32_t HAL_CAN_GetRxFifoFillLevel(const CAN_HandleTypeDef *hcan, uint32_t RxFifo) in HAL_CAN_GetRxFifoFillLevel() argument
1583 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_GetRxFifoFillLevel()
1593 filllevel = hcan->Instance->RF0R & CAN_RF0R_FMP0; in HAL_CAN_GetRxFifoFillLevel()
1597 filllevel = hcan->Instance->RF1R & CAN_RF1R_FMP1; in HAL_CAN_GetRxFifoFillLevel()
1633 HAL_StatusTypeDef HAL_CAN_ActivateNotification(CAN_HandleTypeDef *hcan, uint32_t ActiveITs) in HAL_CAN_ActivateNotification() argument
1635 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_ActivateNotification()
1644 __HAL_CAN_ENABLE_IT(hcan, ActiveITs); in HAL_CAN_ActivateNotification()
1652 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_ActivateNotification()
1666 HAL_StatusTypeDef HAL_CAN_DeactivateNotification(CAN_HandleTypeDef *hcan, uint32_t InactiveITs) in HAL_CAN_DeactivateNotification() argument
1668 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_DeactivateNotification()
1677 __HAL_CAN_DISABLE_IT(hcan, InactiveITs); in HAL_CAN_DeactivateNotification()
1685 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_DeactivateNotification()
1697 void HAL_CAN_IRQHandler(CAN_HandleTypeDef *hcan) in HAL_CAN_IRQHandler() argument
1700 uint32_t interrupts = READ_REG(hcan->Instance->IER); in HAL_CAN_IRQHandler()
1701 uint32_t msrflags = READ_REG(hcan->Instance->MSR); in HAL_CAN_IRQHandler()
1702 uint32_t tsrflags = READ_REG(hcan->Instance->TSR); in HAL_CAN_IRQHandler()
1703 uint32_t rf0rflags = READ_REG(hcan->Instance->RF0R); in HAL_CAN_IRQHandler()
1704 uint32_t rf1rflags = READ_REG(hcan->Instance->RF1R); in HAL_CAN_IRQHandler()
1705 uint32_t esrflags = READ_REG(hcan->Instance->ESR); in HAL_CAN_IRQHandler()
1714 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_RQCP0); in HAL_CAN_IRQHandler()
1721 hcan->TxMailbox0CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1724 HAL_CAN_TxMailbox0CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1744 hcan->TxMailbox0AbortCallback(hcan); in HAL_CAN_IRQHandler()
1747 HAL_CAN_TxMailbox0AbortCallback(hcan); in HAL_CAN_IRQHandler()
1757 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_RQCP1); in HAL_CAN_IRQHandler()
1764 hcan->TxMailbox1CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1767 HAL_CAN_TxMailbox1CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1787 hcan->TxMailbox1AbortCallback(hcan); in HAL_CAN_IRQHandler()
1790 HAL_CAN_TxMailbox1AbortCallback(hcan); in HAL_CAN_IRQHandler()
1800 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_RQCP2); in HAL_CAN_IRQHandler()
1807 hcan->TxMailbox2CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1810 HAL_CAN_TxMailbox2CompleteCallback(hcan); in HAL_CAN_IRQHandler()
1830 hcan->TxMailbox2AbortCallback(hcan); in HAL_CAN_IRQHandler()
1833 HAL_CAN_TxMailbox2AbortCallback(hcan); in HAL_CAN_IRQHandler()
1849 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_FOV0); in HAL_CAN_IRQHandler()
1859 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_FF0); in HAL_CAN_IRQHandler()
1864 hcan->RxFifo0FullCallback(hcan); in HAL_CAN_IRQHandler()
1867 HAL_CAN_RxFifo0FullCallback(hcan); in HAL_CAN_IRQHandler()
1876 if ((hcan->Instance->RF0R & CAN_RF0R_FMP0) != 0U) in HAL_CAN_IRQHandler()
1881 hcan->RxFifo0MsgPendingCallback(hcan); in HAL_CAN_IRQHandler()
1884 HAL_CAN_RxFifo0MsgPendingCallback(hcan); in HAL_CAN_IRQHandler()
1898 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_FOV1); in HAL_CAN_IRQHandler()
1908 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_FF1); in HAL_CAN_IRQHandler()
1913 hcan->RxFifo1FullCallback(hcan); in HAL_CAN_IRQHandler()
1916 HAL_CAN_RxFifo1FullCallback(hcan); in HAL_CAN_IRQHandler()
1925 if ((hcan->Instance->RF1R & CAN_RF1R_FMP1) != 0U) in HAL_CAN_IRQHandler()
1930 hcan->RxFifo1MsgPendingCallback(hcan); in HAL_CAN_IRQHandler()
1933 HAL_CAN_RxFifo1MsgPendingCallback(hcan); in HAL_CAN_IRQHandler()
1944 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_SLAKI); in HAL_CAN_IRQHandler()
1949 hcan->SleepCallback(hcan); in HAL_CAN_IRQHandler()
1952 HAL_CAN_SleepCallback(hcan); in HAL_CAN_IRQHandler()
1963 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_WKU); in HAL_CAN_IRQHandler()
1968 hcan->WakeUpFromRxMsgCallback(hcan); in HAL_CAN_IRQHandler()
1971 HAL_CAN_WakeUpFromRxMsgCallback(hcan); in HAL_CAN_IRQHandler()
2046 CLEAR_BIT(hcan->Instance->ESR, CAN_ESR_LEC); in HAL_CAN_IRQHandler()
2051 __HAL_CAN_CLEAR_FLAG(hcan, CAN_FLAG_ERRI); in HAL_CAN_IRQHandler()
2058 hcan->ErrorCode |= errorcode; in HAL_CAN_IRQHandler()
2063 hcan->ErrorCallback(hcan); in HAL_CAN_IRQHandler()
2066 HAL_CAN_ErrorCallback(hcan); in HAL_CAN_IRQHandler()
2108 __weak void HAL_CAN_TxMailbox0CompleteCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox0CompleteCallback() argument
2111 UNUSED(hcan); in HAL_CAN_TxMailbox0CompleteCallback()
2125 __weak void HAL_CAN_TxMailbox1CompleteCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox1CompleteCallback() argument
2128 UNUSED(hcan); in HAL_CAN_TxMailbox1CompleteCallback()
2142 __weak void HAL_CAN_TxMailbox2CompleteCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox2CompleteCallback() argument
2145 UNUSED(hcan); in HAL_CAN_TxMailbox2CompleteCallback()
2159 __weak void HAL_CAN_TxMailbox0AbortCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox0AbortCallback() argument
2162 UNUSED(hcan); in HAL_CAN_TxMailbox0AbortCallback()
2176 __weak void HAL_CAN_TxMailbox1AbortCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox1AbortCallback() argument
2179 UNUSED(hcan); in HAL_CAN_TxMailbox1AbortCallback()
2193 __weak void HAL_CAN_TxMailbox2AbortCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_TxMailbox2AbortCallback() argument
2196 UNUSED(hcan); in HAL_CAN_TxMailbox2AbortCallback()
2210 __weak void HAL_CAN_RxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_RxFifo0MsgPendingCallback() argument
2213 UNUSED(hcan); in HAL_CAN_RxFifo0MsgPendingCallback()
2227 __weak void HAL_CAN_RxFifo0FullCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_RxFifo0FullCallback() argument
2230 UNUSED(hcan); in HAL_CAN_RxFifo0FullCallback()
2244 __weak void HAL_CAN_RxFifo1MsgPendingCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_RxFifo1MsgPendingCallback() argument
2247 UNUSED(hcan); in HAL_CAN_RxFifo1MsgPendingCallback()
2261 __weak void HAL_CAN_RxFifo1FullCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_RxFifo1FullCallback() argument
2264 UNUSED(hcan); in HAL_CAN_RxFifo1FullCallback()
2278 __weak void HAL_CAN_SleepCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_SleepCallback() argument
2281 UNUSED(hcan); in HAL_CAN_SleepCallback()
2294 __weak void HAL_CAN_WakeUpFromRxMsgCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_WakeUpFromRxMsgCallback() argument
2297 UNUSED(hcan); in HAL_CAN_WakeUpFromRxMsgCallback()
2311 __weak void HAL_CAN_ErrorCallback(CAN_HandleTypeDef *hcan) in HAL_CAN_ErrorCallback() argument
2314 UNUSED(hcan); in HAL_CAN_ErrorCallback()
2348 HAL_CAN_StateTypeDef HAL_CAN_GetState(const CAN_HandleTypeDef *hcan) in HAL_CAN_GetState() argument
2350 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_GetState()
2356 if ((hcan->Instance->MSR & CAN_MSR_SLAK) != 0U) in HAL_CAN_GetState()
2362 else if ((hcan->Instance->MCR & CAN_MCR_SLEEP) != 0U) in HAL_CAN_GetState()
2383 uint32_t HAL_CAN_GetError(const CAN_HandleTypeDef *hcan) in HAL_CAN_GetError() argument
2386 return hcan->ErrorCode; in HAL_CAN_GetError()
2395 HAL_StatusTypeDef HAL_CAN_ResetError(CAN_HandleTypeDef *hcan) in HAL_CAN_ResetError() argument
2398 HAL_CAN_StateTypeDef state = hcan->State; in HAL_CAN_ResetError()
2404 hcan->ErrorCode = 0U; in HAL_CAN_ResetError()
2409 hcan->ErrorCode |= HAL_CAN_ERROR_NOT_INITIALIZED; in HAL_CAN_ResetError()