Vector BLF: Vector::BLF::FlexRayVFrError Struct Reference

Vector BLF

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

FR_ERROR. More...

`#include <FlexRayVFrError.h>`

Inheritance diagram for Vector::BLF::FlexRayVFrError:

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

  is | input stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

## ◆ write()

void Vector::BLF::FlexRayVFrError::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::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:

- FlexRayVFrError.h
- FlexRayVFrError.cpp