Zephyr Project API  3.3.0
A Scalable Open Source RTOS
can_frame Struct Reference

CAN frame structure. More...

#include <can.h>

Data Fields

uint32_t id: 29
 
uint8_t dlc
 
uint8_t flags
 
uint16_t timestamp
 
union {
   uint8_t   data [CAN_MAX_DLEN]
 
   uint32_t   data_32 [ceiling_fraction(CAN_MAX_DLEN,
       sizeof(uint32_t))]
 
}; 
 

Detailed Description

CAN frame structure.

Field Documentation

◆ 

union { ... } can_frame::@116

The frame payload data.

◆ data

uint8_t can_frame::data[CAN_MAX_DLEN]

◆ data_32

uint32_t can_frame::data_32[ceiling_fraction(CAN_MAX_DLEN, sizeof(uint32_t))]

◆ dlc

uint8_t can_frame::dlc

Data Length Code (DLC) indicating data length in bytes.

◆ flags

uint8_t can_frame::flags

Flags.

See also
CAN_FRAME_FLAGS.

◆ id

uint32_t can_frame::id

Standard (11-bit) or extended (29-bit) CAN identifier.

◆ timestamp

uint16_t can_frame::timestamp

Captured value of the free-running timer in the CAN controller when this frame was received. The timer is incremented every bit time and captured at the start of frame bit (SOF).

Note
CONFIG_CAN_RX_TIMESTAMP must be selected for this field to be available.

The documentation for this struct was generated from the following file: