Vector BLF: Vector::BLF::LinReceiveError Struct Reference

Vector BLF

Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
Vector::BLF::LinReceiveError Struct Referencefinal

LIN_RCV_ERROR. More...

`#include <LinReceiveError.h>`

Inheritance diagram for Vector::BLF::LinReceiveError:

## 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
ObjectHeaderBase & | operator= (const ObjectHeaderBase &)=default
| ObjectHeaderBase (ObjectHeaderBase &&)=default
ObjectHeaderBase & | operator= (ObjectHeaderBase &&)=default
virtual void | read (AbstractFile &is)
virtual void | write (AbstractFile &os)
virtual uint16_t | calculateHeaderSize () const
virtual uint32_t | calculateObjectSize () const

## Public Attributes
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

## Additional Inherited Members
Public Types inherited from Vector::BLF::ObjectHeader
enum | ObjectFlags : uint32_t { TimeTenMics = 0x00000001 , TimeOneNans = 0x00000002 }

## Detailed Description

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

## Member Function Documentation

## ◆ calculateObjectSize()

uint32_t Vector::BLF::LinReceiveError::calculateObjectSize | ( |  | ) | const
| overridevirtual

Calculates the objectSize

Returns
  object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

## ◆ read()

void Vector::BLF::LinReceiveError::read | ( | AbstractFile & | is | ) |
| overridevirtual

Read the data of this object

Parameters

  is | input stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

## ◆ write()

void Vector::BLF::LinReceiveError::write | ( | AbstractFile & | os | ) |
| overridevirtual

Write the data of this object

Parameters

  os | output stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

## Member Data Documentation

## ◆ channel

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

application channel

Channel number where the event notified

## ◆ dlc

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

LIN DLC.

Frame length

## ◆ fsmId

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

Slave Identifier in the Final State Machine (obsolete)

## ◆ fsmState

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

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

## ◆ fullTime

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

Duration of the entire frame [in bit times]

## ◆ headerTime

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

Duration of the frame header [in bit times]

## ◆ id

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

LIN ID.

Frame identifier

## ◆ offendingByte

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

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

## ◆ reservedLinReceiveError

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

reserved

## ◆ shortError

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

## ◆ stateReason

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

## ◆ timeoutDuringDlcDetection

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

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

- LinReceiveError.h
- LinReceiveError.cpp