Transmit frame layout written into CAN hardware memory. More...
#include <can.h>
Data Fields | |
| struct { | |
| union { | |
| struct { | |
| uint32_t dlc:12 | |
| uint32_t id:11 | |
| uint32_t reserved:1 | |
| uint32_t esi:1 | |
| uint32_t brs:1 | |
| uint32_t rtr:1 | |
| uint32_t ide:1 | |
| uint32_t frame_type:4 | |
| } fields | |
| uint32_t raw | |
| } signal_desc | |
| uint32_t ext_id | |
| uint32_t reserved | |
| } | header |
| uint8_t | data [CAN_MAX_DATA_LENGTH] |
| uint8_t | reserved [CAN_TX_DESCRIPTOR_RESERVED_BYTES] |
Transmit frame layout written into CAN hardware memory.
| uint32_t can_tx_frame_t::dlc |
Payload length in bytes before CAN FD DLC encoding
| uint32_t can_tx_frame_t::id |
11-bit identifier
| uint32_t can_tx_frame_t::reserved |
Reserved bit
Reserved field
| uint32_t can_tx_frame_t::esi |
Error state indicator (FD)
| uint32_t can_tx_frame_t::brs |
Bit rate switch (FD)
| uint32_t can_tx_frame_t::rtr |
Remote transmission request
| uint32_t can_tx_frame_t::ide |
Identifier extension
| uint32_t can_tx_frame_t::frame_type |
CAN_FRAME_CLASSIC or CAN_FRAME_FD only
| uint32_t can_tx_frame_t::raw |
Raw header value
| uint32_t can_tx_frame_t::ext_id |
Extended 29-bit identifier
| uint8_t can_tx_frame_t::data[CAN_MAX_DATA_LENGTH] |
Frame data payload
| uint8_t can_tx_frame_t::reserved[CAN_TX_DESCRIPTOR_RESERVED_BYTES] |
Reserved for cache-line aligned descriptor arrays