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

FR_ERROR. More...

#include <FlexRayVFrError.h>

Inheritance diagram for Vector::BLF::FlexRayVFrError:
Vector::BLF::ObjectHeader Vector::BLF::ObjectHeaderBase

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 Attributes

uint16_t channel {}
 application channel
 
uint16_t version {}
 object version
 
uint16_t channelMask {}
 channel mask
 
uint8_t cycle {}
 current cycle
 
uint8_t reservedFlexRayVFrError1 {}
 
uint32_t clientIndexFlexRayVFrError {}
 clientindex of send node
 
uint32_t clusterNo {}
 number of cluster
 
uint32_t tag {}
 type of cc
 
std::array< uint32_t, 4 > data {}
 register flags
 
uint32_t reservedFlexRayVFrError2 {}
 
- 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

FR_ERROR.

FlexRay Error event transmitted by the FlexRay hardware.

Member Function Documentation

◆ calculateObjectSize()

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

Calculates the objectSize

Returns
object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ read()

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

Read the data of this object

Parameters
isinput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ write()

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

Write the data of this object

Parameters
osoutput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

Member Data Documentation

◆ channel

uint16_t Vector::BLF::FlexRayVFrError::channel {}

application channel

Application channel

◆ channelMask

uint16_t Vector::BLF::FlexRayVFrError::channelMask {}

channel mask

Channel Mask

  • 0 = Reserved or invalid
  • 1 = FlexRay Channel A
  • 2 = FlexRay Channel B
  • 3 = FlexRay Channels A and B

◆ clientIndexFlexRayVFrError

uint32_t Vector::BLF::FlexRayVFrError::clientIndexFlexRayVFrError {}

clientindex of send node

Client index of send node. Must be set to 0 if file is written from other applications

◆ clusterNo

uint32_t Vector::BLF::FlexRayVFrError::clusterNo {}

number of cluster

Number of cluster: channel number - 1

◆ cycle

uint8_t Vector::BLF::FlexRayVFrError::cycle {}

current cycle

Cycle number

◆ data

std::array<uint32_t, 4> Vector::BLF::FlexRayVFrError::data {}

register flags

Driver flags for internal usage

CC-Type: Cyclone I

  • data[0]: Error flags from driver API

CC-Type: Cyclone II

  • data[0]: Error packet flag:
    • 0 = No error
    • 1 = FlexCard overflow
    • 2 = PCO error mode changed
    • 3 = Sync frames below minimum
    • 4 = Sync frame overflow
    • 5 = Clock correction failure
    • 6 = Parity error
    • 7 = Receive FIFO overrun
    • 8 = Empty FIFO access
    • 9 = Illegal input buffer access
    • 10 = Illegal output buffer access
    • 11 = Syntax error
    • 12 = Content error
    • 13 = Slot boundary violation
    • 14 = Transmission across boundary
    • 15 = Latest transmit violation
  • data[1]: uint32_t layout depends on the error packet value (see previous row)
    • Error packet=2:
      • 0 = Unknown state
      • 1 = FlexRay protocol spec. > CONFIG
      • 2 = FlexRay protocol spec. > NORMAL_ACTIVE
      • 3 = FlexRay protocol spec. > NORMAL_PASSIVE
      • 4 = FlexRay protocol spec. > HALT
      • 5 = FlexRay protocol spec. > READY
      • 6 = FlexRay protocol spec. > STARTUP
      • 7 = FlexRay protocol spec. > WAKEUP
    • Error packet = 3 or 4:
      • Bits 0..3 > Sync frames even on channel A
      • Bits 4..7 > Sync frames even on channel B
      • Bits 8..11 > Sync frames odd on channel A
      • Bits 12..15 > Sync frames odd on channel B
    • Error packet = 5:
      • Bit 0 > Missing rate correction
      • Bit 1 > Rate correction limit reached
      • Bit 2 > Offset correction limit reached
      • Bit 3 > Missing offset correction
      • Bit 4..7 > Sync frames even on channel A
      • Bits 8..11 > Sync frames even on channel B
      • Bits 12..15 > Sync frames odd on channel A
      • Bits 16..19 > Sync frames odd on channel B
    • Error packet = 11..15:
      • LOW-WORD of mData[1] > Channel
      • HI-WORD of mData[1] > Slot count

