Vector BLF
Loading...
Searching...
No Matches
Vector::BLF::LinReceiveError2 Struct Referencefinal

LIN_RCV_ERROR2. More...

#include <LinReceiveError2.h>

Inheritance diagram for Vector::BLF::LinReceiveError2:
Vector::BLF::ObjectHeader Vector::BLF::LinDatabyteTimestampEvent Vector::BLF::ObjectHeaderBase Vector::BLF::LinMessageDescriptor Vector::BLF::LinSynchFieldEvent Vector::BLF::LinBusEvent

Public Member Functions

void read (AbstractFile &is) override
 
void write (AbstractFile &os) override
 
uint32_t calculateObjectSize () const override
 
- Public Member Functions inherited from Vector::BLF::ObjectHeader
 ObjectHeader (const ObjectType objectType, const uint16_t objectVersion=0)
 
void read (AbstractFile &is) override
 
void write (AbstractFile &os) override
 
uint16_t calculateHeaderSize () const override
 
uint32_t calculateObjectSize () const override
 
- Public Member Functions inherited from Vector::BLF::ObjectHeaderBase
 ObjectHeaderBase (const uint16_t headerVersion, const ObjectType objectType)
 
 ObjectHeaderBase (const ObjectHeaderBase &)=default
 
ObjectHeaderBaseoperator= (const ObjectHeaderBase &)=default
 
 ObjectHeaderBase (ObjectHeaderBase &&)=default
 
ObjectHeaderBaseoperator= (ObjectHeaderBase &&)=default
 
- Public Member Functions inherited from Vector::BLF::LinSynchFieldEvent
void read (AbstractFile &is) override
 
void write (AbstractFile &os) override
 
uint32_t calculateObjectSize () const override
 
- Public Member Functions inherited from Vector::BLF::LinBusEvent
 LinBusEvent (const LinBusEvent &)=default
 
LinBusEventoperator= (const LinBusEvent &)=default
 
 LinBusEvent (LinBusEvent &&)=default
 
LinBusEventoperator= (LinBusEvent &&)=default
 

Public Attributes

std::array< uint8_t, 8 > data {}
 data bytes.
 
uint8_t fsmId {}
 
uint8_t fsmState {}
 
uint8_t stateReason {}
 
uint8_t offendingByte {}
 
uint8_t shortError {}
 
uint8_t timeoutDuringDlcDetection {}
 
uint8_t isEtf {}
 ETF collision flag.
 
uint8_t hasDatabytes {}
 
uint32_t respBaudrate {}
 Response baudrate of the event in bit/sec.
 
uint32_t reservedLinReceiveError {}
 
double exactHeaderBaudrate {}
 Exact baudrate of the header in bit/sec.
 
uint32_t earlyStopbitOffset {}
 Early stop bit offset for UART timestamps in ns.
 
uint32_t earlyStopbitOffsetResponse {}
 Early stop bit offset in frame response for UART timestamps in ns.
 
- Public Attributes inherited from Vector::BLF::ObjectHeader
uint32_t objectFlags {ObjectFlags::TimeOneNans}
 object flags
 
uint16_t clientIndex {}
 client index of send node
 
uint16_t objectVersion {0}
 object specific version
 
uint64_t objectTimeStamp {}
 object timestamp
 
- Public Attributes inherited from Vector::BLF::ObjectHeaderBase
uint32_t signature {ObjectSignature}
 signature (ObjectSignature)
 
uint16_t headerSize {}
 sizeof object header
 
uint16_t headerVersion {}
 header version (1)
 
uint32_t objectSize {}
 object size
 
ObjectType objectType {ObjectType::UNKNOWN}
 object type
 
- Public Attributes inherited from Vector::BLF::LinDatabyteTimestampEvent
std::array< uint64_t, 9 > databyteTimestamps {}
 Databyte timestamps, where d[0] = EndOfHeader, d[1]=EndOfDataByte1, ..., d[8]=EndOfDataByte8.
 
- Public Attributes inherited from Vector::BLF::LinMessageDescriptor
uint16_t supplierId {}
 LIN Sub-Identifier - Supplier ID.
 
uint16_t messageId {}
 LIN Sub-Identifier - Message ID (16 bits)
 
uint8_t nad {}
 LIN Sub-Identifier - NAD.
 
uint8_t id {}
 LIN ID.
 
uint8_t dlc {}
 LIN DLC.
 
uint8_t checksumModel {}
 LIN checksum model.
 
- Public Attributes inherited from Vector::BLF::LinSynchFieldEvent
uint64_t synchBreakLength {}
 Sync Break Length in ns.
 
uint64_t synchDelLength {}
 Sync Delimiter Length in ns.
 
- Public Attributes inherited from Vector::BLF::LinBusEvent
uint64_t sof {}
 Start Of Frame timestamp.
 
uint32_t eventBaudrate {}
 Baudrate of the event in bit/sec.
 
uint16_t channel {}
 application channel
 
uint16_t reservedLinBusEvent {}
 

Additional Inherited Members

- Public Types inherited from Vector::BLF::ObjectHeader
enum  ObjectFlags : uint32_t { TimeTenMics = 0x00000001 , TimeOneNans = 0x00000002 }
 

Detailed Description

LIN_RCV_ERROR2.

This event may have a wide variety of causes. An external Master can cause a receive error event:

  • by transmitting sync break that is too short,
  • by not returning the correct value 0x55 in the sync field,
  • by assigning an incorrect parity to the frame identifier. Other reasons:
  • Slave transmitting an illegal character during a Bus Idle phase (e.g. because it did not finish transmission quickly enough and the checksum byte of the response was sent during the Bus Idle phase),
  • Faulty (dominant) stop bit (i.e. framing error),
  • LIN hardware receives a character that is different from the character sent during transmission
  • LIN hardware only receives part of a frame, at the start of a measurement (in a correctly functioning system).

Member Function Documentation

◆ calculateObjectSize()

uint32_t Vector::BLF::LinReceiveError2::calculateObjectSize ( ) const
overridevirtual

Calculates the objectSize

Returns
object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ read()

void Vector::BLF::LinReceiveError2::read ( AbstractFile & is)
overridevirtual

Read the data of this object

Parameters
isinput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ write()

void Vector::BLF::LinReceiveError2::write ( AbstractFile & os)
overridevirtual

Write the data of this object

Parameters
osoutput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

Member Data Documentation

◆ earlyStopbitOffset

uint32_t Vector::BLF::LinReceiveError2::earlyStopbitOffset {}

Early stop bit offset for UART timestamps in ns.

Early stop bit offset in frame header for UART timestamps [in ns]

◆ earlyStopbitOffsetResponse

uint32_t Vector::BLF::LinReceiveError2::earlyStopbitOffsetResponse {}

Early stop bit offset in frame response for UART timestamps in ns.

Early stop bit offset in frame response for UART timestamps [in ns]

◆ exactHeaderBaudrate

double Vector::BLF::LinReceiveError2::exactHeaderBaudrate {}

Exact baudrate of the header in bit/sec.

Event's baudrate measured in header [in bits/sec]

◆ fsmId

uint8_t Vector::BLF::LinReceiveError2::fsmId {}

Slave Identifier in the Final State Machine (obsolete)

◆ fsmState

uint8_t Vector::BLF::LinReceiveError2::fsmState {}

State Identifier of a Slave in the Final State Machine (obsolete)

◆ hasDatabytes

uint8_t Vector::BLF::LinReceiveError2::hasDatabytes {}

Flag indicating whether at least one data byte value is valid

◆ isEtf

uint8_t Vector::BLF::LinReceiveError2::isEtf {}

ETF collision flag.

Flag indicating whether this frame is Event-Triggered one:

  • 0: not ETF
  • 1: ETF

◆ offendingByte

uint8_t Vector::BLF::LinReceiveError2::offendingByte {}

Byte value that resulted the protocol violation. Only valid for certain values of mStateReason

◆ reservedLinReceiveError

uint32_t Vector::BLF::LinReceiveError2::reservedLinReceiveError {}

reserved

◆ respBaudrate

uint32_t Vector::BLF::LinReceiveError2::respBaudrate {}

Response baudrate of the event in bit/sec.

Event's baudrate measured in response [in bits/sec]

◆ shortError

uint8_t Vector::BLF::LinReceiveError2::shortError {}

Specifies the detail level of the event. Following values are possible:

  • 0: short
  • 1: full Most members are not valid unless this member is 1

◆ stateReason

uint8_t Vector::BLF::LinReceiveError2::stateReason {}

The lower 4 bits indicate the LIN hard-ware state at the time the error has occurred, while the upper 4 bits indicate the reason of the error

Value for the state:

  • 0: Bus idle
  • 1: Waiting for SynchBreak
  • 2: Waiting for SynchField
  • 3: Waiting for frame ID
  • 4-12: Waiting for data byte or checksum byte depending on the frame length. E.g. value 4 for FrameLength=0, value 12 for FrameLength=8
  • 14: Consecutive event (i.e. event resulting from further data interpretation, after already notified error for first offending byte)
  • 15: Not expected event (i.e. not WakeupRequest) during sleep mode. Occurs for LIN hardware in Master mode only

Values for the reason:

  • 0: Timeout
  • 1: Received an unexpected byte violating protocol. In this case, mOffendingByte member contains its value
  • 2: Received a byte with framing error (with dominant stop bit). In this case, mOffendingByte member contains its value
  • 3: Unexpected Break field
  • 4: Unidentified error

◆ timeoutDuringDlcDetection

uint8_t Vector::BLF::LinReceiveError2::timeoutDuringDlcDetection {}

Flag indicating if the error is a result of an attempt to resolve frame length. Following values are possible:

  • 0: False
  • 1: True

The documentation for this struct was generated from the following files: