| Zephyr Project API 4.1.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.