CC-Type: BUSDOCTOR

  • data[0]: Error flags from driver API

CC-Type: VN-Interface

  • data[0]: Error tag:
    • 0 = FR_ERROR_POC_MODE
    • 1 = FR_ERROR_SYNC_FRAMES_BELOWMIN
    • 2 = FR_ERROR_SYNC_FRAMES_OVERLOAD
    • 3 = FR_ERROR_CLOCK_CORR_FAILURE
    • 4 = FR_ERROR_NIT_FAILURE
    • 5 = FR_ERROR_CC_ERROR
    • 6 = FR_ERROR_OVERFLOW
  • data[1] and data[2]: uint32_t layout depends on the error tag value (see previous row):
    • Error tag = 0:
      • Value 0: FR_ERROR_POC_ACTIVE
      • Value 1: FR_ERROR_POC_PASSIVE
      • Value 2: FR_ERROR_POC_COMM_HALT
    • Error tag = 1 or 2:
      • Bits 0..3: Sync frames even on channel A
      • Bits 4..7: Sync frames even on channel B
      • Bits 8..11: Sync frames odd on channel A
      • Bits 12..15: Sync frames odd on channel B
    • Error tag = 3:
      • Bit 0: Missing rate correction
      • Bit 1: Missing rate correction limit reached
      • Bit 2: Offset correction limit reached
      • Bit 3: Missing offset correction
      • Bits 4..19: Clock correction failed counter
      • Bits 20..23: Sync frames even on channel A
      • Bits 24..27: Sync frames even on channel B
      • Bits 28..31: Sync frames odd on channel A
      • Bits 32..35: Sync frames odd on channel B
    • Error tag = 4:
      • Value 1: FR_ERROR_NIT_SENA
      • Value 2: FR_ERROR_NIT_SBNA
      • Value 4: FR_ERROR_NIT_SENB
      • Value 8: FR_ERROR_NIT_SBNB
    • Error tag = 5:
      • Value 0x00000001: POC Error Mode Changed
      • Value 0x00000004: Sync Frames Below Minimum
      • Value 0x00000008: Sync Frame Overflow
      • Value 0x00000010: Clock Correction Failure
      • Value 0x00000040: Parity Error, data from MHDS (internal ERay error)
      • Value 0x00000200: Illegal Input Buffer Access (internal ERay error)
      • Value 0x00000400: Illegal Output Buffer Access (internal ERay error)
      • Value 0x00000800: Message Handler Constraints Flag data from MHDF (internal ERay error)
      • Value 0x00010000: Error Detection on channel A, data from ACS
      • Value 0x00020000: Latest Transmit Violation on channel A
      • Value 0x00040000: Transmit Across Boundary on Channel A
      • Value 0x01000000: Error Detection on channel B, data from ACS
      • Value 0x02000000: Latest Transmit Violation on channel B
      • Value 0x04000000: Transmit Across Boundary on Channel B

◆ reservedFlexRayVFrError1

uint8_t Vector::BLF::FlexRayVFrError::reservedFlexRayVFrError1 {}

reserved

◆ reservedFlexRayVFrError2

uint32_t Vector::BLF::FlexRayVFrError::reservedFlexRayVFrError2 {}

reserved

◆ tag

uint32_t Vector::BLF::FlexRayVFrError::tag {}

type of cc

Type of communication controller

  • 0 = Architecture independent
  • 1 = Invalid CC type (for internal use only)
  • 2 = Cyclone I
  • 3 = BUSDOCTOR
  • 4 = Cyclone II
  • 5 = Vector VN interface
  • 6 = VN-Sync-Pulse (only in Status Event, for debugging purposes only)

◆ version

uint16_t Vector::BLF::FlexRayVFrError::version {}

object version

Object version, for internal use


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