| 
    Zephyr Project API 3.5.0
    
   A Scalable Open Source RTOS 
   | 
 
CAN frame structure. More...
#include <can.h>
Data Fields | ||
| uint32_t | id: 29 | |
| 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] | ||
|    uint32_t   data_32 [DIV_ROUND_UP(CAN_MAX_DLEN, sizeof(uint32_t))]  | ||
| }; | ||
| The frame payload data.  | ||
CAN frame structure.
| union { ... } can_frame | 
The frame payload data.
| uint8_t can_frame::data[CAN_MAX_DLEN] | 
| uint32_t can_frame::data_32[DIV_ROUND_UP(CAN_MAX_DLEN, sizeof(uint32_t))] | 
| 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_TIMESTAMP   must be selected for this field to be available.