STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
stm32f4xx_hal_can_legacy.h File Reference

Header file of CAN HAL module. More...

Include dependency graph for stm32f4xx_hal_can_legacy.h:

Go to the source code of this file.

Data Structures

struct  CAN_InitTypeDef
 CAN init structure definition. More...
 
struct  CAN_FilterConfTypeDef
 CAN filter configuration structure definition. More...
 
struct  CanTxMsgTypeDef
 CAN Tx message structure definition. More...
 
struct  CanRxMsgTypeDef
 CAN Rx message structure definition. More...
 
struct  CAN_HandleTypeDef
 CAN handle Structure definition. More...
 

Macros

#define HAL_CAN_ERROR_NONE   0x00000000U
 
#define HAL_CAN_ERROR_EWG   0x00000001U
 
#define HAL_CAN_ERROR_EPV   0x00000002U
 
#define HAL_CAN_ERROR_BOF   0x00000004U
 
#define HAL_CAN_ERROR_STF   0x00000008U
 
#define HAL_CAN_ERROR_FOR   0x00000010U
 
#define HAL_CAN_ERROR_ACK   0x00000020U
 
#define HAL_CAN_ERROR_BR   0x00000040U
 
#define HAL_CAN_ERROR_BD   0x00000080U
 
#define HAL_CAN_ERROR_CRC   0x00000100U
 
#define HAL_CAN_ERROR_FOV0   0x00000200U
 
#define HAL_CAN_ERROR_FOV1   0x00000400U
 
#define HAL_CAN_ERROR_TXFAIL   0x00000800U
 
#define CAN_INITSTATUS_FAILED   ((uint8_t)0x00)
 
#define CAN_INITSTATUS_SUCCESS   ((uint8_t)0x01)
 
#define CAN_MODE_NORMAL   0x00000000U
 
#define CAN_MODE_LOOPBACK   ((uint32_t)CAN_BTR_LBKM)
 
#define CAN_MODE_SILENT   ((uint32_t)CAN_BTR_SILM)
 
#define CAN_MODE_SILENT_LOOPBACK   ((uint32_t)(CAN_BTR_LBKM | CAN_BTR_SILM))
 
#define CAN_SJW_1TQ   0x00000000U
 
#define CAN_SJW_2TQ   ((uint32_t)CAN_BTR_SJW_0)
 
#define CAN_SJW_3TQ   ((uint32_t)CAN_BTR_SJW_1)
 
#define CAN_SJW_4TQ   ((uint32_t)CAN_BTR_SJW)
 
#define CAN_BS1_1TQ   0x00000000U
 
#define CAN_BS1_2TQ   ((uint32_t)CAN_BTR_TS1_0)
 
#define CAN_BS1_3TQ   ((uint32_t)CAN_BTR_TS1_1)
 
#define CAN_BS1_4TQ   ((uint32_t)(CAN_BTR_TS1_1 | CAN_BTR_TS1_0))
 
#define CAN_BS1_5TQ   ((uint32_t)CAN_BTR_TS1_2)
 
#define CAN_BS1_6TQ   ((uint32_t)(CAN_BTR_TS1_2 | CAN_BTR_TS1_0))
 
#define CAN_BS1_7TQ   ((uint32_t)(CAN_BTR_TS1_2 | CAN_BTR_TS1_1))
 
#define CAN_BS1_8TQ   ((uint32_t)(CAN_BTR_TS1_2 | CAN_BTR_TS1_1 | CAN_BTR_TS1_0))
 
#define CAN_BS1_9TQ   ((uint32_t)CAN_BTR_TS1_3)
 
#define CAN_BS1_10TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_0))
 
#define CAN_BS1_11TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_1))
 
#define CAN_BS1_12TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_1 | CAN_BTR_TS1_0))
 
#define CAN_BS1_13TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_2))
 
#define CAN_BS1_14TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_2 | CAN_BTR_TS1_0))
 
#define CAN_BS1_15TQ   ((uint32_t)(CAN_BTR_TS1_3 | CAN_BTR_TS1_2 | CAN_BTR_TS1_1))
 
#define CAN_BS1_16TQ   ((uint32_t)CAN_BTR_TS1)
 
#define CAN_BS2_1TQ   0x00000000U
 
#define CAN_BS2_2TQ   ((uint32_t)CAN_BTR_TS2_0)
 
#define CAN_BS2_3TQ   ((uint32_t)CAN_BTR_TS2_1)
 
#define CAN_BS2_4TQ   ((uint32_t)(CAN_BTR_TS2_1 | CAN_BTR_TS2_0))
 
#define CAN_BS2_5TQ   ((uint32_t)CAN_BTR_TS2_2)
 
#define CAN_BS2_6TQ   ((uint32_t)(CAN_BTR_TS2_2 | CAN_BTR_TS2_0))
 
#define CAN_BS2_7TQ   ((uint32_t)(CAN_BTR_TS2_2 | CAN_BTR_TS2_1))
 
