STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
CAN Exported Macros
Collaboration diagram for CAN Exported Macros:

Macros

#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 __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_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 Check if the specified CAN interrupt source is enabled or disabled.
 
#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.
 

Detailed Description

Macro Definition Documentation

◆ __HAL_CAN_RESET_HANDLE_STATE [1/2]

#define __HAL_CAN_RESET_HANDLE_STATE ( __HANDLE__)

#include <stm32f4xx_hal_can_legacy.h>

Value:
((__HANDLE__)->State = HAL_CAN_STATE_RESET)
@ HAL_CAN_STATE_RESET

Reset CAN handle state.

Parameters
__HANDLE__specifies the CAN Handle.
Return values
None
Parameters
__HANDLE__CAN handle.
Return values
None

Definition at line 477 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_ENABLE_IT [1/2]

#define __HAL_CAN_ENABLE_IT ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__HANDLE__)->Instance->IER) |= (__INTERRUPT__))

Enable the specified CAN interrupts.

Parameters
__HANDLE__CAN handle
__INTERRUPT__CAN Interrupt
Return values
None
Parameters
__HANDLE__CAN handle.
__INTERRUPT__CAN Interrupt sources to enable. This parameter can be any combination of
  • CAN_Interrupts
Return values
None

Definition at line 485 of file stm32f4xx_hal_can_legacy.h.

Referenced by HAL_CAN_ActivateNotification().

◆ __HAL_CAN_DISABLE_IT [1/2]

#define __HAL_CAN_DISABLE_IT ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__HANDLE__)->Instance->IER) &= ~(__INTERRUPT__))

Disable the specified CAN interrupts.

Parameters
__HANDLE__CAN handle
__INTERRUPT__CAN Interrupt
Return values
None
Parameters
__HANDLE__CAN handle.
__INTERRUPT__CAN Interrupt sources to disable. This parameter can be any combination of
  • CAN_Interrupts
Return values
None

Definition at line 493 of file stm32f4xx_hal_can_legacy.h.

Referenced by HAL_CAN_DeactivateNotification().

◆ __HAL_CAN_MSG_PENDING

#define __HAL_CAN_MSG_PENDING ( __HANDLE__,
__FIFONUMBER__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__FIFONUMBER__) == CAN_FIFO0)? \
((uint8_t)((__HANDLE__)->Instance->RF0R&0x03U)) : ((uint8_t)((__HANDLE__)->Instance->RF1R & 0x03U)))
#define CAN_FIFO0

Return the number of pending received messages.

Parameters
__HANDLE__CAN handle
__FIFONUMBER__Receive FIFO number, CAN_FIFO0 or CAN_FIFO1.
Return values
Thenumber of pending message.

Definition at line 501 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_GET_FLAG [1/2]

#define __HAL_CAN_GET_FLAG ( __HANDLE__,
__FLAG__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
((((__FLAG__) >> 8U) == 5U)? ((((__HANDLE__)->Instance->TSR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 2U)? ((((__HANDLE__)->Instance->RF0R) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 4U)? ((((__HANDLE__)->Instance->RF1R) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 1U)? ((((__HANDLE__)->Instance->MSR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
((((__HANDLE__)->Instance->ESR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))))
#define CAN_FLAG_MASK

Check whether the specified CAN flag is set or not.

Parameters
__HANDLE__CAN Handle
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • CAN_TSR_RQCP0: Request MailBox0 Flag
  • CAN_TSR_RQCP1: Request MailBox1 Flag
  • CAN_TSR_RQCP2: Request MailBox2 Flag
  • CAN_FLAG_TXOK0: Transmission OK MailBox0 Flag
  • CAN_FLAG_TXOK1: Transmission OK MailBox1 Flag
  • CAN_FLAG_TXOK2: Transmission OK MailBox2 Flag
  • CAN_FLAG_TME0: Transmit mailbox 0 empty Flag
  • CAN_FLAG_TME1: Transmit mailbox 1 empty Flag
  • CAN_FLAG_TME2: Transmit mailbox 2 empty Flag
  • CAN_FLAG_FMP0: FIFO 0 Message Pending Flag
  • CAN_FLAG_FF0: FIFO 0 Full Flag
  • CAN_FLAG_FOV0: FIFO 0 Overrun Flag
  • CAN_FLAG_FMP1: FIFO 1 Message Pending Flag
  • CAN_FLAG_FF1: FIFO 1 Full Flag
  • CAN_FLAG_FOV1: FIFO 1 Overrun Flag
  • CAN_FLAG_WKU: Wake up Flag
  • CAN_FLAG_SLAK: Sleep acknowledge Flag
  • CAN_FLAG_SLAKI: Sleep acknowledge Flag
  • CAN_FLAG_EWG: Error Warning Flag
  • CAN_FLAG_EPV: Error Passive Flag
  • CAN_FLAG_BOF: Bus-Off Flag
Return values
Thenew state of FLAG (TRUE or FALSE).
Parameters
__HANDLE__specifies the CAN Handle.
__FLAG__specifies the flag to check. This parameter can be one of
  • CAN_flags
Return values
Thestate of FLAG (TRUE or FALSE).

Definition at line 531 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_CLEAR_FLAG [1/2]

#define __HAL_CAN_CLEAR_FLAG ( __HANDLE__,
__FLAG__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
((((__FLAG__) >> 8U) == 5U)? (((__HANDLE__)->Instance->TSR) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 2U)? (((__HANDLE__)->Instance->RF0R) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 4U)? (((__HANDLE__)->Instance->RF1R) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__HANDLE__)->Instance->MSR) = ((uint32_t)1U << ((__FLAG__) & CAN_FLAG_MASK))))

Clear the specified CAN pending flag.

Parameters
__HANDLE__CAN Handle.
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • CAN_TSR_RQCP0: Request MailBox0 Flag
  • CAN_TSR_RQCP1: Request MailBox1 Flag
  • CAN_TSR_RQCP2: Request MailBox2 Flag
  • CAN_FLAG_TXOK0: Transmission OK MailBox0 Flag
  • CAN_FLAG_TXOK1: Transmission OK MailBox1 Flag
  • CAN_FLAG_TXOK2: Transmission OK MailBox2 Flag
  • CAN_FLAG_TME0: Transmit mailbox 0 empty Flag
  • CAN_FLAG_TME1: Transmit mailbox 1 empty Flag
  • CAN_FLAG_TME2: Transmit mailbox 2 empty Flag
  • CAN_FLAG_FMP0: FIFO 0 Message Pending Flag
  • CAN_FLAG_FF0: FIFO 0 Full Flag
  • CAN_FLAG_FOV0: FIFO 0 Overrun Flag
  • CAN_FLAG_FMP1: FIFO 1 Message Pending Flag
  • CAN_FLAG_FF1: FIFO 1 Full Flag
  • CAN_FLAG_FOV1: FIFO 1 Overrun Flag
  • CAN_FLAG_WKU: Wake up Flag
  • CAN_FLAG_SLAK: Sleep acknowledge Flag
  • CAN_FLAG_SLAKI: Sleep acknowledge Flag
Return values
Thenew state of FLAG (TRUE or FALSE).
Parameters
__HANDLE__specifies the CAN Handle.
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • CAN_FLAG_RQCP0: Request complete MailBox 0 Flag
  • CAN_FLAG_TXOK0: Transmission OK MailBox 0 Flag
  • CAN_FLAG_ALST0: Arbitration Lost MailBox 0 Flag
  • CAN_FLAG_TERR0: Transmission error MailBox 0 Flag
  • CAN_FLAG_RQCP1: Request complete MailBox 1 Flag
  • CAN_FLAG_TXOK1: Transmission OK MailBox 1 Flag
  • CAN_FLAG_ALST1: Arbitration Lost MailBox 1 Flag
  • CAN_FLAG_TERR1: Transmission error MailBox 1 Flag
  • CAN_FLAG_RQCP2: Request complete MailBox 2 Flag
  • CAN_FLAG_TXOK2: Transmission OK MailBox 2 Flag
  • CAN_FLAG_ALST2: Arbitration Lost MailBox 2 Flag
  • CAN_FLAG_TERR2: Transmission error MailBox 2 Flag
  • CAN_FLAG_FF0: RX FIFO 0 Full Flag
  • CAN_FLAG_FOV0: RX FIFO 0 Overrun Flag
  • CAN_FLAG_FF1: RX FIFO 1 Full Flag
  • CAN_FLAG_FOV1: RX FIFO 1 Overrun Flag
  • CAN_FLAG_WKUI: Wake up Interrupt Flag
  • CAN_FLAG_SLAKI: Sleep acknowledge Interrupt Flag
Return values
None

Definition at line 562 of file stm32f4xx_hal_can_legacy.h.

Referenced by HAL_CAN_IRQHandler().

◆ __HAL_CAN_GET_IT_SOURCE [1/2]

#define __HAL_CAN_GET_IT_SOURCE ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
((((__HANDLE__)->Instance->IER & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET)

Check if the specified CAN interrupt source is enabled or disabled.

Parameters
__HANDLE__CAN Handle
__INTERRUPT__specifies the CAN interrupt source to check. This parameter can be one of the following values:
  • CAN_IT_TME: Transmit mailbox empty interrupt enable
  • CAN_IT_FMP0: FIFO0 message pending interrupt enable
  • CAN_IT_FMP1: FIFO1 message pending interrupt enable
Return values
Thenew state of IT (TRUE or FALSE).
Parameters
__HANDLE__specifies the CAN Handle.
__INTERRUPT__specifies the CAN interrupt source to check. This parameter can be a value of
  • CAN_Interrupts
Return values
Thestate of IT (TRUE or FALSE).

Definition at line 577 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_TRANSMIT_STATUS

#define __HAL_CAN_TRANSMIT_STATUS ( __HANDLE__,
__TRANSMITMAILBOX__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__TRANSMITMAILBOX__) == CAN_TXMAILBOX_0)? ((((__HANDLE__)->Instance->TSR) & (CAN_TSR_RQCP0 | CAN_TSR_TXOK0 | CAN_TSR_TME0)) == (CAN_TSR_RQCP0 | CAN_TSR_TXOK0 | CAN_TSR_TME0)) :\
((__TRANSMITMAILBOX__) == CAN_TXMAILBOX_1)? ((((__HANDLE__)->Instance->TSR) & (CAN_TSR_RQCP1 | CAN_TSR_TXOK1 | CAN_TSR_TME1)) == (CAN_TSR_RQCP1 | CAN_TSR_TXOK1 | CAN_TSR_TME1)) :\
((((__HANDLE__)->Instance->TSR) & (CAN_TSR_RQCP2 | CAN_TSR_TXOK2 | CAN_TSR_TME2)) == (CAN_TSR_RQCP2 | CAN_TSR_TXOK2 | CAN_TSR_TME2)))
#define CAN_TXMAILBOX_1
#define CAN_TXMAILBOX_0

Check the transmission status of a CAN Frame.

Parameters
__HANDLE__CAN Handle
__TRANSMITMAILBOX__the number of the mailbox that is used for transmission.
Return values
Thenew status of transmission (TRUE or FALSE).

Definition at line 585 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_FIFO_RELEASE

#define __HAL_CAN_FIFO_RELEASE ( __HANDLE__,
__FIFONUMBER__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__FIFONUMBER__) == CAN_FIFO0)? \
((__HANDLE__)->Instance->RF0R = CAN_RF0R_RFOM0) : ((__HANDLE__)->Instance->RF1R = CAN_RF1R_RFOM1))

Release the specified receive FIFO.

Parameters
__HANDLE__CAN handle
__FIFONUMBER__Receive FIFO number, CAN_FIFO0 or CAN_FIFO1.
Return values
None

Definition at line 596 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_CANCEL_TRANSMIT

#define __HAL_CAN_CANCEL_TRANSMIT ( __HANDLE__,
__TRANSMITMAILBOX__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__TRANSMITMAILBOX__) == CAN_TXMAILBOX_0)? ((__HANDLE__)->Instance->TSR = CAN_TSR_ABRQ0) :\
((__TRANSMITMAILBOX__) == CAN_TXMAILBOX_1)? ((__HANDLE__)->Instance->TSR = CAN_TSR_ABRQ1) :\
((__HANDLE__)->Instance->TSR = CAN_TSR_ABRQ2))

