Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
|
CAN frame structure. More...
#include <can.h>
Data Fields | ||
uint32_t | id | |
Standard (11-bit) or extended (29-bit) CAN identifier. | ||
uint8_t | dlc | |
Data Length Code (DLC) indicating data length in bytes. | ||
uint8_t | flags | |
Flags. | ||
uint16_t | timestamp | |
Captured value of the free-running timer in the CAN controller when this frame was received. | ||
union { | ||
uint8_t data [CAN_MAX_DLEN] | ||
Payload data accessed as unsigned 8 bit values. More... | ||
uint32_t data_32 [DIV_ROUND_UP(CAN_MAX_DLEN, sizeof(uint32_t))] | ||
Payload data accessed as unsigned 32 bit values. More... | ||
}; | ||
The frame payload data. | ||
CAN frame structure.
union { ... } can_frame |
The frame payload data.
uint8_t can_frame::data[CAN_MAX_DLEN] |
Payload data accessed as unsigned 8 bit values.
uint32_t can_frame::data_32[DIV_ROUND_UP(CAN_MAX_DLEN, sizeof(uint32_t))] |
Payload data accessed as unsigned 32 bit values.
uint8_t can_frame::dlc |
Data Length Code (DLC) indicating data length in bytes.
uint8_t can_frame::flags |
Flags.
uint32_t can_frame::id |
Standard (11-bit) or extended (29-bit) CAN identifier.
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).
CONFIG_CAN_RX_TIMESTAMPmust be selected for this field to be available.