Astra MCU SDK Peripheral Driver Library
Loading...
Searching...
No Matches
Data Structures

Data structures for CAN driver. More...

Data Structures

struct  can_tx_frame_t
 Transmit frame layout written into CAN hardware memory. More...
struct  can_tx_schedule_time_t
 64-bit timestamp used for scheduled transmit requests. More...
struct  can_rx_classic_header_t
 Header layout reported for a received Classical CAN frame. More...
struct  can_rx_fd_header_t
 Header layout reported for a received CAN FD frame. More...
struct  can_rx_frame_t
 Receive frame container returned to RX callbacks. More...
struct  can_rx_filter_t
 Receive filter entry matched against incoming CAN identifiers. More...
struct  can_hw_config_t
 Hardware-specific CAN controller configuration. More...
struct  can_config_t
 Runtime CAN controller configuration. More...

Typedefs

typedef void(* can_tx_handler_t) (void *user_data, can_transfer_status_en status)
 CAN TX completion callback type.
typedef void(* can_rx_handler_t) (void *user_data, const can_rx_frame_t *frame)
 CAN RX frame callback type.
typedef void(* can_timestamp_handler_t) (void *user_data, uint32_t timestamp_low, uint32_t timestamp_high)
 CAN timestamp capture callback type.

Detailed Description

Data structures for CAN driver.

Typedef Documentation

◆ can_tx_handler_t

typedef void(* can_tx_handler_t) (void *user_data, can_transfer_status_en status)

CAN TX completion callback type.

Parameters
user_dataApplication-supplied callback context.
statusTransfer completion status.
Note
This callback executes in CAN ISR context. Do not call blocking CAN APIs or reconfigure the controller from this callback.

◆ can_rx_handler_t

typedef void(* can_rx_handler_t) (void *user_data, const can_rx_frame_t *frame)

CAN RX frame callback type.

Parameters
user_dataApplication-supplied callback context.
framePointer to the received frame. The frame pointer remains valid only during the callback.
Note
This callback executes in CAN ISR context. The frame pointer must not be retained after the callback returns.

◆ can_timestamp_handler_t

typedef void(* can_timestamp_handler_t) (void *user_data, uint32_t timestamp_low, uint32_t timestamp_high)

CAN timestamp capture callback type.

Parameters
user_dataApplication-supplied callback context.
timestamp_lowLower 32 bits of the sampled timestamp.
timestamp_highHigher 32 bits of the sampled timestamp.
Note
This callback executes in CAN ISR context. Do not call blocking CAN APIs or reconfigure the controller from this callback.