52 using tChannelID = uint8_t;
53 using tSignalID = uint32_t;
54 using tMessageID = uint32_t;
55 using tNetworkNodeID = uint32_t;
57 static constexpr
const uint8_t CAN_CHANNEL_MIN = 1;
58 static constexpr
const uint8_t CAN_CHANNEL_MAX = 16;
60 static constexpr
const uint32_t CAN_MSGID_STANDARD_MAX = 0x7FF;
62 static constexpr
const uint32_t CAN_MSGID_EXTENDED_MAX = 0x1FFFFFFF;
64 static constexpr
const uint8_t INVALID_CHANNEL_ID = 0xFF;
65 static constexpr
const uint32_t INVALID_SIGNAL_ID = 0xFFFFFFFF;
66 static constexpr
const uint32_t INVALID_MESSAGE_ID = 0xFFFFFFFF;
68 static constexpr
const uint32_t CAN_SIGNALID_HEADER_TAG = 0x10000000;
69 static constexpr
const uint32_t CAN_SIGNALID_HEADER_CHANNEL = 0x10000001;
70 static constexpr
const uint32_t CAN_SIGNALID_HEADER_HWTIME = 0x10000002;
74 CAN_SIGNAL_TYPE_INVALID = 0,
75 CAN_SIGNAL_TYPE_NORMAL = 1,
76 CAN_SIGNAL_TYPE_MULTIPLEXOR = 2,
77 CAN_SIGNAL_TYPE_MULTIPLEXED = 3
91 DT_CAN_IEEE_FLOAT = 3,
92 DT_CAN_IEEE_DOUBLE = 4
142 uint8_t nTypeTag = TAG_INVALID;
143 uint8_t nReserved[7] = {};
153 uint64_t n64RawValue = 0;
156 const char* strValue =
nullptr;
157 uint8_t nReserved2[8] = {};
284 #pragma pack(push, 1)
286 static constexpr
const uint8_t CAN_CHANNEL_MIN = 0;
291 using jack::CAN_CHANNEL_MIN;
292 using axle::CAN_CHANNEL_MAX;
298 using eSignalType = axle::eSignalType;
299 using tSignalRawDataType = axle::tSignalRawDataType;
axle::tChannelID tChannelID
axle::tMessageID tMessageID
axle::tMessageInfo tMessageInfo
axle::tSignalValue tSignalValue
axle::tSignalInfo tSignalInfo
axle::tCANData tCANData
The CAN data structure is used by CAN MediaSamples use following code within your filter:
axle::tSignalID tSignalID
CAN message data structure.
uint32_t ui32Reserved
reserved, should be zero
uint8_t aui8Data[8]
data field
uint16_t ui16Reserved
reserved, should be zero
uint8_t ui8Length
length of data [0..8]
uint8_t ui8Reserved
reserved, should be zero
uint32_t ui32Id
id of can message. For extended CAN messages bit 31 is set. Use the members of the enum eMsgId to get...
CAN bus status structure.
uint32_t ui32Reserved
reserved, should be zero
uint32_t ui32RxBitCount
Count of received bits.
uint32_t ui32BitRate
CAN bus bitrate.
uint8_t ui8Reserved
reserved, should be zero
uint8_t ui8BusStatus
Flags.
uint32_t ui32TxBitCount
Count of transmitted bits.
uint16_t ui16RxErrorCounter
Error counter for the receive section of the CAN controller.
uint16_t ui16TxErrorCounter
Error counter for the transmit section of the CAN controller.
The CAN data structure is used by CAN MediaSamples use following code within your filter:
tData sData
used when ui8Tag == MT_Data
eMessageTag
This enum specifies the different kinds of messages that may be contained in the union.
eDataFlags
CAN message flags.
@ DF_TX_COMPLETED
Notification for successful message transmission.
@ DF_REMOTE_FRAME
Indicates a remote frame.
@ DF_ERROR_FRAME
Indicates an error frame.
eMsgId
CAN message id masks.
@ MSG_IDMASK_EXTENDED
Message IDs for extended frame format use 29 bit identifiers.
@ MSG_EXTENDED_FLAG
Extended CAN messages are marked by bit 31.
@ MSG_IDMASK_BASE
Message IDs for base frame format use 11 bit identifiers.
tMessageHeader sHeader
CAN message header structure.
eBusStatus
CAN bus state flags.
@ BS_OFFLINE
Bus is offline.
@ BS_ERROR_ACTIVE
Bus is online.
@ BS_ERROR_WARNING
One of the error counters has reached the warning level.
@ BS_ERROR_PASSIVE
One of the error counters has reached the error level.
tStatus sStatus
used when ui8Tag == MT_Status
uint32_t nSignalCount
Number of signals of this message.
const tSignalInfo * psSignalInfo
Pointer to array of signal infos.
uint8_t nReserved[3]
reserved
const char * strDescription
Description of CAN message.
const char * strMessageName
Name of can message.
tNetworkNodeID nNetworkNodeID
Network node id.
uint32_t nCycleTime
Cycle time of message in milliseconds (0 if undefined)
tMessageID nMessageID
CAN message id.
uint8_t nDataLength
Length of message [bytes].
bool bCANExtended
CAN extended id.
int32_t nRequiredMultiplexorValue
Required multiplexor value for this signal to be valid.
tSignalID nSignalID
Signal ID.
uint64_t nStartRawValue
Represents the GenSigStartValue.
uint8_t nBitlen
Bit length of CAN signal.
const char * strDescription
Description of CAN signal.
tMessageID nMessageId
CAN message id.
uint64_t nDefaultRawValue
Represents the GenSigInactiveValue.
double f64Factor
Scale factor of CAN signal.
double f64Offset
Offset value of CAN signal.
uint32_t nValueTableSize
Size of value table array (0 if no table is defined)
const char * strSignalName
Name of CAN signal.
uint8_t nStartbit
Startbit of CAN signal.
tValueInfo * pValueTable
Pointer to sorted value table array.
tSignalID nMultiplexorSignalID
Signal ID of multiplexor.
uint8_t nType
is type IEEE Float or IEEE Double (see tSignalRawDataType)
const char * strUnit
Unit of CAN signal.
uint8_t nSignalType
see eSignalType
double f64Min
Minimum value of range of CAN signal.
bool bCANExtended
CAN extended id.
double f64Max
Maximum value of range of CAN signal.
bool bByteOrderMotorola
Byte order of signal is motorola.
bool bSigned
Indicates if signal is signed value or not.
uint64_t nReserved2
reserved
const char * strDescription
Description.