Header file of CAN HAL module. More...
#include "stm32f7xx_hal_def.h"
Go to the source code of this file.
Classes | |
struct | CAN_FilterConfTypeDef |
CAN filter configuration structure definition. More... | |
struct | CAN_HandleTypeDef |
CAN handle Structure definition. More... | |
struct | CAN_InitTypeDef |
CAN init structure definition. More... | |
struct | CanRxMsgTypeDef |
CAN Rx message structure definition. More... | |
struct | CanTxMsgTypeDef |
CAN Tx message structure definition. More... | |
Macros | |
#define | __HAL_CAN_CANCEL_TRANSMIT(__HANDLE__, __TRANSMITMAILBOX__) |
Cancel a transmit request. More... | |
#define | __HAL_CAN_CLEAR_FLAG(__HANDLE__, __FLAG__) |
Clear the specified CAN pending flag. More... | |
#define | __HAL_CAN_DBG_FREEZE(__HANDLE__, __NEWSTATE__) |
Enable or disable the DBG Freeze for CAN. More... | |
#define | __HAL_CAN_DISABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->IER) &= ~(__INTERRUPT__)) |
Disable the specified CAN interrupts. More... | |
#define | __HAL_CAN_ENABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->IER) |= (__INTERRUPT__)) |
Enable the specified CAN interrupts. More... | |
#define | __HAL_CAN_FIFO_RELEASE(__HANDLE__, __FIFONUMBER__) |
Release the specified receive FIFO. More... | |
#define | __HAL_CAN_GET_FLAG(__HANDLE__, __FLAG__) |
Check whether the specified CAN flag is set or not. More... | |
#define | __HAL_CAN_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->IER & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET) |
Check if the specified CAN interrupt source is enabled or disabled. More... | |
#define | __HAL_CAN_MSG_PENDING(__HANDLE__, __FIFONUMBER__) |
Return the number of pending received messages. More... | |
#define | __HAL_CAN_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_CAN_STATE_RESET) |
Reset CAN handle state. More... | |
#define | __HAL_CAN_TRANSMIT_STATUS(__HANDLE__, __TRANSMITMAILBOX__) |
Check the transmission status of a CAN Frame. More... | |
#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_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_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_FIFO0 ((uint8_t)0x00) |
#define | CAN_FIFO1 ((uint8_t)0x01) |
#define | CAN_FILTER_FIFO0 ((uint8_t)0x00) |
#define | CAN_FILTER_FIFO1 ((uint8_t)0x01) |
#define | CAN_FILTERMODE_IDLIST ((uint8_t)0x01) |
#define | CAN_FILTERMODE_IDMASK ((uint8_t)0x00) |
#define | CAN_FILTERSCALE_16BIT ((uint8_t)0x00) |
#define | CAN_FILTERSCALE_32BIT ((uint8_t)0x01) |
#define | CAN_FLAG_BOF 0x00000302U |
#define | CAN_FLAG_EPV 0x00000301U |
#define | CAN_FLAG_ERRI 0x00000102U |
#define | CAN_FLAG_EWG 0x00000300U |
#define | CAN_FLAG_FF0 0x00000203U |
#define | CAN_FLAG_FF1 0x00000403U |
#define | CAN_FLAG_FOV0 0x00000204U |
#define | CAN_FLAG_FOV1 0x00000404U |
#define | CAN_FLAG_INAK 0x00000100U |
#define | CAN_FLAG_MASK 0x000000FFU |
#define | CAN_FLAG_RQCP0 0x00000500U |
#define | CAN_FLAG_RQCP1 0x00000508U |
#define | CAN_FLAG_RQCP2 0x00000510U |
#define | CAN_FLAG_SLAK 0x00000101U |
#define | CAN_FLAG_SLAKI 0x00000104U |
#define | CAN_FLAG_TME0 0x0000051AU |
#define | CAN_FLAG_TME1 0x0000051BU |
#define | CAN_FLAG_TME2 0x0000051CU |
#define | CAN_FLAG_TXOK0 0x00000501U |
#define | CAN_FLAG_TXOK1 0x00000509U |
#define | CAN_FLAG_TXOK2 0x00000511U |
#define | CAN_FLAG_WKU 0x00000103U |
#define | CAN_ID_EXT 0x00000004U |
#define | CAN_ID_STD 0x00000000U |
#define | CAN_INITSTATUS_FAILED ((uint8_t)0x00) |
#define | CAN_INITSTATUS_SUCCESS ((uint8_t)0x01) |
#define | CAN_IT_BOF CAN_IER_BOFIE |
#define | CAN_IT_EPV CAN_IER_EPVIE |
#define | CAN_IT_ERR CAN_IER_ERRIE |
#define | CAN_IT_EWG CAN_IER_EWGIE |
#define | CAN_IT_FF0 CAN_IER_FFIE0 |
#define | CAN_IT_FF1 CAN_IER_FFIE1 |
#define | CAN_IT_FMP0 CAN_IER_FMPIE0 |
#define | CAN_IT_FMP1 CAN_IER_FMPIE1 |
#define | CAN_IT_FOV0 CAN_IER_FOVIE0 |
#define | CAN_IT_FOV1 CAN_IER_FOVIE1 |
#define | CAN_IT_LEC CAN_IER_LECIE |
#define | CAN_IT_SLK CAN_IER_SLKIE |
#define | CAN_IT_TME CAN_IER_TMEIE |
#define | CAN_IT_WKU CAN_IER_WKUIE |
#define | CAN_MODE_LOOPBACK ((uint32_t)CAN_BTR_LBKM) |
#define | CAN_MODE_NORMAL 0x00000000U |
#define | CAN_MODE_SILENT ((uint32_t)CAN_BTR_SILM) |
#define | CAN_MODE_SILENT_LOOPBACK ((uint32_t)(CAN_BTR_LBKM | CAN_BTR_SILM)) |
#define | CAN_RTR_DATA 0x00000000U |
#define | CAN_RTR_REMOTE 0x00000002U |
#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_TXMAILBOX_0 ((uint8_t)0x00) |
#define | CAN_TXMAILBOX_1 ((uint8_t)0x01) |
#define | CAN_TXMAILBOX_2 ((uint8_t)0x02) |
#define | CAN_TXSTATUS_NOMAILBOX ((uint8_t)0x04) |
#define | HAL_CAN_ERROR_ACK 0x00000020U |
#define | HAL_CAN_ERROR_BD 0x00000080U |
#define | HAL_CAN_ERROR_BOF 0x00000004U |
#define | HAL_CAN_ERROR_BR 0x00000040U |
#define | HAL_CAN_ERROR_CRC 0x00000100U |
#define | HAL_CAN_ERROR_EPV 0x00000002U |
#define | HAL_CAN_ERROR_EWG 0x00000001U |
#define | HAL_CAN_ERROR_FOR 0x00000010U |
#define | HAL_CAN_ERROR_FOV0 0x00000200U |
#define | HAL_CAN_ERROR_FOV1 0x00000400U |
#define | HAL_CAN_ERROR_NONE 0x00000000U |
#define | HAL_CAN_ERROR_STF 0x00000008U |
#define | HAL_CAN_ERROR_TXFAIL 0x00000800U |
#define | IS_CAN_BANKNUMBER(BANKNUMBER) ((BANKNUMBER) <= 28U) |
#define | IS_CAN_BS1(BS1) ((BS1) <= CAN_BS1_16TQ) |
#define | IS_CAN_BS2(BS2) ((BS2) <= CAN_BS2_8TQ) |
#define | IS_CAN_DLC(DLC) ((DLC) <= ((uint8_t)0x08)) |
#define | IS_CAN_EXTID(EXTID) ((EXTID) <= 0x1FFFFFFFU) |
#define | IS_CAN_FIFO(FIFO) (((FIFO) == CAN_FIFO0) || ((FIFO) == CAN_FIFO1)) |
#define | IS_CAN_FILTER_FIFO(FIFO) |
#define | IS_CAN_FILTER_MODE(MODE) |
#define | IS_CAN_FILTER_NUMBER(NUMBER) ((NUMBER) <= 27U) |
#define | IS_CAN_FILTER_SCALE(SCALE) |
#define | IS_CAN_IDTYPE(IDTYPE) |
#define | IS_CAN_MODE(MODE) |
#define | IS_CAN_PRESCALER(PRESCALER) (((PRESCALER) >= 1U) && ((PRESCALER) <= 1024U)) |
#define | IS_CAN_RTR(RTR) (((RTR) == CAN_RTR_DATA) || ((RTR) == CAN_RTR_REMOTE)) |
#define | IS_CAN_SJW(SJW) |
#define | IS_CAN_STDID(STDID) ((STDID) <= 0x7FFU) |
#define | IS_CAN_TRANSMITMAILBOX(TRANSMITMAILBOX) ((TRANSMITMAILBOX) <= ((uint8_t)0x02)) |
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... | |
Header file of CAN HAL module.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file stm32f7xx_hal_can_legacy.h.