Cancel a transmit request.

Parameters
__HANDLE__CAN Handle
__TRANSMITMAILBOX__the number of the mailbox that is used for transmission.
Return values
None

Definition at line 605 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_DBG_FREEZE

#define __HAL_CAN_DBG_FREEZE ( __HANDLE__,
__NEWSTATE__ )

#include <stm32f4xx_hal_can_legacy.h>

Value:
(((__NEWSTATE__) == ENABLE)? \
((__HANDLE__)->Instance->MCR |= CAN_MCR_DBF) : ((__HANDLE__)->Instance->MCR &= ~CAN_MCR_DBF))

Enable or disable the DBG Freeze for CAN.

Parameters
__HANDLE__CAN Handle
__NEWSTATE__new state of the CAN peripheral. This parameter can be: ENABLE (CAN reception/transmission is frozen during debug. Reception FIFOs can still be accessed/controlled normally) or DISABLE (CAN is working during debug).
Return values
None

Definition at line 619 of file stm32f4xx_hal_can_legacy.h.

◆ __HAL_CAN_RESET_HANDLE_STATE [2/2]

#define __HAL_CAN_RESET_HANDLE_STATE ( __HANDLE__)

#include <stm32f4xx_hal_can.h>

Value:
((__HANDLE__)->State = HAL_CAN_STATE_RESET)

Reset CAN handle state.

Parameters
__HANDLE__CAN handle.
Return values
None

Definition at line 562 of file stm32f4xx_hal_can.h.

◆ __HAL_CAN_ENABLE_IT [2/2]

#define __HAL_CAN_ENABLE_IT ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can.h>

Value:
(((__HANDLE__)->Instance->IER) |= (__INTERRUPT__))

Enable the specified CAN interrupts.

