Vector::BLF::LinReceiveError(3) Library Functions Manual Vector::BLF::LinReceiveError(3)

Vector::BLF::LinReceiveError - LIN_RCV_ERROR.

#include <LinReceiveError.h>

Inherits Vector::BLF::ObjectHeader.


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
ObjectHeaderBase & operator= (const ObjectHeaderBase &)=default
ObjectHeaderBase (ObjectHeaderBase &&)=default
ObjectHeaderBase & operator= (ObjectHeaderBase &&)=default


uint16_t channel {}
application channel uint8_t id {}
LIN ID. uint8_t dlc {}
LIN DLC. uint8_t fsmId {}
uint8_t fsmState {}
uint8_t headerTime {}
uint8_t fullTime {}
uint8_t stateReason {}
uint8_t offendingByte {}
uint8_t shortError {}
uint8_t timeoutDuringDlcDetection {}
uint32_t reservedLinReceiveError {}

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 Types inherited from Vector::BLF::ObjectHeader
enum ObjectFlags : uint32_t { TimeTenMics = 0x00000001, TimeOneNans = 0x00000002 }

LIN_RCV_ERROR.

Deprecated

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).

uint32_t Vector::BLF::LinReceiveError::calculateObjectSize () const [override], [virtual]

Calculates the objectSize

Returns

object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

void Vector::BLF::LinReceiveError::read (AbstractFile & is) [override], [virtual]

Read the data of this object

Parameters

is input stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

void Vector::BLF::LinReceiveError::write (AbstractFile & os) [override], [virtual]

Write the data of this object

Parameters

os output stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

uint16_t Vector::BLF::LinReceiveError::channel {}

application channel Channel number where the event notified

uint8_t Vector::BLF::LinReceiveError::dlc {}

LIN DLC. Frame length

uint8_t Vector::BLF::LinReceiveError::fsmId {}

Slave Identifier in the Final State Machine (obsolete)

uint8_t Vector::BLF::LinReceiveError::fsmState {}

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

uint8_t Vector::BLF::LinReceiveError::fullTime {}

Duration of the entire frame [in bit times]

uint8_t Vector::BLF::LinReceiveError::headerTime {}

Duration of the frame header [in bit times]

uint8_t Vector::BLF::LinReceiveError::id {}

LIN ID. Frame identifier

uint8_t Vector::BLF::LinReceiveError::offendingByte {}

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

uint32_t Vector::BLF::LinReceiveError::reservedLinReceiveError {}

reserved

uint8_t Vector::BLF::LinReceiveError::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

uint8_t Vector::BLF::LinReceiveError::stateReason {}

The lower 4 bits indicate the LIN hardware 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
  • 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, offendingByte member contains its value
  • 2: Received a byte with framing error (with dominant stop bit). In this case, offendingByte member contains its value
  • 3: Unexpected Break field
  • 4: Unidentified error

uint8_t Vector::BLF::LinReceiveError::timeoutDuringDlcDetection {}

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

  • 0: False
  • 1: True

Generated automatically by Doxygen for Vector BLF from the source code.

Vector BLF