47#ifndef DW_SENSORS_CANBUS_CAN_H_
48#define DW_SENSORS_CANBUS_CAN_H_
97#define DW_SENSORS_CAN_MAX_ID_LEN 29
100#define DW_SENSORS_CAN_MAX_MESSAGE_LEN 64
103#define DW_SENSORS_CAN_MAX_FILTERS 255
NVIDIA DriveWorks API: Sensors
NVIDIA DriveWorks API: Core Types
NVIDIA DriveWorks API: Core Exports
uint8_t data[DW_SENSORS_CAN_MAX_MESSAGE_LEN]
Payload.
dwTime_t timestamp_us
Timestamp of the message in microseconds (using clock of the context).
uint16_t size
Number of bytes of the payload.
uint32_t id
CAN ID of the message sender.
DW_API_PUBLIC dwStatus dwSensorCAN_setMessageFilter(const uint32_t *ids, const uint32_t *masks, uint16_t num, dwSensorHandle_t sensor)
Specifes a set of CAN IDs to be filtered.
DW_API_PUBLIC dwStatus dwSensorCAN_processRawData(const uint8_t *data, size_t size, dwSensorHandle_t sensor)
Decodes CAN data previously read as a RAW data stream into internal queue.
DW_API_PUBLIC dwStatus dwSensorCAN_popMessage(dwCANMessage *msg, dwSensorHandle_t sensor)
Returns any CAN data previously processed through a RAW data stream.
DW_API_PUBLIC dwStatus dwSensorCAN_readMessage(dwCANMessage *const msg, dwTime_t const timeoutUs, dwSensorHandle_t const sensor)
Reads a CAN packet with a given timeout from the CAN bus.
DW_API_PUBLIC dwStatus dwSensorCAN_sendMessage(const dwCANMessage *const msg, dwTime_t const timeoutUs, dwSensorHandle_t const sensor)
Sends a message over the CAN bus within a specified timeout.
#define DW_SENSORS_CAN_MAX_MESSAGE_LEN
Maximal length of the supported CAN payload [bytes].
DW_API_PUBLIC dwStatus dwSensorCAN_setUseHwTimestamps(bool const flag, dwSensorHandle_t const sensor)
Enables or disables hardware timestamp of the CAN messages.
dwStatus
Status definition.
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
struct dwSensorObject * dwSensorHandle_t
Handle representing a sensor.