Astra MCU SDK Peripheral Driver Library
Loading...
Searching...
No Matches
can_rx_fd_header_t Struct Reference

Header layout reported for a received CAN FD frame. More...

#include <can.h>

Data Fields

union { 
   struct { 
      uint32_t   frame_type:2 
      uint32_t   is_extended:1 
      uint32_t   is_rtr:1 
      uint32_t   status:10 
      uint32_t   dlc:11 
      uint32_t   id_0_6:7 
      uint32_t   id_7_10:4 
      uint32_t   ext_id:18 
      uint32_t   reserved_53_55:3 
      uint32_t   crc_0_6:7 
      uint32_t   crc_7_20:14 
      uint32_t   sbc:4 
      uint32_t   ide:1 
      uint32_t   esi:1 
      uint32_t   brs:1 
      uint32_t   reserved_85_95:11 
      uint32_t   reserved_96_127 
      uint32_t   timestamp_low 
      uint32_t   timestamp_high 
   } 
}; 

Detailed Description

Header layout reported for a received CAN FD frame.

The bitfield layout matches the hardware RX descriptor format exactly.

Field Documentation

◆ frame_type

uint32_t can_rx_fd_header_t::frame_type

Frame type

◆ is_extended

uint32_t can_rx_fd_header_t::is_extended

Extended identifier flag

◆ is_rtr

uint32_t can_rx_fd_header_t::is_rtr

Remote transmission request

◆ status

uint32_t can_rx_fd_header_t::status

Frame status

◆ dlc

uint32_t can_rx_fd_header_t::dlc

Data length code

◆ id_0_6

uint32_t can_rx_fd_header_t::id_0_6

Identifier bits 0-6

◆ id_7_10

uint32_t can_rx_fd_header_t::id_7_10

Identifier bits 7-10

◆ ext_id

uint32_t can_rx_fd_header_t::ext_id

Extended identifier

◆ reserved_53_55

uint32_t can_rx_fd_header_t::reserved_53_55

Reserved bits 53-55

◆ crc_0_6

uint32_t can_rx_fd_header_t::crc_0_6

CRC bits 0-6

◆ crc_7_20

uint32_t can_rx_fd_header_t::crc_7_20

CRC bits 7-20

◆ sbc

uint32_t can_rx_fd_header_t::sbc

Stuff bit count

◆ ide

uint32_t can_rx_fd_header_t::ide

Identifier extension

◆ esi

uint32_t can_rx_fd_header_t::esi

Error state indicator

◆ brs

uint32_t can_rx_fd_header_t::brs

Bit rate switch

◆ reserved_85_95

uint32_t can_rx_fd_header_t::reserved_85_95

Reserved bits 85-95

◆ reserved_96_127

uint32_t can_rx_fd_header_t::reserved_96_127

Reserved bits 96-127

◆ timestamp_low

uint32_t can_rx_fd_header_t::timestamp_low

Lower 32 bits of timestamp

◆ timestamp_high

uint32_t can_rx_fd_header_t::timestamp_high

Higher 32 bits of timestamp