#define CAN_BS2_8TQ   ((uint32_t)CAN_BTR_TS2)
 
#define CAN_FILTERMODE_IDMASK   ((uint8_t)0x00)
 
#define CAN_FILTERMODE_IDLIST   ((uint8_t)0x01)
 
#define CAN_FILTERSCALE_16BIT   ((uint8_t)0x00)
 
#define CAN_FILTERSCALE_32BIT   ((uint8_t)0x01)
 
#define CAN_FILTER_FIFO0   ((uint8_t)0x00)
 
#define CAN_FILTER_FIFO1   ((uint8_t)0x01)
 
#define CAN_ID_STD   0x00000000U
 
#define CAN_ID_EXT   0x00000004U
 
#define CAN_RTR_DATA   0x00000000U
 
#define CAN_RTR_REMOTE   0x00000002U
 
#define CAN_FIFO0   ((uint8_t)0x00)
 
#define CAN_FIFO1   ((uint8_t)0x01)
 
#define CAN_FLAG_RQCP0   0x00000500U
 
#define CAN_FLAG_RQCP1   0x00000508U
 
#define CAN_FLAG_RQCP2   0x00000510U
 
#define CAN_FLAG_TXOK0   0x00000501U
 
#define CAN_FLAG_TXOK1   0x00000509U
 
#define CAN_FLAG_TXOK2   0x00000511U
 
#define CAN_FLAG_TME0   0x0000051AU
 
#define CAN_FLAG_TME1   0x0000051BU
 
#define CAN_FLAG_TME2   0x0000051CU
 
#define CAN_FLAG_FF0   0x00000203U
 
#define CAN_FLAG_FOV0   0x00000204U
 
#define CAN_FLAG_FF1   0x00000403U
 
#define CAN_FLAG_FOV1   0x00000404U
 
#define CAN_FLAG_INAK   0x00000100U
 
#define CAN_FLAG_SLAK   0x00000101U
 
#define CAN_FLAG_ERRI   0x00000102U
 
#define CAN_FLAG_WKU   0x00000103U
 
#define CAN_FLAG_SLAKI   0x00000104U
 
#define CAN_FLAG_EWG   0x00000300U
 
#define CAN_FLAG_EPV   0x00000301U
 
#define CAN_FLAG_BOF   0x00000302U
 
#define CAN_IT_TME   ((uint32_t)CAN_IER_TMEIE)
 
#define CAN_IT_FMP0   ((uint32_t)CAN_IER_FMPIE0)
 
#define CAN_IT_FF0   ((uint32_t)CAN_IER_FFIE0)
 
#define CAN_IT_FOV0   ((uint32_t)CAN_IER_FOVIE0)
 
#define CAN_IT_FMP1   ((uint32_t)CAN_IER_FMPIE1)
 
#define CAN_IT_FF1   ((uint32_t)CAN_IER_FFIE1)
 
#define CAN_IT_FOV1   ((uint32_t)CAN_IER_FOVIE1)
 
#define CAN_IT_WKU   ((uint32_t)CAN_IER_WKUIE)
 
#define CAN_IT_SLK   ((uint32_t)CAN_IER_SLKIE)
 
#define CAN_IT_EWG   ((uint32_t)CAN_IER_EWGIE)
 
#define CAN_IT_EPV   ((uint32_t)CAN_IER_EPVIE)
 
#define CAN_IT_BOF   ((uint32_t)CAN_IER_BOFIE)
 
#define CAN_IT_LEC   ((uint32_t)CAN_IER_LECIE)
 
#define CAN_IT_ERR   ((uint32_t)CAN_IER_ERRIE)
 
#define CAN_TXMAILBOX_0   ((uint8_t)0x00)
 
#define CAN_TXMAILBOX_1   ((uint8_t)0x01)
 
#define CAN_TXMAILBOX_2   ((uint8_t)0x02)
 
#define __HAL_CAN_RESET_HANDLE_STATE(__HANDLE__)
 Reset CAN handle state.
 
#define __HAL_CAN_ENABLE_IT(__HANDLE__, __INTERRUPT__)
 Enable the specified CAN interrupts.
 
#define __HAL_CAN_DISABLE_IT(__HANDLE__, __INTERRUPT__)
 Disable the specified CAN interrupts.
 
#define __HAL_CAN_MSG_PENDING(__HANDLE__, __FIFONUMBER__)
 Return the number of pending received messages.
 
#define __HAL_CAN_GET_FLAG(__HANDLE__, __FLAG__)
 Check whether the specified CAN flag is set or not.
 
#define __HAL_CAN_CLEAR_FLAG(__HANDLE__, __FLAG__)
 Clear the specified CAN pending flag.
 
#define __HAL_CAN_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 Check if the specified CAN interrupt source is enabled or disabled.
 
#define __HAL_CAN_TRANSMIT_STATUS(__HANDLE__, __TRANSMITMAILBOX__)
 Check the transmission status of a CAN Frame.
 
#define __HAL_CAN_FIFO_RELEASE(__HANDLE__, __FIFONUMBER__)
 Release the specified receive FIFO.
 