Parameters
__HANDLE__CAN handle.
__INTERRUPT__CAN Interrupt sources to enable. This parameter can be any combination of
  • CAN_Interrupts
Return values
None

Definition at line 572 of file stm32f4xx_hal_can.h.

◆ __HAL_CAN_DISABLE_IT [2/2]

#define __HAL_CAN_DISABLE_IT ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can.h>

Value:
(((__HANDLE__)->Instance->IER) &= ~(__INTERRUPT__))

Disable the specified CAN interrupts.

Parameters
__HANDLE__CAN handle.
__INTERRUPT__CAN Interrupt sources to disable. This parameter can be any combination of
  • CAN_Interrupts
Return values
None

Definition at line 581 of file stm32f4xx_hal_can.h.

◆ __HAL_CAN_GET_IT_SOURCE [2/2]

#define __HAL_CAN_GET_IT_SOURCE ( __HANDLE__,
__INTERRUPT__ )

#include <stm32f4xx_hal_can.h>

Value:
(((__HANDLE__)->Instance->IER) & (__INTERRUPT__))

Check if the specified CAN interrupt source is enabled or disabled.

Parameters
__HANDLE__specifies the CAN Handle.
__INTERRUPT__specifies the CAN interrupt source to check. This parameter can be a value of
  • CAN_Interrupts
Return values
Thestate of IT (TRUE or FALSE).

Definition at line 589 of file stm32f4xx_hal_can.h.

◆ __HAL_CAN_GET_FLAG [2/2]

#define __HAL_CAN_GET_FLAG ( __HANDLE__,
__FLAG__ )

#include <stm32f4xx_hal_can.h>

Value:
((((__FLAG__) >> 8U) == 5U)? ((((__HANDLE__)->Instance->TSR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 2U)? ((((__HANDLE__)->Instance->RF0R) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 4U)? ((((__HANDLE__)->Instance->RF1R) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 1U)? ((((__HANDLE__)->Instance->MSR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 3U)? ((((__HANDLE__)->Instance->ESR) & (1U << ((__FLAG__) & CAN_FLAG_MASK))) == (1U << ((__FLAG__) & CAN_FLAG_MASK))): 0U)

Check whether the specified CAN flag is set or not.

Parameters
__HANDLE__specifies the CAN Handle.
__FLAG__specifies the flag to check. This parameter can be one of
  • CAN_flags
Return values
Thestate of FLAG (TRUE or FALSE).

Definition at line 597 of file stm32f4xx_hal_can.h.

◆ __HAL_CAN_CLEAR_FLAG [2/2]

#define __HAL_CAN_CLEAR_FLAG ( __HANDLE__,
__FLAG__ )

#include <stm32f4xx_hal_can.h>

Value:
((((__FLAG__) >> 8U) == 5U)? (((__HANDLE__)->Instance->TSR) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 2U)? (((__HANDLE__)->Instance->RF0R) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 4U)? (((__HANDLE__)->Instance->RF1R) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): \
(((__FLAG__) >> 8U) == 1U)? (((__HANDLE__)->Instance->MSR) = (1U << ((__FLAG__) & CAN_FLAG_MASK))): 0U)

Clear the specified CAN pending flag.

Parameters
__HANDLE__specifies the CAN Handle.
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • CAN_FLAG_RQCP0: Request complete MailBox 0 Flag
  • CAN_FLAG_TXOK0: Transmission OK MailBox 0 Flag
  • CAN_FLAG_ALST0: Arbitration Lost MailBox 0 Flag
  • CAN_FLAG_TERR0: Transmission error MailBox 0 Flag
  • CAN_FLAG_RQCP1: Request complete MailBox 1 Flag
  • CAN_FLAG_TXOK1: Transmission OK MailBox 1 Flag
  • CAN_FLAG_ALST1: Arbitration Lost MailBox 1 Flag
  • CAN_FLAG_TERR1: Transmission error MailBox 1 Flag
  • CAN_FLAG_RQCP2: Request complete MailBox 2 Flag
  • CAN_FLAG_TXOK2: Transmission OK MailBox 2 Flag
  • CAN_FLAG_ALST2: Arbitration Lost MailBox 2 Flag
  • CAN_FLAG_TERR2: Transmission error MailBox 2 Flag
  • CAN_FLAG_FF0: RX FIFO 0 Full Flag
  • CAN_FLAG_FOV0: RX FIFO 0 Overrun Flag
  • CAN_FLAG_FF1: RX FIFO 1 Full Flag
  • CAN_FLAG_FOV1: RX FIFO 1 Overrun Flag
  • CAN_FLAG_WKUI: Wake up Interrupt Flag
  • CAN_FLAG_SLAKI: Sleep acknowledge Interrupt Flag
Return values
None

Definition at line 628 of file stm32f4xx_hal_can.h.