#define __HAL_CAN_CANCEL_TRANSMIT(__HANDLE__, __TRANSMITMAILBOX__)
 Cancel a transmit request.
 
#define __HAL_CAN_DBG_FREEZE(__HANDLE__, __NEWSTATE__)
 Enable or disable the DBG Freeze for CAN.
 
#define CAN_TXSTATUS_NOMAILBOX   ((uint8_t)0x04)
 
#define CAN_FLAG_MASK   0x000000FFU
 
#define IS_CAN_MODE(MODE)
 
#define IS_CAN_SJW(SJW)
 
#define IS_CAN_BS1(BS1)
 
#define IS_CAN_BS2(BS2)
 
#define IS_CAN_PRESCALER(PRESCALER)
 
#define IS_CAN_FILTER_NUMBER(NUMBER)
 
#define IS_CAN_FILTER_MODE(MODE)
 
#define IS_CAN_FILTER_SCALE(SCALE)
 
#define IS_CAN_FILTER_FIFO(FIFO)
 
#define IS_CAN_BANKNUMBER(BANKNUMBER)
 
#define IS_CAN_TRANSMITMAILBOX(TRANSMITMAILBOX)
 
#define IS_CAN_STDID(STDID)
 
#define IS_CAN_EXTID(EXTID)
 
#define IS_CAN_DLC(DLC)
 
#define IS_CAN_IDTYPE(IDTYPE)
 
#define IS_CAN_RTR(RTR)
 
#define IS_CAN_FIFO(FIFO)
 

Enumerations

enum  HAL_CAN_StateTypeDef {
  HAL_CAN_STATE_RESET = 0x00U , HAL_CAN_STATE_READY = 0x01U , HAL_CAN_STATE_BUSY = 0x02U , HAL_CAN_STATE_BUSY_TX = 0x12U ,
  HAL_CAN_STATE_BUSY_RX0 = 0x22U , HAL_CAN_STATE_BUSY_RX1 = 0x32U , HAL_CAN_STATE_BUSY_TX_RX0 = 0x42U , HAL_CAN_STATE_BUSY_TX_RX1 = 0x52U ,
  HAL_CAN_STATE_BUSY_RX0_RX1 = 0x62U , HAL_CAN_STATE_BUSY_TX_RX0_RX1 = 0x72U , HAL_CAN_STATE_TIMEOUT = 0x03U , HAL_CAN_STATE_ERROR = 0x04U
}
 HAL State structures definition. More...
 

Functions

HAL_StatusTypeDef HAL_CAN_Init (CAN_HandleTypeDef *hcan)
 Initializes the CAN peripheral according to the specified parameters in the CAN_InitStruct.
 
HAL_StatusTypeDef HAL_CAN_ConfigFilter (CAN_HandleTypeDef *hcan, CAN_FilterConfTypeDef *sFilterConfig)
 
HAL_StatusTypeDef HAL_CAN_DeInit (CAN_HandleTypeDef *hcan)
 Deinitializes the CAN peripheral registers to their default reset values.
 
void HAL_CAN_MspInit (CAN_HandleTypeDef *hcan)
 Initializes the CAN MSP.
 
void HAL_CAN_MspDeInit (CAN_HandleTypeDef *hcan)
 DeInitializes the CAN MSP.
 
HAL_StatusTypeDef HAL_CAN_Transmit (CAN_HandleTypeDef *hcan, uint32_t Timeout)
 
HAL_StatusTypeDef HAL_CAN_Transmit_IT (CAN_HandleTypeDef *hcan)
 
HAL_StatusTypeDef HAL_CAN_Receive (CAN_HandleTypeDef *hcan, uint8_t FIFONumber, uint32_t Timeout)
 
HAL_StatusTypeDef HAL_CAN_Receive_IT (CAN_HandleTypeDef *hcan, uint8_t FIFONumber)
 
HAL_StatusTypeDef HAL_CAN_Sleep (CAN_HandleTypeDef *hcan)
 
HAL_StatusTypeDef HAL_CAN_WakeUp (CAN_HandleTypeDef *hcan)
 Wake up from sleep mode. When returning with HAL_OK status from this function, Sleep mode is exited.
 
void HAL_CAN_IRQHandler (CAN_HandleTypeDef *hcan)
 Handles CAN interrupt request.
 
void HAL_CAN_TxCpltCallback (CAN_HandleTypeDef *hcan)
 
void HAL_CAN_RxCpltCallback (CAN_HandleTypeDef *hcan)
 
void HAL_CAN_ErrorCallback (CAN_HandleTypeDef *hcan)
 Error CAN callback.
 
uint32_t HAL_CAN_GetError (CAN_HandleTypeDef *hcan)
 
HAL_CAN_StateTypeDef HAL_CAN_GetState (CAN_HandleTypeDef *hcan)
 

Detailed Description

Header file of CAN HAL module.

Author
MCD Application Team
Attention

Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_can_legacy.h.